我在远程服务器上安装了 MySQL。我还通过 SSH 创建了一些数据库,其中包含一些表。
我创建了以下用户:
CREATE USER 'myname'@'localhost' IDENTIFIED BY 'mypassword';
CREATE USER 'remotMe'@'myIP' IDENTIFIED BY 'mypassword';
GRANT PRIVILEGES * . * TO 'myname'@'localhost';
GRANT PRIVILEGES * . * TO 'remoteMe'@'myIP';
现在,我想通过 Python 连接到这个 MySQL 服务器。我已经安装了PyMySQL .我正在尝试以下代码:
import pymysql
conn = pymysql.connect(host='ServerIP', port=3306, user='remoteMe', passwd='mypassword', db='myDB')
但这给了我一个connection refused
错误。我是否需要配置其他东西才能使其正常工作?
最佳答案
MySQL 很可能绑定(bind)到本地主机。假设您使用的是 Linux 机器:
在你的远程机器上,编辑/etc/mysql/my.cnf
找到 bind-address=127.0.0.1
,将其编辑为 bind-address=0.0.0.0
,或者直接删除该行。
重启MySQL
阅读更多:http://dev.mysql.com/doc/refman/5.1/en/server-options.html#option_mysqld_bind-address
关于python - 通过 Python 连接远程 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28851765/