【问题标题】:MySQL Server does not start after changing max_allowed_packet parameter更改 max_allowed_pa​​cket 参数后 MySQL 服务器未启动
【发布时间】:2019-10-24 15:35:55
【问题描述】:

Windows 10 Pro 32 GB x64 上的 MySQL 社区版 8.0.13

我正在运行社区服务器 8.0.18(从命令行而不是服务),我需要将 max_allowed_pa​​cket 值设置为高于默认值。

但是,服务器在 max_allowed_pa​​cket=16M 开始时挂起,两者都在

  • 在 ini 文件中进行了更改,或者
  • 值作为命令行参数传递

更新:在合法更改后服务器无法启动似乎很奇怪 - 所以我只是保存了 conf (my.ini) 文件而不做任何更改。得到了同样的结果

ini文件如下:

# The maximum size of one packet or any generated or intermediate string, or any parameter sent by the
# mysql_stmt_send_long_data() C API function.
max_allowed_packet=16M

我遵循的步骤是:

  1. 安装带有高级日志记录的 MySQL 并打开所有日志且无需设置服务
  2. 通过运行 mysqld 启动服务器:启动正常
  3. 通过运行 mysqladmin -u root -p shutdown 停止服务器:shutdown ok
  4. 更改 my.ini 中的值
  5. 启动服务器 - 服务器挂起

完整的日志记录已开启,但甚至没有任何内容写入日志。日志中的最后一项是:

2019-10-24T14:47:56.916731Z    10 Connect   root@localhost on  using SSL/TLS
2019-10-24T14:47:56.916973Z    10 Query shutdown
2019-10-24T14:47:56.917224Z    10 Query 

此时,唯一可行的方法就是重新启动、卸载然后重新安装。

我已在论坛中搜索过类似问题,但之前的建议均不适用/或不起作用。

【问题讨论】:

  • 在您进行 max_allowed_packet=16M 更改时的日志中有什么内容吗?我之所以问,是因为昨天刚刚发生在我身上,那是因为我使用了已弃用的配置更改。
  • max_allowed_packet=16M 上面几行是什么?例如[mysqld][client]

标签: mysql max-allowed-packet


【解决方案1】:

已解决的问题:我发布答案而不是删除问题,以防万一它对其他人有所帮助。

我在启动服务器时在编辑器中打开了 conf (ini) 文件(sublime/atom 在不同时间)。最后我用记事本编辑了文件,关闭它,服务器启动就好了。

我认为如果conf文件被另一个进程打开,服务器将无法加载它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-28
    • 1970-01-01
    • 2015-07-11
    • 1970-01-01
    • 2011-12-25
    • 2018-09-13
    • 2020-11-12
    • 2015-08-31
    相关资源
    最近更新 更多