mysqld data tabel fout is gemerk as neergestort en laaste (outomatiese?) herstel oplossing

MySQL -tabelfout is gemerk as neergestort en laas (outomaties?) - oplossing.

Hierdie artikel sal jou bekendstel aan ons wenke wanneer jy die tafel herstelError: Table \'./db_name/table_name\' is marked as crashed and last (automatic?) repair failedoplossing.

Daar is 'n probleem met die MySQL- tabel, soos aangedui deur die volgende boodskap: ▼

Error: Table './db_name/table_name' is marked as crashed and last (automatic?) repair failed

mysql_upgrade voer die volgende opdragte uit om tabelle na te gaan en te herstel en stelseltabelle op te gradeer ▼

mysqlcheck --all-databases --check-upgrade --auto-repair
  • Die mislukking van die operasie is onomkeerbaar en die databasis moet gestop word:
    service monit stop
    service mysqld stop
  • Voer die gids in waar die databasis geleë is:
    cd /var/lib/mysql/db_name/

Let wel: Die mysql-diens moet gestop word voordat die operasie herstel word.

  • Herstel enkele datablad:
    myisamchk -r tablename.MYI
  • Maak alle datablaaie reg:
    myisamchk -r *.MYI
  • Veilige modus:
    myisamchk -r -v -o <table_name>
  • Kragmodus:
    myisamchk -r -v -f <table_name>

myisamchk gebruik

Let wel: Voordat jy myisamchk gebruik, maak seker dat mysqld nie toegang tot die tabel het wat nagegaan moet word nie.Dit is beter om mysqld te stop.

  1. implementeer
    myisamchk –update-state -s *.myi

    , en kyk watter indekslêers probleme het (kan lank neem).

  2. Die update-state-opsie word slegs gebruik wanneer mysqld gestop word. -s beteken om sommige normale tabellysinligting te ignoreer en slegs foute te lys.
  3. Vir elke beskadigde tabel, probeer
    myisamchk -r -q table_name

    Dit is die vinnige herstelmodus, wat outomaties sal kyk of die indekstabel en die datatabel konsekwent kan wees.As dit konsekwent is, kan dit reggemaak word.

  4. As kitsoplossingsmodus misluk, oorweeg dit:
    myisamchk -r table_name

    Inkonsekwente data en indekse word uitgevee, en indekse word herbou.

  5. As dit misluk, oorweeg:
    myisamchk –safe-recover table_name

Operasie voorbeeld

Die mislukking van die operasie is onomkeerbaar en die databasis moet gestop word:

service monit stop
service mysqld stop
cd /var/lib/mysql/eloha_ufo
cd /var/lib/mysql/eloha_cwl

Maak alle datablaaie reg:

myisamchk -r *.MYI
myisamchk -r -v -f wp_postmeta.MYI
myisamchk -r -v -f wp_posts.MYI
myisamchk -r -v -f wp_options.MYI
myisamchk -r -v -f wp_itsec_log

Dit is baie stadiger as -r, maar hanteer situasies wat -r nie kan nie.

myisamchk -r -f -o /var/lib/mysql/eloha_ufo/wp_postmeta.MYI

Hier is die opdrag vir die volledige pad na die databasistabel:

myisamchk -r -f /var/lib/mysql/eloha_ufo/wp_postmeta.MYI
myisamchk -r -f /var/lib/mysql/eloha_ufo/wp_posts.MYI

Begin die MYSQLD-databasis:

service mysqld start
service mysqld restart

Begin die MONIT-moniteringsprogram :

service monit restart
service monit start

发表 评论

您的邮箱地址不会被公开。必填项已用*标注

Scroll na bo