《Mysql學(xué)習(xí)一次非法關(guān)機(jī)導(dǎo)致mysql數(shù)據(jù)表?yè)p壞的實(shí)例解決》要點(diǎn):
本文介紹了Mysql學(xué)習(xí)一次非法關(guān)機(jī)導(dǎo)致mysql數(shù)據(jù)表?yè)p壞的實(shí)例解決,希望對(duì)您有用。如果有疑問(wèn),可以聯(lián)系我們。
排查修復(fù)數(shù)據(jù)表的經(jīng)過(guò):MYSQL學(xué)習(xí)
1、拜訪網(wǎng)頁(yè),提示錯(cuò)誤,連接不到數(shù)據(jù)庫(kù).MYSQL學(xué)習(xí)
2、啟動(dòng)mysql服務(wù),卸載和關(guān)閉rpm安裝的mysql服務(wù)
(昨天安裝postfix好像yum安裝了mysql),用netstat -anp |grep mysqld 命令查看mysql服務(wù)沒(méi)有起來(lái),用mysql -uroot -p也連接不到服務(wù)器.MYSQL學(xué)習(xí)
3、查看錯(cuò)誤提示:
110726 17:02:23 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.?
110726 17:02:23 [ERROR] /usr/local/mysql/libexec/mysqld: Table './mysql/host' is marked as crashed and last (automatic?) repair failed?
110726 17:02:23 [ERROR] Fatal error: Can't open and lock privilege tables: Table './mysql/host' is marked as crashed and last (automatic?) repair failed 110726 17:02:23 mysqld_safe mysqld from pid file /var/lib/mysql/localhost.localdomain.pid ended?
110726 17:24:31 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql?
110726 17:24:31 [Warning] '--skip-locking' is deprecated and will be removed in a future release. Please use '--skip-external-locking' instead.
發(fā)現(xiàn)提示數(shù)據(jù)庫(kù)表?yè)p壞.(./mysql/host)MYSQL學(xué)習(xí)
4、修復(fù)數(shù)據(jù)庫(kù)表:
cd /var/lib/mysql/mysql?
myisamchk -of host.MYI?
- recovering (with keycache) MyISAM-table 'host.MYI'?
Data records: 0?
表host.MYI修復(fù)成功.MYSQL學(xué)習(xí)
5、再次啟動(dòng)服務(wù),查看服務(wù)是否啟動(dòng),登錄mysql,還是不行.所以再次查看錯(cuò)誤日志.
/usr/local/mysql/libexec/mysqld: Table './mysql/plugin' is marked as crashed and last (automatic?) repair failed?
/usr/local/mysql/libexec/mysqld: Table 'plugin' is marked as crashed and last (automatic?) repair failed?
110726 17:24:31 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.?
110726 17:24:31 [ERROR] /usr/local/mysql/libexec/mysqld: Table './mysql/user' is marked as crashed and last (automatic?) repair failed?
110726 17:24:31 [ERROR] Fatal error: Can't open and lock privilege tables: Table './mysql/user' is marked as crashed and last (automatic?) repair failed 110726 17:24:31 mysqld_safe mysqld from pid file /var/lib/mysql/localhost.localdomain.pid ended?
110726 17:27:13 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql?
110726 17:27:13 [Warning] '--skip-locking' is deprecated and will be removed in a future release. Please use '--skip-external-locking' instead.MYSQL學(xué)習(xí)
6、又發(fā)現(xiàn)./mysql/user表?yè)p壞.
[root@localhost mysql]# myisamchk -of user.MYI?
- recovering (with keycache) MyISAM-table 'user.MYI'?
Data records: 6MYSQL學(xué)習(xí)
7、表修復(fù)成功,但是還是啟動(dòng)不了服務(wù),繼續(xù)看錯(cuò)誤日志.
/usr/local/mysql/libexec/mysqld: Table './mysql/plugin' is marked as crashed and last (automatic?) repair failed?
/usr/local/mysql/libexec/mysqld: Table 'plugin' is marked as crashed and last (automatic?) repair failed?
110726 17:27:13 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.?
110726 17:27:13 [ERROR] /usr/local/mysql/libexec/mysqld: Table './mysql/db' is marked as crashed and last (automatic?) repair failed?
110726 17:27:13 [ERROR] Fatal error: Can't open and lock privilege tables: Table './mysql/db' is marked as crashed and last (automatic?) repair failed?
110726 17:27:13 mysqld_safe mysqld from pid file /var/lib/mysql/localhost.localdomain.pid endedMYSQL學(xué)習(xí)
8、最后一個(gè)錯(cuò)誤,是./mysql/db表還沒(méi)有修復(fù)好繼續(xù)修復(fù)./mysql/db表.MYSQL學(xué)習(xí)
9、執(zhí)行下面的命令修復(fù)./mysql/db表:
[root@localhost mysql]# myisamchk -of db.MYI?
- recovering (with keycache) MyISAM-table 'db.MYI'?
Data records: 0?
Data records: 2MYSQL學(xué)習(xí)
10、最后啟動(dòng)mysql服務(wù).
/usr/local/mysql/bin/mysqld_safe &MYSQL學(xué)習(xí)
11、查看服務(wù)是否在運(yùn)行.
[root@localhost ~]# netstat -anp | grep mysqld?
tcp0? 0??
0.0.0.0:3306?
0.0.0.0:*?? LISTEN
4360/mysqld??
unix? 2? [ ACC ] STREAM LISTENING 14172
4360/mysqld /tmp/mysql.sock
這時(shí)發(fā)現(xiàn)服務(wù)已運(yùn)行.MYSQL學(xué)習(xí)
12、登錄mysql試試.
[root@localhost ~]# mysql -uroot -p123456?
Welcome to the MySQL monitor.? Commands end with ; or \g.?
Your MySQL connection id is 35?
Server version: 5.1.55-log Source distribution?
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.?
This software comes with ABSOLUTELY NO WARRANTY. This is free software,?
and you are welcome to modify and redistribute it under the GPL v2 license?
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.?
mysql>?
可以登錄.MYSQL學(xué)習(xí)
13、打開網(wǎng)頁(yè),已經(jīng)可以正常拜訪了,說(shuō)明MySQL數(shù)據(jù)庫(kù)的數(shù)據(jù)表修復(fù)成功.MYSQL學(xué)習(xí)
維易PHP培訓(xùn)學(xué)院每天發(fā)布《Mysql學(xué)習(xí)一次非法關(guān)機(jī)導(dǎo)致mysql數(shù)據(jù)表?yè)p壞的實(shí)例解決》等實(shí)戰(zhàn)技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養(yǎng)人才。
轉(zhuǎn)載請(qǐng)注明本頁(yè)網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/12308.html