La mesa está marcada como bloqueada y debe repararse


191

Recibo este error en wordpress phpMyadmin

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

Cuando inicio sesión en phpMyadmin, dice que wp_posts está "en uso"

Mi sitio web está actualmente inactivo debido a esto.

Busqué en Google este problema, pero no veo el botón "reparar" en phpMyadmin. Por favor hazme saber como arreglar esto. No estoy seguro de dónde emitir el comando PHP. Por favor avise, mi habilidad con PHP es muy básica.

Respuestas:


215

Aquí es donde está el botón de reparación:

texto alternativo


183

Ejecute esto desde la línea de comando de su servidor:

 mysqlcheck --repair --all-databases

45
Para evitar un error de "acceso denegado", es posible que deba agregar el nombre de usuario y la contraseña a este comando. mysqlcheck -uroot -p --repair --all-databasesy proporcione la contraseña.
wruckie

120

Tuve el mismo problema cuando el espacio libre en el disco de mi servidor era 0

Puede usar el comando (debe haber un amplio espacio para los archivos mysql)

REPAIR TABLE `<table name>`;

para reparar mesas individuales


Útil, tuve este problema con una tabla UC Drupal v7.6x, que de repente se jugó; emitió el comando REPAIR TABLE como se indicó anteriormente en la consola phpMyAdmin SQL y lo arregló. ¡Gracias a Dios por stackoverflow! ¡Salud!
Paul B

25

Conéctese a su servidor a través de SSH

luego conéctese a su consola mysql

y

USE user_base
REPAIR TABLE TABLE;

-O-

Si hay muchas tablas rotas en la base de datos actual:

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

Si hay muchas tablas rotas en muchas bases de datos:

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

2
No coloque las contraseñas en la línea de comandos, luego se guardan en el historial de forma y ubicación no seguras. Los comandos de mysql le permiten pasar el parámetro -psolo, y luego le pedirá su contraseña.
Thierry J.

7

Cuando recibí este error:

# 145 - La tabla '. \ Engine \ phpbb3_posts' está marcada como bloqueada y debe repararse

Ejecuté este comando en PhpMyAdmin para solucionarlo:

REPAIR TABLE phpbb3_posts;

6

Esto significa que su tabla MySQL está dañada y necesita repararla. Utilizar

myisamchk -r /DB_NAME/wp_posts

desde la línea de comando. Mientras ejecuta la reparación, debe cerrar su sitio web temporalmente para que no se intenten nuevas conexiones a su base de datos mientras se repara.


Le pedí esto al comentario anterior, pero creo que ha cerrado la sesión, por lo que se lo vuelvo a pedir. "Muchas gracias, mi sitio vuelve a estar en línea nuevamente. Sin embargo, una pregunta, ya que la base de datos estaba dañada y la reparé nuevamente, ¿debería preocuparme por algo? ¿Debería investigar si eso hizo que algo se rompiera? ¿de todo?"
John Connor

No debes preocuparte por nada. Una vez que se repare la base de datos, su sitio volverá a funcionar. Puede volver a corromperse en algún momento, sucede, solo repare nuevamente. También haga copias de seguridad regularmente y estará bien
Dmitri
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.