Crie réplicas de leitura

Esta página descreve como criar uma réplica de leitura para uma instância do Cloud SQL.

Uma réplica de leitura é uma cópia da instância principal que reflete as alterações à instância principal quase em tempo real, em circunstâncias normais. Pode usar uma réplica de leitura para descarregar pedidos de leitura ou tráfego de estatísticas da instância principal.

Além disso, para recuperação de desastres, pode fazer uma migração regional. Se uma réplica for uma réplica entre regiões, pode fazer uma comutação por falha para outra região; especificamente, pode promover uma réplica para uma instância autónoma (neste caso, as réplicas existentes não considerariam essa instância como principal).

Para mais informações sobre o funcionamento da replicação, consulte o artigo Replicação no Cloud SQL.

Antes de começar

Se estiver a criar a primeira réplica para esta instância, certifique-se de que a instância cumpre os requisitos das instâncias principais. Saiba mais.

Crie uma réplica de leitura

Seguem-se os passos para criar uma réplica de leitura.

Consola

  1. Na Trusted Cloud consola, aceda à página Instâncias do Cloud SQL.

    Aceda a Instâncias do Cloud SQL

  2. Encontre a instância para a qual quer criar uma réplica e, de seguida, abra o menu more actions junto à ficha.
  3. Selecione Criar réplica de leitura.

    Se não vir essa escolha, significa que a instância é uma réplica. Não pode criar uma réplica de uma réplica.

  4. Na secção Personalize a sua instância da página, atualize as definições da sua réplica. Comece por clicar em Mostrar opções de configuração para apresentar os grupos de definições. Em seguida, expanda os grupos pretendidos para rever e personalizar as definições. Um Resumo de todas as opções que selecionar é apresentado à direita. A personalização destas definições é opcional. As predefinições são atribuídas em todos os casos em que não são feitas personalizações.

    Para mais detalhes sobre cada definição, consulte a página Acerca das definições da instância.

    Por exemplo, para permitir que outros serviços Trusted Cloud by S3NS , como o BigQuery, acedam a dados no Cloud SQL e façam consultas a estes dados através de uma associação interna, expanda o grupo Associações e, de seguida, desmarque a caixa de verificação IP público.

  5. Clique em Criar réplica.

    O Cloud SQL cria uma cópia de segurança, se necessário, e cria a réplica. Regressa à página da instância para o servidor principal.

gcloud

Crie a réplica:

gcloud sql instances create REPLICA_NAME \
--master-instance-name=MASTER_INSTANCE_NAME

Se necessário, pode especificar um tamanho de nível diferente através do parâmetro --tier. Além disso, se estiver a criar uma réplica a partir de uma instância principal e a edição do Cloud SQL para a instância for Enterprise ou Enterprise Plus, versão 16 e posterior, não tem de especificar um valor para este parâmetro. A réplica herda o tipo de máquina da instância principal.

Pode especificar uma região diferente através do parâmetro --region.

Se a instância principal tiver apenas um endereço IP interno e quiser permitir que outros Trusted Cloud by S3NS serviços, como o BigQuery, acedam aos dados no Cloud SQL e façam consultas a estes dados através de uma ligação interna, adicione o parâmetro --enable-google-private-path ao comando.

Tem de criar a réplica na mesma rede VPC que a instância principal. Também pode especificar um allocated-ip-range-name nessa rede de VPC. Se não for especificado nenhum intervalo, a réplica é criada num intervalo aleatório.

Terraform

Para criar uma réplica de leitura, use um recurso do Terraform.

resource "google_sql_database_instance" "read_replica" {
  name                 = "postgres-replica-instance-name"
  master_instance_name = google_sql_database_instance.primary.name
  region               = "europe-west4"
  database_version     = "POSTGRES_14"

  settings {
    tier              = "db-custom-2-7680"
    availability_type = "ZONAL"
    disk_size         = "100"
  }
  # set `deletion_protection` to true, will ensure that one cannot accidentally delete this instance by
  # use of Terraform whereas `deletion_protection_enabled` flag protects this instance at the GCP level.
  deletion_protection = false
}

