3

我在我的 Mac 上使用 mysql 的 Homebrew 设置进行 Drupal 开发工作,在几个版本 6 的站点上,我在尝试打开状态报告页面时遇到著名的“mysql:服务器已消失”错误。经过一番搜索,我发现答案似乎是将 max_allowed_pa​​cket 设置添加到 my.cnf 的 [mysqld] 部分。所以,使用 mysql 公式中提供的 my-medium.cnf 文件,我将它放在 /usr/local/etc 并添加

max_allowed_packet=65M

但是,由于某种原因,mysql 不喜欢这样。我运行 mysql.server restart,它似乎开始了,但是当我尝试在我的客户端中运行查询时,它告诉我没有连接。然后我尝试从 my.cnf 中删除设置并重新启动,但我没有重新启动,而是得到

ERROR! The server quit without updating PID file (/usr/local/var/mysql/username.home.pid)

尝试重新连接套接字会给我一个错误,提示请求超时或无法通过套接字连接(在这种情况下是 /tmp/mysql.sock)。在 Drupal 站点上,我得到一个“没有这样的文件或目录”。信息。

谁能解释为什么仅仅将这个值添加到 my.cns 会导致这样的结果?

谢谢。

编辑:在检查了我使用的 my.cnf 之后,我注意到 [mysqld] 部分已经有了 max_allowed_pa​​cket = 1M。我删除了它并创建了只有

[mysqld]
max_allowed_packet = 64M

我仍然得到相同的结果。出于某种原因,当我添加或更改该设置时,mysql 不喜欢它。

4

1 回答 1

2

从文档中,它应该是一个以 1024 为增量的字节值。http://dev.mysql.com/doc/refman/5.5/en/server-system-variables.html#sysvar_max_allowed_pa​​cket

于 2013-04-08T19:38:31.517 回答