我需要将数据库导入到新创建的 CentOS 5 虚拟机中。但是,每当我在控制台上运行导入命令时,它都会在大约一分钟后停止工作,并收到错误消息:
第 818 行出现错误 2006 (HY00):MySQL 服务器已消失
MySQL 寻找的唯一位置my.cnf
(据我所知)是/etc
,并且我更改了该配置中的超时,但它似乎没有任何效果。然而,如果我犯了语法错误,MySQL 似乎对此很敏感。
我的感觉是,在我正在修改的文件之后肯定还有其他.cnf
文件正在使用,但我似乎找不到它。
有谁知道我还能做些什么来尝试解决这个问题?
答案1
你可以运行这个命令“mysql --help”,你可以找到类似的内容
Default options are read from the following files in the given order:
C:\WINDOWS\my.ini C:\WINDOWS\my.cnf C:\my.ini C:\my.cnf C:\Program Files\MySQL\M
ySQL Server 5.5\my.ini C:\Program Files\MySQL\MySQL Server 5.5\my.cnf
还有一个手册页讨论MySQL服务器消失了
答案2
我发现问题是什么了。
在centos中,运行mysqld的脚本位于/etc/init.d/mysqld中,该脚本在第30行设置了STOPTIMEOUT=60。这就是60秒时间限制的来源。首先读取 /etc/init/my.cnf 中的全局配置文件,但随后它被该脚本覆盖。根据脚本,这些设置可以在 /etc/sysconfig/mysqld 中被覆盖。这些是 mysql --help 中找不到的位置。
伙计,这太难了。