在“读取初始通信p”时与MySQL服务器失去连接

2024-05-19 05:52:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我想通过Python在本地机器和MySQL数据库服务器之间建立一个连接。

有人能告诉我如何“将地址与本地主机绑定”吗?


Tags: 机器数据库地址mysql服务器之间
1条回答
网友
1楼 · 发布于 2024-05-19 05:52:18

Can someone tell me how to "bind-address with localhost"?

这是一个MySQL configuration directive

[mysqld]部分编辑全局my.ini文件:

[mysqld]
# -- various other settings
port = 3306
bind-address = 127.0.0.1
# -- other settings

保存此文件,然后重新启动服务器。

编辑

如果要连接到MySQL的本地Windows实例,只需使用127.0.0.1作为服务器地址。

如果要连接到远程服务器(运行Linux的服务器),则它有点复杂:

  1. 首先,确保MySQL正在监听Linux服务器的公共IP。更改行bind-address =,并将其设置为服务器的公共IP。

  2. 确保端口3306未被任何防火墙阻止。

  3. 用于连接到服务器的用户需要具有从远程IP连接的权限。默认情况下,用户只被授予从localhost连接的权限-换句话说,只有当程序与服务器本身在同一台计算机上运行时,他们才能连接。

要从远程IP授予用户访问权限,请在使用MySQL根用户登录时从mysql>shell运行此命令:

GRANT ALL on somedb.* to someuser@8.8.8.8 identified by 'somepassword';

如果要授予从任何远程IP访问someuser的权限:

GRANT ALL on somedb.* to someuser@% identified by 'somepassword';

完成这些步骤后,请确保重新启动MySQL服务器,以便它能够读取配置中的更改。

相关问题 更多 >

    热门问题