日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

linux mysql清除数据库所有表_MySQL修复指定数据库下的所有表

發布時間:2023/11/27 数据库 61 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux mysql清除数据库所有表_MySQL修复指定数据库下的所有表 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

mysql,mariadb,percona

這幾天數據庫頻繁crash,查看日志發現類似如下的錯誤:

[ERROR] mysqld: Table './database/pre_forum_forumfield' is marked as crashed and should be repaired

1

[ERROR]mysqld:Table'./database/pre_forum_forumfield'ismarkedascrashedandshouldberepaired

。

于是乎自己查看了下,出問題的表還真不少,至少有二十幾個,而且分散在不同數據庫中。對于MyISAM存儲引擎和ARCHIVE存儲引擎來說,可以通過REPAIR TABLE來輕松的修復該表,如果覺得麻煩,phpmyadmin也提供了一鍵功能,選中指定的表選擇repair即可。但我這有如此多的表就不能一次性全部解決嗎?當然,辦法是有的。

mysqlcheck -uroot -p --auto-repair -o database

1

mysqlcheck-uroot-p--auto-repair-odatabase

其中u為用戶名,p為密碼,此處為空表示執行命令后輸入,o指定數據庫名稱,這條命令可以一次性搞定database庫下的所有需要repair的表。也就是說當你的MySQL修復指定數據庫下的所有表時,可以用上面的方法

mysqlcheck -A -uroot -p --auto-repair

1

mysqlcheck-A-uroot-p--auto-repair

與上面的命令類似,唯一的區別是A,表示所有數據庫中的所有的表,當你的MySQL需要修所有數據庫下的表的時候,這個更方便。

mysqlcheck -uroot -p --repair -o database

mysqlcheck -A -uroot -p --repair

1

2

mysqlcheck-uroot-p--repair-odatabase

mysqlcheck-A-uroot-p--repair

上面這兩天記錄經過本人測試月可以解決我的問題,唯一的區別在于–repair和–auto-repair的區別,查看了幫助之后并沒發現什么本質上的區別本人也就沒在深究,如果以后有明確發現在補充吧。

–auto-repair

1

–auto-repair

如果某個被檢查的表破壞了,自動修復它。檢查完所有表后自動進行所有需要的修復

–repair,-r

1

–repair,-r

執行可以修復大部分問題的修復,只是唯一值不唯一時不能修復。

總結

以上是生活随笔為你收集整理的linux mysql清除数据库所有表_MySQL修复指定数据库下的所有表的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

歡迎分享!

轉載請說明來源于"生活随笔",并保留原作者的名字。

本文地址:linux mysql清除数据库所有表_MySQL修复指定数