REST v1

Use o método insert do recurso instances para criar a réplica de leitura. As propriedades region e databaseVersion têm de ser iguais às da base de dados principal.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • project-id: o ID do projeto
  • database-version: string da versão enum (por exemplo, POSTGRES_12)
  • primary-instance-name: o nome da instância principal
  • primary-instance-region: a região da instância principal
  • replica-region: a região da instância de réplica
  • replica-name: o nome da instância de réplica
  • machine-type: string enum do tipo de máquina. Por exemplo: "db-custom-1-3840"
  • private-network: A rede autorizada que está a adicionar ou a selecionar para criar uma ligação privada.

Pode usar o campo sqlNetworkArchitecture para aplicar a utilização da nova arquitetura de rede à instância no momento da criação, mesmo que o projeto não esteja totalmente atualizado. Para mais detalhes sobre a nova arquitetura de rede e as respetivas implicações, consulte os artigos Atualize uma instância para a nova arquitetura de rede e Atribua um intervalo de endereços IP.

Método HTTP e URL:

POST https://sqladmin.googleapis.com/v1/projects/project-id/instances

Corpo JSON do pedido:

{
  "masterInstanceName": "primary-instance-name",
  "project": "project-id",
  "databaseVersion": "database-version",
  "name": "replica-name",
  "region": "replica-region",
  "settings":
  {
    "tier": "machine-type",
    "settingsVersion": 0,
    "ipConfiguration": {
    object (IpConfiguration)
  },
  {
  "ipv4Enabled": false,
  "privateNetwork": private-network,
  "requireSsl": boolean,
  "authorizedNetworks": [
    {
      object (AclEntry)
    }
  ],
  "allocatedIpRange": string
    }
  },
  "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE"
}

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

REST v1beta4

Use o método insert do recurso instances para criar a réplica de leitura. As propriedades region e databaseVersion têm de ser iguais às da base de dados principal.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • project-id: o ID do projeto
  • database-version: string da versão enum (por exemplo, POSTGRES_12)
  • primary-instance-name: o nome da instância principal
  • primary-instance-region: a região da instância principal
  • replica-region: a região da instância de réplica
  • replica-name: o nome da instância de réplica
  • machine-type: string enum do tipo de máquina. Por exemplo: "db-custom-1-3840"
  • private-network: A rede autorizada que está a adicionar ou a selecionar para criar uma ligação privada.

Pode usar o campo sqlNetworkArchitecture para aplicar a utilização da nova arquitetura de rede à instância no momento da criação, mesmo que o projeto não esteja totalmente atualizado. Para mais detalhes sobre a nova arquitetura de rede e as respetivas implicações, consulte os artigos Atualize uma instância para a nova arquitetura de rede e Atribua um intervalo de endereços IP.

Método HTTP e URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances

Corpo JSON do pedido:

{
  "masterInstanceName": "primary-instance-name",
  "project": "project-id",
  "databaseVersion": "database-version",
  "name": "replica-name",
  "region": "replica-region",
  "settings":
  {
    "tier": "machine-type",
    "settingsVersion": 0,
    
    "ipConfiguration": {
    object (IpConfiguration)
  },
  {
  "ipv4Enabled": false,
  "privateNetwork": private-network,
  "requireSsl": boolean,
  "authorizedNetworks": [
    {
      object (AclEntry)
    }
  ],
  "allocatedIpRange": string
    }
    
  },
  "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE"
}

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

Crie uma réplica de leitura de uma instância com o Private Service Connect ativado

Para criar uma réplica de leitura de uma instância com o Private Service Connect ativado, use a CLI gcloud ou a API. Pode criar esta réplica na mesma região ou numa região diferente da instância principal (réplica de leitura entre regiões).

A réplica de leitura não pode ser replicada a partir de uma instância com um tipo de conetividade diferente. Por exemplo, uma instância com o Private Service Connect ativado só pode ser replicada a partir de outra instância do Private Service Connect. Também não pode ser replicada a partir de uma instância que suporte ligações IP externas ou de uma instância configurada com acesso a serviços privados.

