MySQL 常见错误的解决方法
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