在 Windows 中更改 my.cnf 后,Ubuntu 上的 MySQL 服务器无法启动

在 Windows 中更改 my.cnf 后,Ubuntu 上的 MySQL 服务器无法启动

我在 Ubuntu Server 12.10 上运行 MySQL 5.5。当我运行时/etc/init.d/mysql restart,我得到以下信息:

mysql start/running, process 2754

但是,当我通过 Samba 共享在 Windows 中打开 /etc/mysql/my.cnf 并保存该文件而不进行任何更改时,在运行完全相同的命令时,我得到以下信息/etc/init.d/mysql restart

start: Job failed to start

mysql无法重启的原因是什么?如何在 Windows 中进行编辑而不破坏我的配置文件?

答案1

它可能是 Windows 行结尾与 Unix 行结尾吗?

答案2

您可以在 Windows 中进行更改,但必须使用记事本以外的其他编辑器。尝试 Notepad++、PsPad 或类似软件。 Windows 记事本总是将行结尾更改为 Windows 样式,这会导致问题。

答案3

您可以使用该dos2unix工具将行结尾转换为 unix 格式:

$ sudo apt-get install dos2unix
$ dos2unix /path/to/my.cnf

现在问题已经解决了,看看这是否能解决问题。可能当您使用或其他编辑器
打开文件时,它会要求您将行结尾转换为与 Windows 兼容的格式,而您选择了“是”。notepad

答案4

当您在 Ubuntu Server 12.10 上运行 MySQL 5.5 时,首先使用以下命令检查进程是否正在运行。

ps aux |grep mysql 

如果运行杀死 PID(如其显示)mysql start/running, process 2754,然后尝试再次启动 MySQL。使用此命令检查是否已安装,dpkg --get-selections | grep mysql如果它列出为已安装,则说明已安装。否则你需要安装它,最后检查 my.cfg 中的 pid 路径,默认是/var/lib/mysql在杀死进程后删除 sock 文件。

正如您所说的“您通过 Samba 共享在 Windows 中打开 my.cnf 并保存文件而不进行任何更改”,如果您没有更改任何内容也没关系,它不会影响 MySQL。

相关内容