gcloud

Para criar uma réplica de leitura de uma instância, use o comando gcloud sql instances create:

gcloud sql instances create REPLICA_INSTANCE_NAME \
--master-instance-name=PRIMARY_INSTANCE_NAME \
--project=PROJECT_ID \
--region=REGION_NAME \
--enable-private-service-connect \
--allowed-psc-projects=ALLOWED_PROJECTS \
--availability-type=AVAILABILITY_TYPE \
--no-assign-ip

Faça as seguintes substituições:

  • REPLICA_INSTANCE_NAME: o nome da instância de réplica.
  • PRIMARY_INSTANCE_NAME: o nome da instância principal.
  • PROJECT_ID: o ID ou o número do projeto do Trusted Cloud projeto que contém a instância.
  • REGION_NAME: o nome da região da instância da réplica.
  • ALLOWED_PROJECTS: uma lista de IDs ou números de projetos permitidos, separados por vírgulas. Se um projeto não estiver incluído nesta lista, não pode usá-lo para criar uma instância e ativar o Private Service Connect para o mesmo.

    O Cloud SQL não copia os projetos permitidos para a instância principal para a réplica. Para cada réplica, tem de criar um ponto final do Private Service Connect. Se estiver a usar o proxy Auth do Cloud SQL ou os conetores de linguagem do Cloud SQL, crie uma zona DNS e um registo DNS para as réplicas.

  • AVAILABILITY_TYPE: ative a elevada disponibilidade para a instância. Para este parâmetro, especifique um dos seguintes valores:
    • REGIONAL: ative a alta disponibilidade. Esta opção é recomendada para instâncias de produção. A instância comuta para outra zona na região selecionada.
    • ZONAL: não oferecem capacidade de comutação por falha. Este é o valor predefinido.

    Para mais informações sobre como definir e remover a elevada disponibilidade para instâncias, consulte os artigos Configure uma instância existente para elevada disponibilidade e Desative a elevada disponibilidade para uma instância.

REST v1

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PRIMARY_INSTANCE_NAME: o nome da instância principal.
  • PROJECT_ID: o ID ou o número do projeto do Trusted Cloud projeto que contém a instância.
  • REPLICA_INSTANCE_NAME: o nome da instância de réplica.
  • REGION_NAME: o nome da região da instância da réplica.
  • MACHINE_TYPE: o tipo de máquina da instância.
  • AVAILABILITY_TYPE: ative a elevada disponibilidade para a instância. Para este parâmetro, especifique um dos seguintes valores:
    • REGIONAL: ative a alta disponibilidade. Esta opção é recomendada para instâncias de produção. A instância comuta para outra zona na região selecionada.
    • ZONAL: não oferecem capacidade de comutação por falha. Este é o valor predefinido.

    Para mais informações sobre como definir e remover a elevada disponibilidade para instâncias, consulte os artigos Configure uma instância existente para elevada disponibilidade e Desative a elevada disponibilidade para uma instância.

  • ALLOWED_PROJECTS: uma lista de IDs ou números de projetos permitidos, separados por vírgulas. Se um projeto não estiver incluído nesta lista, não pode usá-lo para criar uma instância e ativar o Private Service Connect para o mesmo.

    O Cloud SQL não copia os projetos permitidos para a instância principal para a réplica. Para cada réplica, tem de criar um ponto final do Private Service Connect. Se estiver a usar o proxy Auth do Cloud SQL ou os conectores de linguagem do Cloud SQL, tem de criar uma zona DNS e um registo DNS para as réplicas.

Método HTTP e URL:

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances

Corpo JSON do pedido:

