学而实习之 不亦乐乎

MySQL 常见错误的解决方法

2023-10-25 07:53:37

1、mysql deamon failed to start

网站突然连接不上数据库,于是直接重启了一下服务器。进到cli模式下,执行 service myqsld start 发现还是提示"MySQL deamon failed to start"错误信息

$ /etc/init.d/mysqld start
MySQL Daemon failed to start.
Starting mysqld: [FAILED]

查看mysqld的log文件

$ less /var/log/mysqld.log

其中一行是:

/usr/libexec/mysqld: Can't change dir to ‘XXX' (Errcode: 13)

首先是查看数据库日志

[Warning] Can't create test file xxx.lower-test
[Warning] Can't create test file xxx.lower-test
/usr/libexec/mysqld: Can't change dir to '/xxx' (Errcode: 13)
[ERROR] Aborting

首先检查数据目录和日志目录的权限和所属用户,权限和所属用户都没问题,那应该是SELINUX的权限限制了

$ getenforce
Enforcing

就表明SELinux已经启用.只需要关闭即可。

关闭方法:

$ setenforce 0 (0|1 开|关)
或者
$ setsebool ftpd_disable_trans 1  

2、centos下yum安装mysql5.6后,无法启动 MySQL Daemon failed to start

如果是全新安装应该就不会出现这个问题,升级安装的话,要运行 mysql_upgrade ,但是启动MYSQL就报错 MySQL Daemon failed to start

如此就没办法运行mysql_upgrade升级MYSQL表了,因为是全新安装的数据库服务器就不管老数据了,直接把老的MYSQL数据库文件夹删除了,然后 运行 mysql_install_db 单独执行下命令,初始化mysql,test等数据库,初始化所有数据库以后,依然是无法启动,检查了MYSQL的日志发现没有权限,因为是 ROOT 运行的 mysql_install_db 命令所以初始化的MYSQL文件夹都是 ROOT 权限,更改MYSQL数据库权限为MYSQL用户以后,OK 启动成功!

$ mysqladmin -u root password '密码'

重新设定一下密码即可。

3、The server quit without updating PID file

$ service mysql start
Starting MySQL...The server quit without updating PID file [FAILED]cal/mysql/mysqld.pid).

原因:修改了/etc/my.cnf ,在mysql配置文件 /etc/my.cnf 中加入 default-character-set=utf8,去掉后可以了。

$ service mysql start 与 service mysqld start