MySQL無法啟動(dòng):Table /'mysql.host/' doesn/'t exist,下面我來介紹如何解決這個(gè)問題,安裝很順利但無法啟動(dòng),想了想可能是之前誤操作/var/目錄的權(quán)限,導(dǎo)致沒有寫權(quán)限導(dǎo)致的,但重新設(shè)置寫權(quán)限之后仍不能正確啟動(dòng).
提示:Timeout error occurred trying to start MySQL Daemon.Starting MySQL: [FAILED]
檢查了MySQL的日志(cat /var/log/mysqld.log)發(fā)現(xiàn)提示一個(gè)錯(cuò)誤([ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist)
猜測(cè)可能是MySQL的默認(rèn)數(shù)據(jù)庫沒正常安裝,但卸載MySQL(yum remove mysql-server)再重裝(yum install mysql-server)還是不行,現(xiàn)象和原來一樣。后來找到一個(gè)專門安裝默認(rèn)數(shù)據(jù)庫的命令:mysql_install_db,執(zhí)行之后,再啟動(dòng)MySQL(/etc/init.d/mysqld start)終于看到久違的OK,代碼如下:
- # /etc/init.d/mysqld start
- Starting MySQL: [ OK ]
問題二,用safe_mysqldq啟動(dòng)的時(shí)候,出現(xiàn):
Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
最終解決方法如下:
在mysql的安裝目錄下,我的是/usr/local/mysql,代碼如下:
./scripts/mysql_install_db --usrer=mysql --datadir=/usr/local/mysql/data/
原因是重裝的時(shí)候數(shù)據(jù)目錄不一致導(dǎo)致.
問題三,說一下我解決的過程,按照mysql的安裝步驟,代碼如下:
- shell> groupadd mysql
- shell> useradd -g mysql mysql
- shell> gunzip < mysql-VERSION.tar.gz | tar -xvf -
- shell> cd mysql-VERSION
- shell> ./configure --prefix=/usr/local/mysql
- shell> make
- shell> make install
- shell> scripts/mysql_install_db --user=mysql
- shell> chown -R root /usr/local/mysql
- shell> chown -R mysql /usr/local/mysql/var
- shell> chgrp -R mysql /usr/local/mysql
- shell> cp support-files/my-medium.cnf /etc/my.cnf
- shell> /usr/local/mysql/bin/mysqld_safe --user=mysql &
- --Vevb.com
這樣標(biāo)準(zhǔn)進(jìn)行下來是沒有問題的,但在最后一步啟動(dòng)mysql的時(shí)候我希望將數(shù)據(jù)庫的數(shù)據(jù)文件放在另外一個(gè)目錄下面,啟動(dòng)命令修改為,代碼如下:
shell>/usr/local/mysql/bin/mysqld_safe --user=mysql --log-error=/u01/mysql/mysql_error/error --datadir=/u01/mysql/data
這個(gè)時(shí)候就出現(xiàn)問題了,因?yàn)樵谶M(jìn)行初始化數(shù)據(jù)庫權(quán)限表的那一步的時(shí)候默認(rèn)創(chuàng)建的權(quán)限表在默認(rèn)目錄/usr/local/mysql/var下面,這就造成了,上面的錯(cuò)誤無法找到 權(quán)限表:Can't open and lock privilege tables:Table 'mysql.host' doesn't exist
解決辦法:在運(yùn)行初始化權(quán)限表的時(shí)候使用增加參數(shù)--datadir,命令格式為:
shell> scripts/mysql_install_db --user=mysql --datadir=/u01/mysql/data
新聞熱點(diǎn)
疑難解答
圖片精選