mysqlÊý¾Ý¿âÊܵ½ÆÆ»µµÄÐÞ¸´
2007Äê12ÔÂ16ÈÕ — °¢Q (Views: 1450)ÐÞ¸´Êý¾Ý±í
¶àÊýÇé¿öÏ£¬Êý¾Ý¿â±»ÆÆ»µÖ»ÊÇÖ¸Ë÷ÒýÎļþÊܵ½ÁËÆÆ»µ£¬ÕæÕýµÄÊý¾Ý±»ÆÆ»µµôµÄÇé¿ö·Ç³£ÉÙ¡£´ó¶àÊýÐÎʽµÄÊý¾Ý¿âÆÆ»µµÄµÄÐÞ¸´Ï൱¼òµ¥¡£
ºÍÇ°ÃæµÄУÑéÒ»Ñù£¬ÐÞ¸´µÄ·½Ê½Ò²ÓÐÈýÖÖ¡£
ÏÂÃæ½²µÄ·½·¨Ö»¶ÔMyISAM¸ñʽµÄ±íÓÐЧ¡£ÆäËûÀàÐ͵ÄËð»µÐèÒª´Ó±¸·ÝÖлָ´¡£
1¡£REPAIR TABLE SQL statement(mysql·þÎñ±ØÐë´¦ÓÚÔËÐÐ״̬)¡£
2¡£ÃüÁîmysqlcheck(mysql·þÎñ¿ÉÒÔ´¦ÓÚÔËÐÐ״̬)¡£
3¡£ÃüÁîmyisamchk(±ØÐëÍ£µômysql·þÎñ£¬»òÕßËù²Ù×÷µÄ±í´¦ÓÚ²»»î¶¯×´Ì¬)¡£
ÔÚÐÞ¸´±íµÄʱºò£¬×îºÃÏÈ×÷һϱ¸·Ý¡£ËùÒÔÄãÐèÒªÁ½±¶ÓÚÔʼ±í´óСµÄÓ²Å̿ռ䡣ÇëÈ·±£ÔÚ½øÐÐÐÞ¸´Ç°ÄãµÄÓ²Å̿ռ仹ûÓÐÓÃÍê¡£
1>ÓÔrepair table”·½Ê½ÐÞ¸´
Óï·¨£ºrepair table ±íÃû [Ñ¡Ïî]
Ñ¡ÏîÈçÏ£º
QUICK ÓÃÔÚÊý¾Ý±í»¹Ã»±»Ð޸ĵÄÇé¿öÏ£¬ËÙ¶È×î¿ì
EXTENDED ÊÔͼȥ»Ö¸´Ã¿¸öÊý¾ÝÐУ¬»á²úÉúһЩÀ¬»øÊý¾ÝÐУ¬Íò°ãÎÞÄεÄÇé¿öÏÂÓÃ
USE_FRM ÓÃÔÚ.MYIÎļþ¶ªÊ§»òÕßÍ·²¿Êܵ½ÆÆ»µµÄÇé¿öÏ¡£ÀûÓÃ.frmµÄ¶¨ÒåÀ´Öؽ¨Ë÷Òý
¶àÊýÇé¿öÏ£¬¼òµ¥µÃÓÔrepair table tablename”²»¼ÓÑ¡Ïî¾Í¿ÉÒԸ㶨ÎÊÌâ¡£µ«Êǵ±.MYIÎļþ¶ªÊ§»òÕßÍ·²¿Êܵ½ÆÆ»µÊ±£¬ÕâÑùµÄ·½Ê½²»¹ÜÓã¬ÀýÈ磺
mysql> REPAIR TABLE fixtures;
+————————-+——–+———-+———————————————+
| Table | Op | Msg_type | Msg_text |
+————————-+——–+———-+———————————————+
| sports_results.fixtures | repair | error | Can’t find file: ‘fixtures.MYI’ (errno: 2) |
+————————-+——–+———-+———————————————+
ÐÞ¸´Ê§°ÜµÄÔÒòʱË÷ÒýÎļþ¶ªÊ§»òÕ߯äÍ·²¿Ôâµ½ÁËÆÆ»µ£¬ÎªÁËÀûÓÃÏà¹Ø¶¨ÒåÎļþÀ´ÐÞ¸´£¬ÐèÒªÓÃUSE_FRMÑ¡Ïî¡£ÀýÈ磺
mysql> REPAIR TABLE fixtures USE_FRM;
+————————-+——–+———-+————————————+
| Table | Op | Msg_type | Msg_text |
+————————-+——–+———-+————————————+
| sports_results.fixtures | repair | warning | Number of rows changed from 0 to 2 |
| sports_results.fixtures | repair | status | OK |
+————————-+——–+———-+————————————+
ÎÒÃÇ¿ÉÒÔ¿´µ½Msg_test±íÏîµÄÊä³öÐÅÏ¢”ok”,±íÃûÒѾ³É¹¦ÐÞ¸´ÊÜËð±í¡£
2>ÓÃmysqlÄÚ½¨ÃüÁîmysqlcheckÀ´ÐÞ¸´
µ±mysql·þÎñÔÚÔËÐÐʱ£¬Ò²¿ÉÒÔÓÃmysqlÄÚ½¨ÃüÁîmysqlcheckÀ´ÐÞ¸´¡£
Óï·¨£ºmysqlcheck -r Êý¾Ý¿âÃû ±íÃû -uuser -ppass
%mysqlcheck -r sports_results fixtures -uuser -ppass
sports_results.fixtures OK
ÀûÓÃmysqlcheck¿ÉÒÔÒ»´ÎÐÔÐÞ¸´¶à¸ö±í¡£Ö»ÒªÔÚÊý¾Ý¿âÃûºóÁгöÏàÓ¦±íÃû¼´¿É(Óÿոñ¸ô¿ª)¡£»òÕßÊý¾Ý¿âÃûºó²»¼Ó±íÃû£¬½«»áÐÞ¸´Êý¾Ý¿âÖеÄËùÓÐ±í£¬ÀýÈ磺
%mysqlcheck -r sports_results fixtures events -uuser -ppass
sports_results.fixtures OK
sports_results.events OK
%mysqlcheck -r sports_results -uuser -ppass
sports_results.fixtures OK
sports_results.events OK
…
3>ÓÃmyisamchkÐÞ¸´
ÓÃÕâÖÖ·½Ê½Ê±£¬mysql·þÎñ±ØÐëÍ£µô£¬»òÕßËù²Ù×÷µÄ±í´¦ÓÚ²»»î¶¯×´Ì¬(Ñ¡Ïîskip-external-lockingû±»Ê¹ÓÃ)¡£¼Ç×ÅÒ»¶¨ÒªÔÚÏà¹Ø.MYIÎļþµÄ·¾¶Ï»òÕß×Ô¼º¶¨ÒåÆä·¾¶¡£
Óï·¨£ºmyisamchk [Ñ¡Ïî] [±íÃû]
ÏÂÃæÊÇÆäÑ¡ÏîºÍÃèÊö
–backup, -B ÔÚ½øÐÐÐÞ¸´Ç°×÷Ïà¹Ø±íµÃ±¸·Ý
–correct-checksum ¾ÀÕýУÑéºÍ
–data-file-length=#, -D # ÖØ½¨±íʱ£¬Ö¸¶¨Êý¾ÝÎļþµÃ×î´ó³¤¶È
–extend-check, -e ÊÔͼȥ»Ö¸´Ã¿¸öÊý¾ÝÐУ¬»á²úÉúһЩÀ¬»øÊý¾ÝÐУ¬Íò°ãÎÞÄεÄÇé¿öÏÂÓÃ
–force, -f µ±Óöµ½ÎļþÃûÏàͬµÄ.TMDÎļþʱ£¬½«Æä¸²¸Çµô¡£
keys-used=#, -k # Ö¸¶¨ËùÓõÄkeys¿É¼Ó¿ì´¦ÀíËÙ¶È£¬Ã¿¸ö¶þ½øÖÆÎ»´ú±íÒ»¸ökey.µÚÒ»¸ökeyΪ0
–recover, -r ×î³£ÓõÄÑ¡Ï´ó¶àÊýÆÆ»µ¶¼¿ÉÒÔͨ¹ýËüÀ´ÐÞ¸´¡£Èç¹ûÄãµÄÄÚ´æ×ã¹»´ó£¬¿ÉÒÔÔö´ó
²ÎÊýsort_buffer_sizeµÄÖµÀ´¼Ó¿ì»Ö¸´µÄËÙ¶È¡£µ«ÊÇÓöµ½Î¨Ò»¼üÓÉÓÚÆÆ»µ¶ø²»Î¨Ò»
µÄ±íʱ£¬ÕâÖÖ·½Ê½²»¹ÜÓá£
–safe-recover £o ×î³¹µ×µÄÐÞ¸´·½Ê½£¬µ«ÊDZÈ-r·½Ê½Âý£¬Ò»°ãÔÚ-rÐÞ¸´Ê§°Üºó²ÅʹÓá£ÕâÖÖ·½Ê½¶Á³ö ËùÓеÄÐУ¬²¢ÒÔÐÐΪ»ù´¡À´Öؽ¨Ë÷Òý¡£ËüµÄÓ²Å̿ռäÐèÇó±È-r·½Ê½ÉÔ΢Сһµã£¬Òò ΪËüû´´½¨·ÖÀ໺´æ¡£Äã¿ÉÒÔÔö¼Ókey_buffer_sizeµÄÖµÀ´¼Ó¿ìÐÞ¸´µÄËÙ¶È¡£
–sort-recover, -n mysqlÓÃËüÀà·ÖÀàË÷Òý£¬¾¡¹Ü½á¹ûÊÇÁÙʱÎļþ»á·Ç³£´ó
–character-sets-dir=… °üº¬×Ö·û¼¯ÉèÖõÄĿ¼
–set-character-set=name ΪË÷Òý¶¨ÒåÒ»¸öеÄ×Ö·û¼¯
–tmpdir=path, -t Èç¹ûÄã²»ÏëÓû·¾³±äÁ¿TMPDIRµÄÖµµÄ»°£¬¿ÉÒÔ×Ô¶¨ÒåÁÙʱÎļþµÄ´æ·ÅλÖÃ
–quick, -q ×î¿ìµÄÐÞ¸´·½Ê½£¬µ±Êý¾ÝÎļþûÓб»ÐÞ¸ÄʱÓ㬵±´æÔÚ¶à¼üʱ£¬µÚ¶þ¸ö-q½«»áÐÞ¸Ä Êý¾ÝÎļþ
–unpack, -u ½â¿ª±»myisampack´ò°üµÄÎļþ
myisamchkÓ¦ÓõÄÒ»¸öÀý×Ó
% myisamchk -r fixtures
- recovering (with keycache) MyISAM-table ‘fixtures.MYI’
Data records: 0






Operation Menu
