小编jca*_*e86的帖子

Mysql 在重新启动时侦听错误的端口

我正在开发一个“本地”PHP 项目。这是一个在 Debian VM 中运行的 PHP 应用程序,旨在在用户自己的 PC 上使用。

我有几个 python 脚本作为来自 /etc/init.d 的根服务运行,它们处理应用程序更新、日志、与 USB 外围设备的通信和其他内容。

编辑 1: VM 是 Turnkey Linux LAMP 映像,python 版本为 2.7.3,MySQL 5.5.47

PHP 应用程序通过 TCP 套接字与 python 服务对话,发送用户需要的特定任务的请求。

现在,我试图让用户选择让 MySQL 服务器只绑定到本地主机还是与网络上的其他用户共享。为此,我让 python 服务通过 my.cnf 文件,并注释掉 bind-address = 127.0.0.1 行,或者将其取消注释以使服务器再次本地化。

在 my.cnf 编辑之后,python 脚本调用 /etc/init.d/mysql restart 以使更改生效。

问题是,现在 mysql 最终会侦听 Python 服务正在侦听 PHP 请求的端口,如果我需要重新启动该服务,Python 会失败,声称它无法打开该端口,因为它已经在使用中。

我不明白为什么 mysql 最终会监听 python 服务使用的端口而不是 my.cnf 文件所说的 3306 。

此外,如果我通过 ssh 连接到 VM 并手动重新启动 mysql,它会返回到 3306 上的侦听,并且我可以正常启动 python 服务。

python端的一些代码:

RECV_BUFFER …
Run Code Online (Sandbox Code Playgroud)

mysql linux debian python

1
推荐指数
1
解决办法
378
查看次数

标签 统计

debian ×1

linux ×1

mysql ×1

python ×1