原文鏈接:https://blog.csdn.net/qevery678/article/details/96422599/
問題
[root@centos74 ~]# service mysqld start
Starting MySQL.. ERROR! The server quit without updating PID file (/usr/local/mysql/data/mysqld.pid).
分析解決
1、 可能已經存在 mysqld 進程.
[root@centos74 ~]# ps -ef | grep mysqld
[root@centos74 ~]# pkill -9 mysqld
# 查看是否有這個進程,如果有殺死掉
2、數據目錄mysql用戶是否有權限.
[root@centos74 ~]# chown -R mysql.mysql /usr/local/mysql/data
3、機器上面還有上次安裝mysql的殘留.
[root@centos74 ~]# find / -name mysql-binlog*
# 查看mysql的二進制目錄,看是否存在mysqlbinlog.index,有的話刪掉
4、mysql 在啟動的時候會去尋找默認的 配置文件 /etc/my.cnf 這個目錄下的 datadir 要指定數據目錄.
# 如果沒有,那么在 my.cnf 里面添加 datadir=/usr/local/mysql/data
5、skip-federated字段問題.
# 檢查一下/etc/my.cnf文件中有沒有沒被注釋掉的skip-federated字段,如果有就立即注釋掉.
6、錯誤日志目錄不存在.
# 賦予 mysql 所有者權限 chmod chown .
7、防火牆原因.
# centos 會默認開啟selinux .
[root@centos74 ~]# vim /etc/selinux/config
SELINUX=disabled
8、查看配置文件/usr/local/mysql/my.cnf里有沒有innodb_buffer_pool_size
# innodb_buffer_pool_size:主要作用是緩存innodb表的索引,數據,插入數據時的緩沖.
# 默認值:128M;
# 專用mysql服務器設置此值的大小: 系統內存的70%-80%最佳.
# 如果你的系統內存不大,查看這個參數,把它的值設置小一點.