国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

MySQL數據庫mysqlcheck優化表方法詳解

2024-07-24 12:37:05
字體:
來源:轉載
供稿:網友

在mysql中如果我們表用久了可能會發現后面有一個多余的字節數據會越大,同時久了表的查詢速度也比較慢了,那么我們可以使用mysqlcheck是mysql自帶的可以檢查和修復MyISAM表,并且它還可以優化和分析表,mysqlcheck的功能類似myisamchk,但其工作不同.

mysql有3種方式來調用mysqlcheck:

  1. shell> mysqlcheck[options] db_name [tables] 
  2. shell> mysqlcheck[options] ---database DB1 [DB2 DB3...] 
  3. shell> mysqlcheck[options] --all--database 

如果沒有指定任何表或使用---database或--all--database選項,則檢查整個數據庫,同其它客戶端比較,mysqlcheck有一個特殊特性,重新命名二進制可以更改檢查表的默認行為(--check),如果你想要一個工具默認可以修復表的工具,只需要將mysqlcheck重新復制為mysqlrepair,或者使用一個符號鏈接mysqlrepair鏈接mysqlcheck,如果調用mysqlrepair,可按照命令修復表.

主要差別是當mysqld服務器在運行時必須使用mysqlcheck,而myisamchk應用于服務器沒有運行時,使用mysqlcheck的好處是不需要停止服務器來檢查或修復表,使用myisamchk修復失敗是不可逆的.

用法:

  1. mysqlcheck [OPTIONS] database [tables] 
  2. mysqlcheck [OPTIONS] –databases DB1 [DB2 DB3...] 
  3. mysqlcheck [OPTIONS] –all-databases 

常用選項:

  1. -A 所有數據庫 
  2. -a 分析指定的表 
  3. -c 檢查庫或表 
  4. -r 修復庫或表 
  5. -o 優化指定的表 
  6. -h mysql服務主機 
  7. -P 端口 //Vevb.com
  8. -u 用戶名 
  9. -p 密碼 
  10. --auto-repair   修復已損壞表 

1、如果需要檢查并修復所有的數據庫的數據表,那么可以使用:

/usr/local/mysql/bin/mysqlcheck -uroot -p -o -A

Enter password:

輸入密碼回車后,即可對所有數據庫進行優化.

2、如果需要修復指定的數據庫用如下代碼:

/usr/local/mysql/bin/mysqlcheck -p DATABASE

最常用的就是這兩種~~

mysqlcheck支持下面的選項:

---help:顯示幫助消息并退出.

--all--database,-A:檢查所有數據庫中的所有表,與使用---database選項相同,在命令行中命名所有數據庫.

--all-in-1,-1:不是為每個表發出一個語句,而是為命名數據庫中待處理的所有表的每個數據庫執行一個語句.

--analyze,-a:分析表.

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

--character-sets-dir=path:字符集的安裝目錄,參見5.10.1節,“數據和排序用字符集”.

--check,-c:檢查表的錯誤.

--check-only-changed,-C:只檢查上次檢查以來已經更改的或沒有正確關閉的表.

--compress:壓縮在客戶端和服務器之間發送的所有信息,如果二者均支持壓縮.

---database,-B:處理數據庫中命名的所有表,使用該選項.所有字名參量被看作數據庫名,而不是表名.

---debug[=debug_options],-# [debug_options]

寫調試日志,debug_options字符串通常為'd:t:o,file_name'.

--default-character-set=charset:使用charsetas默認字符集,參見5.10.1節,“數據和排序用字符集”.

--extended,-e:如果你正使用該選項來檢查表,可以確保它們100%地一致,但需要很長的時間.

如果你正使用該選項來修復表,則運行擴展修復,不但執行的時間很長,而且還會產生大量的垃圾行.

--fast,-F:只檢查沒有正確關閉的表.

--force,-f:即使出現SQL錯誤也繼續.

--host=host_name,-h host_name:連接給定主機上的MySQL服務器。

--medium-check,-m:執行比--extended操作更快的檢查。只能發現99.99%的錯誤,在大多數情況下這已經足夠了.

--optimize,-o:優化表。

--password[=password],-p[password]:當連接服務器時使用的密碼。如果使用短選項形式(-p),選項和 密碼之間不能有空格。如果在命令行中--password或-p選項后面沒有 密碼值,則提示輸入一個密碼。

--port=port_num,-P port_num:用于連接的TCP/IP端口號。

--protocol={TCP | SOCKET | PIPE | MEMORY}:使用的連接協議。

--quick,-q:如果你正使用該選項在檢查表,它防止掃描行以檢查錯誤鏈接的檢查。這是最快的檢查方法。

如果你正使用該選項在修復表,它嘗試只修復索引樹。這是最快的修復方法。

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

--silent,-s:沉默模式。只打印錯誤消息。

--socket=path,-S path:用于連接的套接字文件。

--tables:覆蓋---database或-B選項,選項后面的所有參量被視為表名.

--user=user_name,-u user_name:當連接服務器時使用的MySQL用戶名.

--verbose,-v:冗長模式,打印關于各階段程序操作的信息.

--version,-V:顯示版本信息并退出

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 台山市| 资溪县| 毕节市| 勃利县| 安仁县| 浑源县| 蕲春县| 长寿区| 台北县| 合水县| 启东市| 镇宁| 封开县| 十堰市| 章丘市| 高台县| 麻城市| 临潭县| 临沭县| 雷山县| 普陀区| 郓城县| 商城县| 南郑县| 门头沟区| 诸城市| 平阴县| 珲春市| 汕头市| 六枝特区| 天台县| 滦平县| 施秉县| 来宾市| 苏州市| 仙桃市| 姜堰市| 绥芬河市| 漳平市| 苏州市| 赞皇县|