{
  "masterInstanceName": "PRIMARY_INSTANCE_NAME",
  "project": "PROJECT_ID",
  "databaseVersion": "POSTGRES_13",
  "name": "REPLICA_INSTANCE_NAME",
  "region": "REGION_NAME",
  "kind": "sql#instance",
  "settings":
  {
    "tier": "MACHINE_TYPE",
    "availabilityType": "AVAILABILITY_TYPE",
    "settingsVersion": 0,
    "ipConfiguration": {
      "ipv4Enabled": false,
      "pscConfig": {
        "allowedConsumerProjects": [ALLOWED_PROJECTS],
        "pscEnabled": true
      }
    },
    "kind": "sql#settings",
    "pricingPlan": "PER_USE",
    "replicationType": "ASYNCHRONOUS",
    "tier": "MACHINE_TYPE"
  }
}

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/REPLICA_INSTANCE_NAME",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "CREATE_REPLICA",
  "name": "OPERATION_ID",
  "targetId": "REPLICA_INSTANCE_NAME",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

REST v1beta4

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PRIMARY_INSTANCE_NAME: o nome da instância principal.
  • PROJECT_ID: o ID ou o número do projeto do Trusted Cloud projeto que contém a instância.
  • REPLICA_INSTANCE_NAME: o nome da instância de réplica.
  • REGION_NAME: o nome da região da instância da réplica.
  • MACHINE_TYPE: o tipo de máquina da instância.
  • AVAILABILITY_TYPE: ative a elevada disponibilidade para a instância. Para este parâmetro, especifique um dos seguintes valores:
    • REGIONAL: ative a alta disponibilidade. Esta opção é recomendada para instâncias de produção. A instância comuta para outra zona na região selecionada.
    • ZONAL: não oferecem capacidade de comutação por falha. Este é o valor predefinido.

    Para mais informações sobre como definir e remover a elevada disponibilidade para instâncias, consulte os artigos Configure uma instância existente para elevada disponibilidade e Desative a elevada disponibilidade para uma instância.

  • ALLOWED_PROJECTS: uma lista de IDs ou números de projetos permitidos, separados por vírgulas. Se um projeto não estiver incluído nesta lista, não pode usá-lo para criar uma instância e ativar o Private Service Connect para o mesmo.

    O Cloud SQL não copia os projetos permitidos para a instância principal para a réplica. Para cada réplica, tem de criar um ponto final do Private Service Connect. Se estiver a usar o proxy Auth do Cloud SQL ou os conectores de linguagem do Cloud SQL, tem de criar uma zona DNS e um registo DNS para as réplicas.

Método HTTP e URL:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances

Corpo JSON do pedido:

{
  "masterInstanceName": "PRIMARY_INSTANCE_NAME",
  "project": "PROJECT_ID",
  "databaseVersion": "POSTGRES_13",
  "name": "REPLICA_INSTANCE_NAME",
  "region": "REGION_NAME",
  "kind": "sql#instance",
  "settings":
  {
    "tier": "MACHINE_TYPE",
    "availabilityType": "AVAILABILITY_TYPE",
    "settingsVersion": 0,
    "ipConfiguration": {
      "ipv4Enabled": false,
      "pscConfig": {
        "allowedConsumerProjects": [ALLOWED_PROJECTS],  
        "pscEnabled": true
      }
    },
    "kind": "sql#settings",
    "pricingPlan": "PER_USE",
    "replicationType": "ASYNCHRONOUS",
    "tier": "MACHINE_TYPE"
  }
}

Para enviar o seu pedido, expanda uma destas opções:

Deve receber uma resposta JSON semelhante à seguinte:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/REPLICA_INSTANCE_NAME",
  "status": "PENDING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "operationType": "CREATE_REPLICA",
  "name": "OPERATION_ID",
  "targetId": "REPLICA_INSTANCE_NAME",
  "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

Configure réplicas de leitura para a autenticação de base de dados IAM

Se ativar a flag cloudsql.iam_authentication na instância principal, o Cloud SQL para PostgreSQL ativa-a automaticamente nas réplicas de leitura. No entanto, se não ativar esta flag na instância principal, o Cloud SQL para PostgreSQL não a ativa nas réplicas de leitura. Não pode usar as réplicas para a autenticação da base de dados do IAM.

