mysql中優化和修單數據庫對象mysqlcheck具體引見。本站提示廣大學習愛好者:(mysql中優化和修單數據庫對象mysqlcheck具體引見)文章只能為提供參考,不一定能成為您想要的結果。以下是mysql中優化和修單數據庫對象mysqlcheck具體引見正文
1、mysqlcheck簡介
mysqlcheck客戶端可以檢討和修復MyISAM表。它還可以優化和剖析表。
mysqlcheck的功效相似myisamchk,但其任務分歧。重要差異是當mysqld辦事器在運轉時必需應用mysqlcheck,而myisamchk運用於辦事器沒有運轉時。應用mysqlcheck的利益是不須要停滯辦事器來檢討或修復表。應用myisamchk修復掉敗是弗成逆的。
Mysqlcheck為用戶供給了一種便利的應用SQL語句CHECK TABLE、REPAIR TABLE、ANALYZE TABLE和OPTIMIZE TABLE的方法。它肯定在要履行的操作中應用應用哪一個語句,然後將語句發送到要履行的辦事器上。
同其它客戶端比擬,mysqlcheck有一個特別特征。從新定名二進制可以更改檢討表的默許行動(--check)。假如你想要一個對象默許可以修復表的對象,只須要將mysqlcheck從新復制為mysqlrepair,或許應用一個符號鏈接mysqlrepair鏈接mysqlcheck。假如挪用mysqlrepair,可依照敕令修復表。
上面的名可用來更改mysqlcheck的默許行動:
mysqlrepair
默許選項為--repair
mysqlanalyze
默許選項為--analyze
mysqloptimize
默許選項為--optimize
2、mysqlcheck的應用
1.有3種方法來挪用mysqlcheck:
shell> mysqlcheck[options] db_name [tables]
shell> mysqlcheck[options] ---database DB1 [DB2 DB3...]
shell> mysqlcheck[options] --all--database
假如沒有指定任何表或應用---database或--all--database選項,則檢討全部數據庫。
2.修復一切的數據庫
mysqlcheck -a -c -o -r -m --all-databases -uroot -p
應用下面的敕令便可最好化一切數據庫
參數含義:
-a = Analyse given tables.
-c = Check table for errors
-o = Optimise table
-r = Can fix almost anything except unique keys that aren't unique
-m = --medium-check
注:MYSQL版本為5.5時,敕令中請刪除-o
3.修復指定的數據庫
mysqlcheck -o -r -uroot -p888888 dataname
mysqlcheck -hlocalhost -auto-repair -uroot -p****** dataname
4.附帶簡略講一下mysqlcheck應用詳解
用法:
mysqlcheck [OPTIONS] database [tables]
mysqlcheck [OPTIONS] –databases DB1 [DB2 DB3...]
mysqlcheck [OPTIONS] –all-databases
經常使用選項:
-A 一切數據庫
-a 剖析指定的表
-c 檢討庫或表
-r 修復庫或表
-o 優化指定的表
-h mysql辦事主機
-P 端口
-u 用戶名
-p 暗碼
--auto-repair 修復已破壞表
3、取得mysqlcheck.exe
經由過程mysql.com下載你對應版本號的mysql裝置包(noinstall 無需裝置版本)。裝置完mysql數據庫即裝置了此敕令,在途徑mysql\mysql server 5.0\bin下。
4、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
顯示版本信息並加入。