La tabella è contrassegnata come bloccata e deve essere riparata


191

Ricevo questo errore in wordpress phpMyadmin

#145 - Table './DB_NAME/wp_posts' is marked as crashed and should be repaired 

Quando accedo a phpMyadmin, dice che wp_posts è "in uso"

Il mio sito Web è attualmente inattivo a causa di questo.

Ho cercato su Google questo problema, ma non vedo il pulsante "ripara" su phpMyadmin. Per favore fatemi sapere come risolvere questo problema. Non sono sicuro di dove emettere il comando PHP. Si prega di avvisare, la mia competenza con PHP è molto semplice.

Risposte:


215

Ecco dove si trova il pulsante di riparazione:

testo alternativo


183

Eseguilo dalla riga di comando del tuo server:

 mysqlcheck --repair --all-databases

45
Per evitare un errore di "accesso negato", potrebbe essere necessario aggiungere il nome utente e la password a questo comando. mysqlcheck -uroot -p --repair --all-databasese fornire la password.
wruckie,

120

Ho avuto lo stesso problema quando lo spazio disponibile su disco del mio server era 0

È possibile utilizzare il comando (deve esserci ampio spazio per i file mysql)

REPAIR TABLE `<table name>`;

per riparare singoli tavoli


Utile, ho avuto questo problema con un tavolo UC Drupal v7.6x, che improvvisamente ha giocato; ha emesso il comando REPAIR TABLE come sopra nella console phpMyAdmin SQL e lo ha riparato. Grazie al cielo per StackOverflow !! Saluti!
Paolo B

25

Connettiti al tuo server tramite SSH

quindi connettiti alla tua console mysql

e

USE user_base
REPAIR TABLE TABLE;

-O-

Se ci sono molte tabelle rotte nel database corrente:

mysqlcheck -uUSER -pPASSWORD  --repair --extended user_base

Se ci sono molte tabelle rotte in molti database:

mysqlcheck -uUSER -pPASSWORD  --repair --extended -A

2
Non inserire le password nella riga di comando, vengono quindi salvate nella cronologia in modo e posizione non protetti. I comandi mysql ti consentono di passare il parametro -pda solo e ti chiederanno la password.
Thierry J.,

7

Quando ho ricevuto questo errore:

# 145 - La tabella '. \ Engine \ phpbb3_posts' è contrassegnata come bloccata e dovrebbe essere riparata

Ho eseguito questo comando in PhpMyAdmin per risolverlo:

REPAIR TABLE phpbb3_posts;

6

Ciò significa che la tua tabella MySQL è danneggiata e devi ripararla. Uso

myisamchk -r /DB_NAME/wp_posts

dalla riga di comando. Durante l'esecuzione della riparazione, è necessario chiudere temporaneamente il sito Web in modo che non vengano tentate nuove connessioni al database durante la riparazione.


Ho chiesto questo al commento sopra ma penso che sia disconnesso, quindi te lo chiedo di nuovo. "Grazie mille, il mio sito è tornato di nuovo online. Una domanda però, poiché il database è stato danneggiato e l'ho riparato di nuovo, dovrei essere preoccupato per qualcosa? Dovrei indagare se ciò ha causato la rottura di qualcos'altro? O questo avrebbe dovuto occuparsene di tutto?"
John Connor,

Non dovresti preoccuparti di nulla. Una volta riparato il database, il tuo sito funzionerà di nuovo. A un certo punto potrebbe danneggiarsi di nuovo, succede, riparalo di nuovo. Fai anche i backup regolarmente e
starai
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.