Para configurar uma réplica de leitura para a autenticação da base de dados IAM:

  1. Na Trusted Cloud consola, aceda à página Instâncias do Cloud SQL.

    Aceda a Instâncias do Cloud SQL

  2. Para abrir a página Vista geral de uma instância, clique no nome da instância.
  3. No mosaico Configuração, procure a flag cloudsql.iam_authentication. Se a flag não estiver na lista, não é necessário ativá-la na réplica de leitura. Se a flag estiver na lista, tem de a ativar na réplica de leitura. Se precisar de ativar a flag na réplica de leitura, avance para o passo seguinte.
  4. Selecione Réplicas no menu de navegação SQL.
  5. Clique no nome da réplica que quer editar.
  6. Clique em Edit.
  7. Na secção Opções de configuração, expanda Flags.
  8. Selecione + Adicionar item.
  9. Introduza cloudsql.iam_authentication para o nome da flag. Certifique-se de que a opção Ativado está selecionada para esta sinalização.
  10. Clique em Guardar.

Crie réplicas em cascata

Esta secção descreve como criar e gerir réplicas em cascata.

Para informações sobre o funcionamento das réplicas em cascata, consulte o artigo Réplicas em cascata.

Passos para criar uma réplica em cascata

Consola

  1. Na Trusted Cloud consola, aceda à página Instâncias do Cloud SQL.

    Aceda a Instâncias do Cloud SQL

  2. Clique no separador Réplicas para a réplica que vai atuar como principal para a réplica que quer criar.
  3. Clique em Criar réplica.
  4. Na página Criar réplica de leitura, atualize o ID da instância e quaisquer outras opções de configuração, incluindo o nome, a região e a zona.
  5. Clique em Criar.

    O Cloud SQL cria uma réplica. Regressa à página da instância da réplica principal.

  6. Siga os passos 4 a 6 para cada nova réplica em cascata que quer criar.

gcloud

  1. Crie a nova réplica especificando a réplica principal como a instância principal através da flag --master-instance-name:
  2. gcloud sql instances create REPLICA_NAME \
          --master-instance-name=PARENT_REPLICA_NAME \
    Substitua o seguinte:
    • REPLICA_NAME: o ID exclusivo da réplica que está a criar
    • PARENT_REPLICA_NAME: o nome da réplica principal
  3. Depois de criar a réplica em cascata, pode ver que as alterações feitas à instância principal são replicadas em todas as réplicas na cadeia de réplicas em cascata.

curl

  1. Para criar uma réplica na réplica principal, edite o seguinte exemplo de código JSON e guarde-o num ficheiro denominado request.json:
    {
      "masterInstanceName": "PARENT_REPLICA_NAME",
      "project": "PROJECT_ID",
      "name": "REPLICA_NAME",
      "region": "REPLICA_REGION",
      "settings":
        {
          "tier": "MACHINE_TYPE",
        }
    }
  2. Execute o seguinte comando:
    curl -X POST
    -H "Authorization: Bearer "$(gcloud auth print-access-token)
    -H "Content-Type: application/json; charset=utf-8"
    -d @request.json
    "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances"

Resolver problemas

Problema Resolução de problemas
A réplica de leitura não começou a ser replicada na criação. Provavelmente, existe um erro mais específico nos ficheiros de registo. Inspeccione os registos nos Registos na nuvem para encontrar o erro real.
Não é possível criar uma réplica de leitura: erro invalidFlagValue. Uma das flags no pedido é inválida. Pode ser uma flag que forneceu explicitamente ou uma que foi definida para um valor predefinido.

Primeiro, verifique se o valor da flag max_connections é superior ou igual ao valor no registo principal.

Se a flag max_connections estiver definida corretamente, inspecione os registos no Cloud Logging para encontrar o erro real.

Não é possível criar uma réplica de leitura: erro desconhecido. Provavelmente, existe um erro mais específico nos ficheiros de registo. Inspeccione os registos nos Registos na nuvem para encontrar o erro real.

Se o erro for: set Service Networking service account as servicenetworking.serviceAgent role on consumer project, desative e reative o Service Networking API. Esta ação cria a conta de serviço necessária para continuar com o processo.

