Limitações no Banco de Dados do Azure para MySQL – Servidor Flexível
APLICA-SE A: Banco de Dados do Azure para MySQL – Servidor flexível
Este artigo descreve as limitações no Banco de Dados do Azure para MySQL – Servidor Flexível. Limitações gerais no mecanismo de banco de dados MySQL também se aplicam. Se você quiser saber mais sobre as limitações de recursos (computação, memória, armazenamento), confira o artigo sobre computação e armazenamento.
Parâmetros do Servidor
O Banco de Dados do Azure para MySQL – Servidor Flexível dá suporte ao ajuste dos valores dos parâmetros do servidor. Os valores mínimos e máximos de alguns parâmetros (por exemplo, max_connections
, join_buffer_size
, query_cache_size
) são determinados pela camada de computação e antes de calcular o tamanho do servidor. Para obter mais informações sobre esses limites, juntamente com valores mínimos e máximos para parâmetros de servidor, como max_connections
e innodb_buffer_pool_size
, confira o artigo sobre parâmetros de servidor.
Chaves primárias invisíveis geradas
Para MySQL versão 8.0 e posterior, as chaves primárias invisíveis geradas (GIPKs) são habilitadas por padrão para todas as instâncias do Banco de Dados do Azure para MySQL – Servidor Flexível.
Os servidores MySQL 8.0+ adicionam a coluna invisível my_row_id
às tabelas e uma chave primária nessa coluna, em que a tabela InnoDB é criada sem uma chave primária explícita. Por esse motivo, você não pode criar uma tabela que tenha uma coluna nomeada my_row_id
, a menos que a instrução de criação da tabela também especifique uma chave primária explícita. Saiba mais.
Por padrão, as GIPKs aparecem na saída de SHOW CREATE TABLE, SHOW COLUMNS e SHOW INDEX. As GiPKs também são visíveis nas tabelas INFORMATION_SCHEMA
COLUMNS e STATISTICS.
Para obter mais detalhes sobre GIPKs e seus casos de uso com replicação de dados, confira Replicar dados no Banco de Dados do Azure para MySQL – Servidor Flexível.
Etapas para desabilitar uma GIPK
Se você quiser desabilitar uma GIPK, há duas opções:
Altere o valor do parâmetro de servidor sql_generate_invisible_primary_key para
OFF
usando o portal do Azure ou a CLI do Azure.Conecte-se à instância do Banco de Dados do Azure para MySQL – Servidor Flexível e execute o seguinte comando:
mysql> SET sql_generate_invisible_primary_key=OFF;
lower_case_table_names
No Banco de Dados do Azure para MySQL – Servidor Flexível, o valor padrão de lower_case_table_names
é 1
para MySQL versão 5.7. Se você precisar ajustar essa configuração, recomendamos que você crie um tíquete de suporte. É importante entender que, depois de alterar o valor do parâmetro para 2
, revertê-lo para 1
não é permitido.
Para MySQL versão 8.0, é proibido alterar a configuração lower_case_table_names
depois que o servidor é inicializado. Saiba mais. No Banco de Dados do Azure para MySQL – Servidor Flexível, o valor padrão de lower_case_table_names
é 1
para MySQL versão 8.0. Se você quiser alterar esse parâmetro para 2
, sugerimos que você crie um servidor MySQL 5.7 e crie um tíquete de suporte para obter assistência para fazer a alteração. Posteriormente, se necessário, você poderá atualizar o servidor para a versão 8.0.
Mecanismos de armazenamento
O MySQL dá suporte a muitos mecanismos de armazenamento. As listas a seguir mostram quais mecanismos de armazenamento têm e não têm suporte no Banco de Dados do Azure para MySQL – Servidor Flexível.
Mecanismos com suporte
Mecanismos sem suporte
Privilégios e suporte à manipulação de dados
Muitos parâmetros e configurações de servidor podem degradar inadvertidamente o desempenho do servidor ou negar as propriedades ACID (atômico, consistente, isolado e durável) do servidor MySQL. Para manter a integridade do serviço e o contrato de nível de serviço em um nível de produto, o Banco de Dados do Azure para MySQL – Servidor Flexível não expõe várias funções.
O Banco de Dados do Azure para MySQL – Servidor Flexível não permite acesso direto ao sistema de arquivos subjacente. Não há suporte para alguns comandos de manipulação de dados.
Privilégios com suporte
Há suporte para
LOAD DATA INFILE
, mas você deve especificar o parâmetro[LOCAL]
e direcioná-lo para um caminho UNC (armazenamento do Azure montado por meio do SMB). Se você estiver usando o cliente MySQL versão 8.0 ou posterior, será necessário incluir o parâmetro-–local-infile=1
na cadeia de conexão.Para MySQL versão 8.0 e posterior, somente os seguintes privilégios dinâmicos têm suporte:
Privilégios sem suporte
A função de administrador de banco de dados (DBA) é restrita. Como alternativa, você pode usar a função do usuário administrador atribuído durante a criação de um novo servidor. Esta função permite que você execute a maioria das instruções de linguagem de definição de dados (DDL) e linguagem de manipulação de dados (DML).
Os seguintes privilégios estáticos são restritos:
Não há suporte para a concessão de privilégios BACKUP_ADMIN para fazer backups usando ferramentas de migração.
DEFINER
requer privilégiosSUPER
para criar e é restrito. Se você estiver importando dados usando um backup, remova manualmente os comandosCREATE DEFINER
ou use o comando--skip-definer
ao executar um backup mysqlpump.O banco de dados do sistema mysql é somente leitura e dá suporte a várias funcionalidades de plataforma como serviço (PaaS). Você não pode fazer alterações ao banco de dados do sistema
mysql
.Não há suporte para
SELECT ... INTO OUTFILE
no serviço.
Limitações funcionais
Alta disponibilidade com redundância de zona
Você pode definir uma configuração de alta disponibilidade com redundância de zona somente durante a criação do servidor. Esta configuração não tem suporte na camada de computação com capacidade de intermitência.
Rede
Não é possível alterar o método de conectividade após a criação do servidor. Se você criar o servidor com acesso privado (integração de rede virtual), ele não poderá ser alterado para acesso público (endereços IP permitidos) após a criação e vice-versa.
Operações de parada/início
Não há suporte para operações para interromper e iniciar o servidor com configurações de réplica de leitura (origem e réplicas).
Operações de dimensionamento
Não há suporte para a diminuição do armazenamento de servidor provisionado.
Upgrade da versão do servidor
Não há suporte para a migração automatizada entre versões de mecanismo de banco de dados principal. Se você quiser atualizar a versão principal, use um despejo e restauração em um servidor criado com a nova versão do mecanismo.
Restaurar um servidor
Com a restauração pontual, os novos servidores têm as mesmas configurações de computação e armazenamento do servidor da origem em que se baseiam. Você pode reduzir verticalmente a computação do servidor recém-restaurado depois de criar o servidor.
Comparações entre recursos
Nem todos os recursos disponíveis no Banco de Dados do Azure para MySQL – Servidor Único estão disponíveis no Banco de Dados do Azure para MySQL – Servidor Flexível.
Para obter a lista completa de comparações de recursos entre o Banco de Dados do Azure para MySQL – Servidor Único e o Banco de Dados do Azure para MySQL – Servidor Flexível, confira o artigo sobre como escolher a opção correta do MySQL Server no Azure.