Búsqueda de sitios web

Reconstrucción o reparación de tablas o índices MySQL


Los cambios en tablas e índices se refieren a cómo MySQL maneja los tipos de datos y los conjuntos de caracteres. Las reparaciones o actualizaciones necesarias de la tabla se informan mediante CHECK TABLE, mysqlcheck o mysql_upgrade.

Reconstruir una mesa

Existen muchos métodos para reconstruir una tabla. Algunos de ellos se han enumerado a continuación:

  • Método de volcado y recarga

  • Método ALTERAR TABLA

  • Método de la TABLA DE REPARACIÓN

Entendamos brevemente cada uno de ellos:

Método de volcado y recarga

Si las tablas se están reconstruyendo debido al hecho de que diferentes versiones de MySQL no pueden manejar las tablas después de una actualización o descarga binaria (in situ), entonces se debe utilizar este método de volcado y recarga.

Una tabla se puede reconstruir descargándola y recargándola. Esto se puede hacer usando 'mysqldump' y creando un archivo de volcado y permitiendo que mysql recargue el archivo. Esto se puede hacer usando los siguientes comandos:

mysqldump db_name t1 > dump.sql
mysql db_name < dump.sql

Si es necesario reconstruir todas las tablas en una sola base de datos, se puede especificar el nombre de la base de datos sin utilizar ningún nombre de tabla. Se puede hacer usando el siguiente comando:

mysqldump db_name > dump.sql
mysql db_name < dump.sql

Si es necesario reconstruir todas las tablas de todas las bases de datos, se debe utilizar la opción '- - todas las bases de datos'. Se puede hacer usando el siguiente comando:

mysqldump --all-databases > dump.sql
mysql < dump.sql

Método ALTERAR TABLA

Si es necesario reconstruir una tabla utilizando el método ALTER TABLE, entonces se puede utilizar una alteración "nula". Se puede usar una declaración ALTER TABLE que cambia la tabla para que pueda usar el motor de almacenamiento. Tomemos un ejemplo: supongamos que TblName es una tabla InnoDB, la siguiente declaración se puede usar para reconstruir la tabla:

ALTER TABLE TblName ENGINE = InnoDB;

Método de la TABLA DE REPARACIÓN

El método REPAIR TABLE solo se aplica a tablas MyISAM, ARCHIVE y CSV. La declaración REPAIR TABLE se puede utilizar si la operación de verificación de la tabla sugiere que el archivo se ha dañado o se requiere una actualización. Tomemos un ejemplo: para reparar una tabla MyISAM, se puede ejecutar la siguiente declaración:

REPAIR TABLE TblName;

mysqlcheck −−repair proporciona acceso de línea de comandos a la instrucción REPAIR TABLE. Este puede ser un medio más conveniente para reparar tablas porque puede usar la opción −−databases para reparar una tabla específica en una base de datos o −−all−databases para reparar todas las tablas en todas las bases de datos. Se puede hacer usando los siguientes comandos:

mysqlcheck −−repair −−databases db_name ...
mysqlcheck −−repair −−all−databases