mysql錯誤解決:
先 參考:http://www.jb51.net/article/48625.htm
參考第四條:
mysql在啓動時沒有指定配置文件時會使用/etc/my.cnf配置文件,請打開這個文件查看在[mysqld]節下有沒有指定數據目錄(datadir)。
mysql版本:mysql Ver 14.14 Distrib 5.5.44, for linux2.6 (i686) using readline 5.1
錯誤原因:my.conf放置在/etc目錄下,當安裝mysql-admin(mysql客戶端,裏面包含了mysql-common等包,)後,, 問題出現
toor@door:/lib$ sudo /etc/init.d/mysql.server start
Starting MySQL
. * The server quit without updating PID file (/var/lib/mysql/door.pid).
toor@door:/lib$ clear
然後卸載mysql-admin(同時相應的包也卸載掉了):
toor@door:/lib$ sudo /etc/init.d/mysql.server start
/usr/local/mysql/bin/my_print_defaults: Can't read dir of '/etc/mysql/conf.d/' (Errcode: 2)
Fatal error in defaults handling. Program aborted
Starting MySQL
. * The server quit without updating PID file (/usr/local/mysql/data/door.pid).
toor@door:/lib$ cd /etc/
toor@door:/etc$ ls |grep mysql
mysql
toor@door:/etc$ cd mysql/
toor@door:/etc/mysql$ ls
my.cnf
問題發生變化!
然後再安裝mysql-admin客戶端
toor@door:/lib$ sudo /etc/init.d/mysql.server start
Starting MySQL
. * The server quit without updating PID file (/var/lib/mysql/door.pid).
然後把/etc目錄下的my.conf文件移動到/etc/mysql/目錄下(這裏覆蓋了安裝某些包生成的默認my.cnf文件。
toor@door:/etc$ sudo mv my.cnf mysql
toor@door:/etc$ cd mysql
toor@door:/etc/mysql$ ls
conf.d my.cnf
toor@door:/etc/mysql$ gedit my.cnf
toor@door:/etc/mysql$ ls
conf.d my.cnf
toor@door:/etc/mysql$ sudo /etc/init.d/mysql.server start
Starting MySQL
... *
toor@door:/etc/mysql$ sudo /etc/init.d/mysql.server status
* MySQL running (9965)
要注意的是,mysql的配置文件有一個加載順序,加載順序參考:http://www.linuxidc.com/Linux/2012-02/53855.htm
會先加載/etc/mysql/my.cnf,如果安裝了某些軟件,在/etc/mysql目錄下創建了my.cnf,然而這個文件是新生成的默認文件,卻不是我們的配置文件,啓動的過程加載就不成功了!所以安裝了某些包後出現啓動不成功!當這些包或者程序卸載後如果my.cnf也沒有刪除掉的話,仍然啓動失敗!。
以上說的是mysql5.54版本!! 僅供參考!!!