Tengo una base de datos MySQL con una tabla MyISAM con 4 millones de filas. Actualizo esta tabla una vez a la semana con aproximadamente 2000 nuevas filas. Después de la actualización, entonces me altere la tabla de la siguiente manera:MySQL ALTER TABLE en una mesa muy grande: ¿es seguro ejecutarlo?
ALTER TABLE x ORDER BY PK DESC
he pedido la mesa por el campo de clave principal en orden descendente. Esto no me ha dado ningún problema en mi máquina de desarrollo (Windows con memoria de 3GB). Tres veces lo he intentado con éxito en el servidor Linux de producción (con 512 MB de RAM y alcanzando la tabla ordenada resultante en aproximadamente 6 minutos cada vez), la última vez que lo probé tuve que detener la consulta después de unos 30 minutos y reconstruir el base de datos de una copia de seguridad.
¿Puede un servidor de 512 MB hacer frente a esa declaración alternativa en una tabla tan grande? He leído que se crea una tabla temporal para realizar el comando ALTER TABLE.
Pregunta: ¿Se puede ejecutar este comando alter con seguridad? ¿Cuál debería ser el tiempo esperado para la alteración de la mesa?
Creo que "Tabla muy grande" es probablemente una exageración. 4M filas no es una tabla muy grande. 1 billón podría ser. – MarkR