sql >> Base de Datos >  >> RDS >> Mysql

MySQL 5.6:la tabla se bloquea incluso cuando se usa ALGORITHM =inplace

¿Supongo que no estabas haciendo algún otro DDL en esa mesa aproximadamente al mismo tiempo?

Para el futuro:

8.0.12 tiene ALTER TABLE .. ALGORITHM=INSTANT para ADD COLUMN . Consulte Discusión y ALTER Reference y Referencia DDL en línea

Las siguientes limitaciones se aplican cuando se usa el algoritmo INSTANTÁNEO para agregar una columna:

  • La adición de una columna no se puede combinar en la misma declaración con otras acciones ALTER TABLE que no admitan ALGORITHM=INSTANT.
  • Solo se puede agregar una columna como la última columna de la tabla. No se admite agregar una columna a cualquier otra posición entre otras columnas.
  • No se pueden agregar columnas a las tablas que usan ROW_FORMAT=COMPRESSED.
  • No se pueden agregar columnas a las tablas que incluyen un índice FULLTEXT.
  • No se pueden agregar columnas a las tablas temporales. Las tablas temporales solo admiten ALGORITHM=COPY.
  • No se pueden agregar columnas a las tablas que residen en el tablespace del diccionario de datos.
  • Los límites de tamaño de fila no se evalúan al agregar una columna. Sin embargo, los límites de tamaño de fila se verifican durante las operaciones DML que insertan y actualizan filas en la tabla.

Se pueden agregar varias columnas en la misma instrucción ALTER TABLE.

Si no puede actualizar, considere pt-online-schema-change de Percona o un nuevo producto de la competencia gh-ost (que usa binlog).