首页 > 解决方案 > Mysql - 如何将skip_networking设置为关闭?

问题描述

我正在尝试从 python 连接到 Mysql 服务器。我收到以下错误:

Traceback (most recent call last):
  File "./db_connection.py", line 2, in <module>
    Con = MySQLdb.Connect(host="127.0.0.1",port= 3360, user="username", 
passwd="password", db="entries")
  File "/usr/lib64/python2.7/site-packages/MySQLdb/__init__.py", line 
85, in Connect
    return Connection(*args, **kwargs)
  File "/usr/lib64/python2.7/site-packages/MySQLdb/connections.py", 
line 204, in __init__
    super(Connection, self).__init__(*args, **kwargs2)
_mysql_exceptions.OperationalError: (2003, "Can't connect to MySQL 
server on '127.0.0.1' (111)")

我检查了一下,我的端口是 0 :

mysql> show variables like 'port';

+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| port          | 0     |
+---------------+-------+
1 row in set (0.01 sec)

和skip_networking = ON:

mysql> SHOW VARIABLES LIKE 'skip_networking';
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| skip_networking | ON    |
+-----------------+-------+
1 row in set (0.00 sec)

文件 my.cnf 看起来像这样:

[mysqld]
skip-grant-tables
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

我尝试将 skip-networking = Off 和 port=3360 然后重新启动 mysql 服务,但它没有工作-skip_networking 仍然打开。关于如何将 MySQL DB 与 python 连接的任何建议?

谢谢!

标签: pythonmysqldatabasenetworkingmysql-python

解决方案


如果使用--skip-grant-tables禁用身份验证检查的选项启动服务器,则服务器启用--skip-networking以防止远程连接。

哟应该评论--skip-grant-tables


推荐阅读