Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

consequências da alteração do mecanismo de armazenamento mysql enquanto o aplicativo está sendo executado em produção


Qualquer alteração feita com ALTER TABLE que requer uma cópia de tabela irá bloquear a tabela. Este é o problema mais significativo para aplicativos. A tabela ficará inacessível a partir de consultas por qualquer aplicativo.

A duração desse bloqueio depende do tamanho da tabela e do desempenho do seu servidor e da outra carga em que o servidor está.

Você pode fazer alterações com tempo de inatividade mínimo se usar uma ferramenta de alteração de esquema online como pt-online-schema-change .

Outra estratégia é fazer alterações nas tabelas em uma instância de banco de dados de réplica. Não há problema em as tabelas terem um mecanismo de armazenamento diferente em uma réplica do que no mestre. Você não se importa com o bloqueio de tabelas, isso apenas fará com que a replicação fique atrasada e, quando as alterações forem feitas, a replicação deverá acompanhar. Quando tudo estiver pronto, você poderá alternar seu aplicativo para usar a réplica e, em seguida, encerrar a instância de banco de dados mestre anterior.