Al agregar una columna a una tabla MyISAM, MySQL creará> Copiar> Colocar> Renombrar. Tengo una tabla que es lo suficientemente grande como para que no se pueda duplicar en el espacio libre restante del servidor. Al intentar agregar una columna, el resultado es el llenado del disco. El tiempo no es un problema aquí, tampoco lo es la disponibilidad de tablas, solo el espacio en disco.MySQL ALTER TABLE en tablas demasiado grandes para duplicar
corto de copiar los datos a otro servidor, truncando, alterar, copiar y hacia atrás, ¿hay una manera de agregar una columna a una tabla MyISAM sin que crear una tabla temporal y duplicar todos los datos?
Tenía miedo de esto, pero esperaba un enfoque menos manual. Puede ser lo que termine haciendo. – Umbrella
En última instancia, este enfoque falló, llenando el disco a pesar del tamaño de mi sector. MySQL no liberó el disco de las filas eliminadas. Ejecutar OPTIMIZE para decirle a MySQL que libere el disco que llena el disco. – Umbrella
Supongo que habría funcionado mejor con InnoDB, ya que la nueva tabla reutilizaría las páginas gratuitas en el archivo idb. Me temo que no tengo otras ideas, lo siento. –