O disco está cheio. O tamanho do disco da instância principal pode ficar cheio durante a criação da réplica. Edite a instância principal para a atualizar para um tamanho de disco maior.
O espaço em disco aumenta significativamente. Um espaço que não é usado ativamente para acompanhar dados faz com que o PostgreSQL mantenha os segmentos WAL indefinidamente, o que faz com que o espaço em disco aumente indefinidamente. Se usar as funcionalidades de replicação e descodificação lógica no Cloud SQL, os slots de replicação são criados e eliminados automaticamente. Pode detetar as ranhuras de replicação não usadas consultando a vista do sistema pg_replication_slots e filtrando pela coluna active. Pode eliminar as posições não usadas para remover segmentos WAL através do comando pg_drop_replication_slot.
A instância da réplica está a usar demasiada memória. A réplica usa memória temporária para colocar em cache operações de leitura pedidas com frequência, o que pode fazer com que use mais memória do que a instância principal.

Reinicie a instância da réplica para recuperar o espaço de memória temporário.

A replicação foi interrompida. O limite máximo de armazenamento foi atingido e o aumento automático do armazenamento não está ativado.

Edite a instância para ativar a autorização automatic storage increase.

O atraso de replicação é consistentemente elevado. A carga de escrita é demasiado elevada para a réplica processar. O atraso de replicação ocorre quando o segmento SQL numa réplica não consegue acompanhar o segmento de E/S. Alguns tipos de consultas ou cargas de trabalho podem causar um atraso de replicação elevado temporário ou permanente para um determinado esquema. Algumas das causas típicas do atraso na replicação são:
  • Consultas lentas na réplica. Encontre-os e corrija-os.
  • Todas as tabelas têm de ter uma chave exclusiva/principal. Cada atualização numa tabela sem uma chave única/primária provoca análises completas da tabela na réplica.
  • As consultas como DELETE ... WHERE field < 50000000 causam um atraso na replicação com a replicação baseada em linhas, uma vez que um grande número de atualizações é acumulado na réplica.

Algumas soluções possíveis incluem:

  • Edite a instância para aumentar o tamanho da réplica.
  • Reduza a carga na base de dados.
  • Envie tráfego de leitura para a réplica de leitura.
  • Indexe as tabelas.
  • Identifique e corrija consultas de escrita lentas.
  • Recrie a réplica.
Erros ao recriar índices no PostgreSQL 9.6. Recebe um erro do PostgreSQL a informar que tem de reconstruir um índice específico. Esta ação só pode ser realizada na instância principal. Se criar uma nova instância de réplica, recebe novamente o mesmo erro em breve. Os índices de hash não são propagados para réplicas em versões do PostgreSQL inferiores a 10.

Se tiver de usar índices de hash, atualize para o PostgreSQL 10 ou superior. Caso contrário, se também quiser usar réplicas, não use índices de hash no PostgreSQL 9.6.

A consulta na instância principal está sempre em execução. Depois de criar uma réplica, espera-se que a consulta SELECT * from pg_stat_activity where state = 'active' and pid = XXXX and username = 'cloudsqlreplica' seja executada continuamente na sua instância principal.
A criação de réplicas falha devido ao limite de tempo. As transações não comprometidas de longa duração na instância principal podem fazer com que a criação de réplicas de leitura falhe.

Recrie a réplica depois de parar todas as consultas em execução.

Se a instância principal e a réplica tiverem tamanhos de vCPU diferentes, podem ocorrer problemas de desempenho das consultas, uma vez que o otimizador de consultas tem em conta os tamanhos de vCPU.

Para resolver este problema, conclua os seguintes passos:

  1. Ative o sinalizador log_duration e defina o parâmetro log_statement como ddl. Isto fornece-lhe as consultas e o tempo de execução na base de dados. No entanto, dependendo da sua carga de trabalho, isto pode causar problemas de desempenho.
  2. Na instância principal e na réplica de leitura, execute explain analyze para as consultas.
  3. Compare o plano de consulta e verifique se existem diferenças.

Se for uma consulta específica, modifique-a. Por exemplo, pode alterar a ordem das associações para ver se obtém um melhor desempenho.

O que se segue?