Esta página fornece práticas recomendadas para obter o melhor desempenho, durabilidade e disponibilidade do Cloud SQL.
Se ocorrerem problemas com a sua instância do Cloud SQL, reveja o seguinte durante a resolução de problemas:
Configuração e administração de instâncias
Prática recomendada | Mais informações |
---|---|
Leia e siga as diretrizes operacionais para garantir que as suas instâncias estão abrangidas pelo ANS do Cloud SQL. | |
Configure um período de manutenção para a sua instância principal para controlar quando podem ocorrer atualizações disruptivas. | Consulte o artigo Período de manutenção. |
Se eliminar e recriar instâncias regularmente, use uma data/hora no ID da instância para aumentar a probabilidade de os novos IDs de instância serem utilizáveis. | |
Não inicie uma operação administrativa antes de a operação anterior estar concluída. |
As instâncias do Cloud SQL não aceitam novos pedidos de operação até concluírem a operação anterior. Se tentar iniciar uma nova operação prematuramente, o pedido de operação falha. Isto inclui reinícios de instâncias.
O estado da instância na Trusted Cloud consola não
reflete se uma operação está em execução. A marca de verificação verde indica
apenas que a instância está no estado |
Configure o armazenamento para acomodar a manutenção crítica da base de dados. |
Se a definição da instância ativar aumentos automáticos de armazenamento estiver desativada ou o limite de aumento automático de armazenamento estiver ativado, certifique-se de que tem, pelo menos, 20% de espaço disponível para acomodar quaisquer operações de manutenção críticas da base de dados que o Cloud SQL possa realizar. Para receber alertas quando o espaço em disco disponível for inferior a 20%, crie uma política de alertas baseada em métricas para a métrica de utilização do disco com uma posição acima do limite e um valor de 0,8. Para mais informações, consulte o artigo Crie políticas de alerta baseadas em métricas. |
Evite a utilização excessiva da CPU. |
Pode ver a percentagem de CPU disponível que a sua instância está a usar na página de detalhes da instância na Trusted Cloud consola. Para mais informações, consulte Métricas. Também pode monitorizar a utilização da CPU e receber alertas a um limite especificado através da criação de políticas de alerta de limite de métricas. Para evitar a utilização excessiva, pode aumentar o número de CPUs da sua instância. A alteração dos CPUs requer o reinício de uma instância. Se a sua instância já tiver o número máximo de CPUs, tem de dividir a base de dados em várias instâncias. |
Evite o esgotamento da memória. |
Quando procurar sinais de esgotamento da memória, deve usar principalmente a métrica de utilização. Também pode usar a métrica total_usage para observar a percentagem de memória disponível que a sua instância do Cloud SQL está a usar, incluindo a memória usada pelo contentor da base de dados e a memória alocada pela cache do sistema operativo. Ao observar a diferença entre as duas métricas, pode identificar a quantidade de memória usada pelos processos em comparação com a quantidade usada pela cache do sistema operativo. Pode reutilizar a memória nesta cache. Para prever problemas de falta de memória, verifique ambas as métricas e interprete-as em conjunto. Se as métricas forem elevadas, a instância pode ter pouca memória. Isto pode dever-se a uma configuração personalizada, ao facto de a instância ser demasiado pequena para a carga de trabalho ou a uma combinação destes fatores. Dimensione a sua instância do Cloud SQL para aumentar o tamanho da respetiva memória. A alteração do tamanho da memória da instância requer o reinício da instância. Se a sua instância já tiver o tamanho máximo de memória, tem de fragmentar a base de dados em várias instâncias. Para saber mais sobre a monitorização de ambas as métricas na Trusted Cloud consola, consulte o artigo Métricas. |
Segurança
Prática recomendada | Mais informações |
---|---|
Preferir IP privado | A menos que seja necessário o acesso ao IP público, é preferível usar o IP privado. Isto ajuda a minimizar as ligações de rede não autorizadas à sua base de dados. |
Evite 0.0.0.0/0 nas redes autorizadas | Evite incluir 0.0.0.0/0 em Redes autorizadas , uma vez que isto permite o acesso a partir da Internet global sem restrições. |
Evite redes autorizadas excessivamente grandes | Evite usar prefixos CIDR pequenos em Redes autorizadas , uma vez que isto permite o acesso a partir de um número potencialmente excessivo de anfitriões. Recomendamos um prefixo CIDR não inferior a /16 e, de preferência, superior a /19. |
Ative as políticas de palavras-passe | Usar políticas de palavras-passe de instâncias do MySQL ou PostgreSQL , especificar políticas de palavras-passe adequadas para a instância da base de dados para evitar a configuração de palavras-passe fracas, definir o tempo de validade e configurar o bloqueio de contas em tentativas de início de sessão falhadas. Isto é especialmente importante se estiver a configurar a sua instância para um IP público. |
Arquitetura de dados
Prática recomendada | Mais informações |
---|---|
Divida as instâncias grandes em instâncias mais pequenas, sempre que possível. | Quando possível, usar muitas instâncias do Cloud SQL mais pequenas é melhor do que uma instância grande. A gestão de uma instância grande e monolítica apresenta desafios que não são colocados por um grupo de instâncias mais pequenas. |
Implementação de aplicações
Prática recomendada | Mais informações |
---|---|
Use boas práticas de gestão de ligações, como a pool de ligações e a retirada exponencial. | A utilização destas técnicas melhora a utilização de recursos da sua aplicação e ajuda a manter-se dentro dos limites de ligação do Cloud SQL. Para mais informações e exemplos de código, consulte o artigo Gerir ligações à base de dados. |
Teste a resposta da sua aplicação a atualizações de manutenção, que podem ocorrer em qualquer altura durante o período de manutenção. | Experimente a manutenção self-service para simular uma atualização de manutenção. Durante a manutenção, a sua instância fica indisponível durante um breve período e as ligações existentes são interrompidas. Os implementos de manutenção de testes dão-lhe uma melhor compreensão de como a sua aplicação processa a manutenção agendada e a rapidez com que o sistema consegue recuperar. |
Teste a resposta da sua aplicação a comutações por falha, que podem ocorrer em qualquer altura. | Pode iniciar manualmente uma comutação por falha através da Trusted Cloud consola, da CLI gcloud ou da API. Consulte a secção Iniciar comutação por falha. |
Evite transações grandes. | Mantenha as transações pequenas e curtas. Se for necessária uma atualização de base de dados grande, faça-a em várias transações mais pequenas em vez de numa transação grande. |
Se estiver a usar o proxy Auth do Cloud SQL, certifique-se de que está a usar a versão mais atualizada. | Consulte o artigo Manter o proxy Auth do Cloud SQL atualizado. |
Importação e exportação de dados
Prática recomendada | Mais informações |
---|---|
Acelere as importações para tamanhos de instâncias pequenos. | Para instâncias pequenas, pode aumentar temporariamente a CPU e a RAM de uma instância para melhorar o desempenho quando importa grandes conjuntos de dados. |
Se estiver a exportar dados para importação no Cloud SQL, certifique-se de que usa o procedimento adequado. | Consulte o artigo Exportar dados de um servidor de base de dados gerido externamente. |
Cópia de segurança e recuperação
Prática recomendada | Mais informações |
---|---|
Proteja os seus dados com a funcionalidade adequada do Cloud SQL. |
As cópias de segurança e as exportações são formas de fornecer redundância e proteção de dados. Cada uma protege contra cenários diferentes e complementa-se numa estratégia de proteção de dados robusta. As cópias de segurança são simples e oferecem uma forma de restaurar os dados na sua instância para o estado em que se encontravam no momento em que fez a cópia de segurança. No entanto, as cópias de segurança têm algumas limitações. Se eliminar a instância, as cópias de segurança também são eliminadas. Não pode fazer uma cópia de segurança de uma única base de dados ou tabela. Além disso, se a região onde a instância está localizada estiver indisponível, não pode restaurar a instância a partir dessa cópia de segurança, mesmo numa região disponível. As exportações demoram mais tempo a criar, porque é criado um ficheiro externo no Cloud Storage que pode ser usado para recriar os seus dados. As exportações não são afetadas se eliminar a instância. Além disso, pode exportar apenas uma única base de dados ou até uma tabela, consoante o formato de exportação que escolher. |
Proteja a sua instância e cópias de segurança contra eliminação acidental. | Uma instância do Cloud SQL que criar na Trusted Cloud consola ou através do Terraform ativa a prevenção de eliminação acidental por predefinição. Use a funcionalidade de exportação no Cloud SQL para exportar os seus dados para proteção adicional. Use o Cloud Scheduler com a API REST para automatizar a gestão de exportações. Para cenários mais avançados, use o Cloud Scheduler com funções do Cloud Run para automatização. |
O que se segue?
Para mais informações sobre as práticas gerais do motor de base de dados, consulte:
- Práticas recomendadas gerais para o MySQL
- Práticas recomendadas gerais para o PostgreSQL
- Práticas recomendadas gerais para o SQL Server