資訊內容
MySQL啟動創建不了pid怎么辦
lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
MySQL啟動創建不了pid怎么辦lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
首先pid文件是mysql啟動后,生成的一個文件,里面記錄的是mysql當前的進程號,如果創建失敗,mysql就無法啟動。lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
可能原因:lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
1、mysql的端口被占用lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
2、生成pid文件的目錄mysql的權限不足lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
3、mysql對應的my.cnf配置文件錯誤lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
4、mysql的啟動腳本有問題lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
5、mysql有殘余數據影響了服務的啟動lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
推薦:MySQL教程lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
問題一:端口被占用lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
<1>如果你啟動的這個mysql的端口已被其他服務占用,應修改對應my.cnf中的端口號為其他端口,然后重啟mysql.lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
[mysqld] port=3307<2>如果在重啟mysql前,已有該mysql的進程,建議kill掉再重啟lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
問題二:生成pid文件的目錄mysql的權限不足lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
<1>找到指定的mysql的數據存放目錄并授權lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
chown -R mysql.mysql /data/mysql<2>如果授權后,仍無法啟動。可以自己touch一個以主機名命名的pid文件,再啟動lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
cd /data/mysql touch node1.pid問題三:該mysql對應的my.cnf配置文件錯誤lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
<1>查看my.cnf中的port,datadir,basedir,socket等參數的配置是否正確,且配置的目錄mysql是否有權限lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
問題四:mysql的啟動腳本有問題lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
<1>當不確定啟動腳本或mysql.server配置文件內參數是否正常時,先使用mysqld_safe方式啟動,查看是否可啟動lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
(先cd到mysql的安裝根目錄)lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
./mysqld_safe --defaults-file=/etc/mysql_3306/my.cnf --user=mysql or ./mysqld_safe --defaults-file=/etc/mysql/3306/my.cnf --basedir=/Apk/install/mysql --datadir =/mysql/data/ --pid-file=/mysql/data/mysql.pid --socket=/mysql/data/mysql.sock --port=3306<2>如果可以啟動,那么需要查看mysql啟動腳本或mysql.server配置文件內參數并進行修改lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
重點看下面兩個參數lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
basedir datadir問題五:該mysql有殘余數據影響了服務的啟動lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
<1>去mysql的數據存放目錄進行刪除,然后重啟lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
cd /data/mysql/ rm -r *index /etc/init.d/mysql start<2>如果還是無法啟動,去mysql的數據存放目錄進行再刪除,然后啟動lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
(如果數據庫不是新安裝的且數據仍在使用,不建議刪除ib開頭的文件。如果刪除后,要使用備份對數據庫進行恢復)lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
cd /data/mysql/ rm -r *index rm -r ib*<3>備注lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
如果是把mysql的數據存放目錄下的文件都刪除了,應重新進行初始化。初始化后,進行啟動。lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
例如:lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
/Apk/install/mysql/mysql-5.5.32/script/mysql_install_db --user=mysql --basedir=/Apk/install/mysql/mysql-5.5.32 --datadir=/Apk/data/mysql_3306/data --pid-file=/Apk/data/mysql_3306/data/mysql.pid --socket=/tmp/mysql_3306.sock --port=3306更多技術請關注python視頻教程。lij少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺
