公司信息站,機房冷啓一次。再次開機後,網站能打開,信息能查,但是個別表出現提示:Table ‘xxx’ is marked as crashed and should be repaired 。且無法查看錶裏內容。
修復步驟 :
- 停止nginx服務器
nginx -s quit
//這種方法較stop相比就比較溫和一些了,需要進程完成當前工作後再停止。
如果提示:-bash: nginx:command not found
到 sbin/ 目錄下 執行:
./nginx -s quit
查看nginx狀態
ps -ef|grep nginx
- 進入mysql/bin目錄執行mysqlcheck 命令 自動檢測修復
mysqlcheck --auto-repair 庫名 -uroot -p123456
此處如果提示:mysqldump command not found
查一下mysqldump所在目錄,一般以/usr/local/mysql/bin/mysql 做一個軟鏈到/usr/bin
ln -fs /usr/local/mysql/bin/mysqlcheck /usr/bin
如果知道 具體哪個表可以直接進入mysql命令行執行修復
repair table 表名;
如果不知道,可以執行備份操作
3.mysql 數據備份 帶壓縮
mysqldump -u root -p 123456 庫名 | gzip > /路徑/backup20190522.sql.gz
此處如果提示:mysqldump command not found
查一下mysqldump所在目錄,一般以/usr/local/mysql/bin/mysql 做一個軟鏈到/usr/bin
ln -fs /usr/local/mysql/bin/mysql /usr/bin
備份的時候,會提出有的表還存在,“is marked as crashed and should be repaired” 的情況,而中止。那就重複第二步操作。
4. 完成後,重啓nginx,到 sbin/ 目錄下 執行:
./nginx