mysqld datatabellfeil er merket som krasjet og siste (automatiske?) reparasjonsløsning

MySQL- tabellfeilen er markert som krasjet og sist (automatisk?) - løsning.

Denne artikkelen vil introdusere deg til våre tips når du skal reparere bordetError: Table \'./db_name/table_name\' is marked as crashed and last (automatic?) repair failedløsning.

Det er et problem med MySQL- tabellen, som angitt av følgende melding: ▼

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

mysql_upgrade utfører følgende kommandoer for å sjekke og reparere tabeller og oppgradere systemtabeller ▼

mysqlcheck --all-databases --check-upgrade --auto-repair
  • Feilen i operasjonen er irreversibel og databasen må stoppes:
    service monit stop
    service mysqld stop
  • Skriv inn katalogen der databasen ligger:
    cd /var/lib/mysql/db_name/

Merk: MySQL-tjenesten må stoppes før operasjonen repareres.

  • Reparer enkelt datablad:
    myisamchk -r tablename.MYI
  • Rett opp alle dataark:
    myisamchk -r *.MYI
  • Sikkerhetsmodus:
    myisamchk -r -v -o <table_name>
  • Tving modus:
    myisamchk -r -v -f <table_name>

myisamchk bruk

Merk: Før du bruker myisamchk, sørg for at mysqld ikke har tilgang til tabellen som skal sjekkes.Bedre stoppe mysqld.

  1. 执行
    myisamchk –update-state -s *.myi

    , og sjekk hvilke indeksfiler som har problemer (kan ta lang tid).

  2. Oppdateringstilstand-alternativet brukes bare når du stopper mysqld.-s betyr å ignorere normal tabellinformasjon og bare liste feil.
  3. For hver ødelagt tabell, prøv
    myisamchk -r -q table_name

    Dette er hurtigreparasjonsmodusen, som automatisk sjekker om indekstabellen og datatabellen kan være konsistente.Hvis det er konsekvent, kan det fikses.

  4. Hvis hurtigreparasjonsmodus mislykkes, bør du vurdere:
    myisamchk -r table_name

    Inkonsekvente data og indekser slettes, og indekser bygges opp igjen.

  5. Hvis det mislykkes, vurder:
    myisamchk –safe-recover table_name

Driftseksempel

Feilen i operasjonen er irreversibel og databasen må stoppes:

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

Rett opp alle dataark:

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

Dette er mye tregere enn -r, men håndterer situasjoner som -r ikke kan.

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

Her er kommandoen for den fullstendige banen til databasetabellen:

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

Start MYSQLD-databasen:

service mysqld start
service mysqld restart

Start MONIT-overvåkingsprogrammet :

service monit restart
service monit start

发表 评论

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

Rull til toppen