mysql 服务器在 centos 上退出,且不更新 pid 文件

mysql 服务器在 centos 上退出,且不更新 pid 文件

我无法启动 MySQL,出现此错误

[root@server scripts]# service mysql start
Starting MySQL.The server quit without updating PID file (/[FAILED]mysql/server.mydomain.com.pid).

我应该怎么办

我没有任何my.cnf文件

只有这些

/etc/pki/tls/openssl.cnf
/home/monty/.mylogin.cnf
/opt/rightscale/sandbox/openssl.cnf
/root/.mylogin.cnf
/usr/share/doc/MySQL-server-5.6.10/my-default.cnf
/usr/share/mysql/my-default.cnf
/var/lib/mysql/auto.cnf

答案1

在 CentOS 中,您需要复制到/usr/share/doc/MySQL-server-5.6.10/my-default.cnf并且/etc/my.cnf您必须根据您的服务器配置在 my.cnf 中进行更改,在 my.cnf 中的每次更改之后都需要重新启动 mysql 服务器。

看来您对 mysql datadir 的权限有问题。运行以下命令

mysql_install_db

此命令将检查你的 mysql 配置并找出错误。完成后

chown -R mysql:mysql /path to your mysql data dir ( default is /var/lib/mysql)

brew service mysql restart

答案2

我在 CentOS 6 上遇到了同样的问题。Abhishek Anand Amralkar 提出了一个很好的建议,因为/etc/my.cnf在我的系统上安装的 CentOS(由于 anaconda 安装的依赖包 mysql-libs)有以下内容:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

pid-file参数引用了我的系统上不存在的目录和文件,即使存在,也mysql:mysql需要授予用户:组编辑它的权限。

所以最重要的是确保你知道你的真实的 my.cnf文件是 ( cd / ; nice find . -name "my.cnf"),它是 mysql 运行时实际使用的文件,并且它具有您创建的安装的正确配置。我认为很多 CentOS 用户都被my.cnf中的这个默认设置绊倒了/etc

一个快速的解决方案是:

mv /etc/my.cnf /etc/my.cnf.old

答案3

如果所有当前建议都失败。请确保 /var/lib 具有 775 权限。

相关内容