Atualizar atributos do cluster de banco de dados

É possível mudar os seguintes atributos do cluster de banco de dados com o console do GDC ou a CLI gdcloud:

  • Senha do banco de dados para o usuário administrador
  • Conexões externas (ativadas/desativadas)
  • Nível de disponibilidade (somente AlloyDB Omni e PostgreSQL)
  • Backup ativado e dias de retenção de backup
  • Sinalizações do banco de dados
  • CPU, memória ou armazenamento alocado para o cluster de banco de dados

Para informações sobre como modificar um atributo, consulte o fluxo de trabalho correspondente ao tipo de atributo que você quer atualizar:

Console

Alta disponibilidade

Para clusters de banco de dados do AlloyDB Omni e do PostgreSQL, ative ou desative a alta disponibilidade na mesma zona. Consulte a seção Configurar alta disponibilidade para mais informações.

Proteção de dados

Para todos os tipos de cluster de banco de dados, é possível ativar ou desativar a proteção de dados:

  1. Acesse Proteção de dados e clique em Editar Editar para acessar o formulário de configurações de proteção de dados. Se os backups automáticos estiverem ativados, você também poderá configurar por quanto tempo eles serão retidos.
  2. Depois de fazer as mudanças, clique em Salvar para aplicar as atualizações ao cluster de banco de dados.

Conectividade

Para todos os tipos de cluster de banco de dados, é possível escolher se o cluster pode ser acessado apenas de dentro do projeto do GDC ou se ele também pode ser acessado de fora do projeto:

  1. Acesse Conectividade e clique em Editar Editar.
  2. Atualize as configurações de conectividade.
  3. Clique em Salvar para aplicar as alterações.

Instâncias

Para todos os tipos de cluster de banco de dados, é possível editar as propriedades da instância principal:

  1. Acesse Instância principal e clique em editar Editar.
  2. Escolha entre as configurações Alto desempenho, Padrão, Mínimo ou Personalizado. Com a opção Personalizada, você escolhe o número de CPUs, a memória e o armazenamento da instância principal.

  3. Para atualizar a CPU, a memória ou o armazenamento da instância principal, é necessário reiniciar. Selecione Salvar e reiniciar para aplicar as mudanças.

Para todos os tipos de cluster de banco de dados, esse formulário também permite adicionar, modificar ou remover flags de banco de dados. O conjunto de flags disponíveis é predeterminado pelo GDC. Consulte a seção Configurar flags do banco de dados para mais informações.

CLI gdcloud

Use o comando a seguir para atualizar um cluster de banco de dados: sh gdcloud database clusters update CLUSTER_NAME [options]

Substitua:

  • CLUSTER_NAME com o nome do cluster de banco de dados a ser atualizado.

Para conferir a lista completa de opções, consulte a referência de comando ou execute sh gdcloud database clusters update --help

API

Proteção de dados

Para todos os tipos de cluster de banco de dados, é possível ativar o recurso de proteção de dados criando um recurso BackupPlan para esse cluster.

apiVersion: DBENGINE_NAME.dbadmin.gdc.goog/v1
kind: BackupPlan
metadata:
  name: DBCLUSTER_NAME-backupplan
  namespace: USER_PROJECT
spec:
  dbclusterRef: DBCLUSTER_NAME
  backupRetainDays: RETENTION_DAYS

Substitua as seguintes variáveis:

  • DBENGINE_NAME: o nome do mecanismo de banco de dados. É um dos campos alloydbomni,postgresql ou oracle.
  • DBCLUSTER_NAME: o nome do cluster de banco de dados para ativar a proteção de dados.
  • USER_PROJECT: o nome do projeto do usuário em que o cluster de banco de dados será criado.
  • RETENTION_DAYS: o número de dias em que o operador do AlloyDB Omni retém esse backup. Ele precisa ser um número inteiro entre 1 e 90.

Também é possível configurar as opções de proteção de dados, como dias de retenção, editando o recurso BackupPlan correspondente.

Para desativar a proteção de dados de um cluster de banco de dados, exclua o recurso BackupPlan correspondente criado anteriormente.

Configurar flags de bancos de dados

As imagens de banco de dados fornecidas com o GDC vêm com configurações padrão. No entanto, é possível personalizar o mecanismo de banco de dados padrão para atender aos requisitos dos seus aplicativos. Os clusters de banco de dados oferecem flags predefinidas que podem ser definidas usando o console do GDC ou a CLI gdcloud:

Console

  1. No menu de navegação, selecione Serviço de banco de dados.

  2. Na lista de clusters de banco de dados, clique no cluster em que você quer configurar flags de banco de dados.

  3. Na seção Instâncias no cluster de banco de dados, clique em Editar principal.

    Edite o cluster de banco de dados principal para configurar flags.

  4. Na seção Flags, clique em Adicionar um flag de banco de dados.

  5. Escolha a flag e insira o valor. Se o valor inserido não for válido, o console do GDC vai dar instruções sobre como atender ao intervalo ou tipo de valor obrigatório.

  6. Clique em Concluído.

  7. Para definir a configuração, clique em Salvar. Para que algumas flags entrem em vigor, é necessário reiniciar o cluster de banco de dados. Nesse caso, clique em Salvar e reiniciar.

  8. Para confirmar que a nova flag está definida, volte à seção Instâncias no cluster de banco de dados e verifique se a nova flag e o valor estão visíveis.

Para editar as flags do banco de dados, volte à seção Flags e modifique as flags atuais. Passe o cursor sobre um componente de flag e clique no ícone Excluir para remover uma flag do banco de dados.

gdcloud

É possível configurar novas flags de banco de dados para seu cluster ou redefinir todas as flags atuais para os valores padrão:

  • Para configurar uma flag de banco de dados para seu cluster, execute:

    gdcloud database clusters update CLUSTER_NAME \
        --database-flags DB_FLAGS
    

    Substitua:

    • CLUSTER_NAME: o nome do cluster de banco de dados.
    • DB_FLAGS: a lista separada por vírgulas de flags de banco de dados a serem definidas no banco de dados em execução no cluster de banco de dados. Cada flag e valor do banco de dados é definido como um par de chave-valor. Flags sem um valor podem ser definidas sem uma string após o caractere =.

    Por exemplo, o comando a seguir define várias flags de banco de dados para o test-db-cluster:

    gdcloud database clusters update test-db-cluster \
        --database-flags max_allowed_packet=55555,skip_grant_tables=,log_output=1
    

    Para uma lista de flags de banco de dados disponíveis, consulte Flags de banco de dados disponíveis.

  • Para redefinir todas as flags do banco de dados para as configurações padrão, execute:

    gdcloud database clusters update CLUSTER_NAME --clear-database-flags
    

    Substitua CLUSTER_NAME pelo nome do cluster de banco de dados.

API

  • Para configurar flags de banco de dados para seu cluster de banco de dados, execute:

      kubectl patch dbcluster.DBENGINE_NAME.dbadmin.gdc.goog DBCLUSTER_NAME -p '{"spec":{"primarySpec": {"parameters": DB_FLAGS}}}' --type=merge -n USER_PROJECT
    

    Substitua as seguintes variáveis:

    • DBENGINE_NAME: o nome do mecanismo de banco de dados. Um dos valores alloydbomni, postgresql ou oracle.
    • DBCLUSTER_NAME: o nome do cluster de banco de dados.
    • USER_PROJECT: o nome do projeto do usuário em que o cluster de banco de dados foi criado.
    • DB_FLAGS: os parâmetros de configuração do banco de dados a serem adicionados ou atualizados. Esse objeto precisa estar no formato JSON de pares de chave-valor, em que as chaves são os nomes dos parâmetros do banco de dados e os valores são as respectivas configurações. Por exemplo, o comando a seguir define várias flags de banco de dados:
    "autovacuum": "on", "autovacuum_analyze_threshold": "2147483647", "dbs.enable_anon": "on"
    

    Para uma lista de flags de banco de dados disponíveis, consulte Flags de banco de dados disponíveis.

  • Para redefinir todas as flags do banco de dados para as configurações padrão, execute:

    kubectl patch dbcluster.DBENGINE_NAME.dbadmin.gdc.goog DBCLUSTER_NAME --type=json -p='[{"op": "remove", "path": "/spec/primarySpec/parameters"}]' -n USER_PROJECT
    

    Substitua as seguintes variáveis:

    • DBENGINE_NAME: o nome do mecanismo de banco de dados. Um dos valores alloydbomni, postgresql ou oracle.
    • DBCLUSTER_NAME: o nome do cluster de banco de dados.
    • USER_PROJECT: o nome do projeto do usuário em que o cluster de banco de dados foi criado.

Flags de banco de dados disponíveis

As flags de banco de dados disponíveis para configurar no cluster de banco de dados são fornecidas a seguir com base no mecanismo de banco de dados configurado.

Flags do banco de dados PostgreSQL

Sinalização Intervalo Tipo É necessário reiniciar
max_connections [1, 262143] Número inteiro TRUE
temp_file_limit (em inglês) [1048576, 2147483647] Número inteiro FALSO
log_min_duration_statement (em inglês) [-1, 2147483647] Número inteiro FALSO
log_connections (em inglês) ativado, desativado Booleano FALSO
log_lock_waits (em inglês) ativado, desativado Booleano FALSO
log_disconnections (em inglês) ativado, desativado Booleano FALSO
log_checkpoints (em inglês) ativado, desativado Booleano FALSO
log_temp_files (em inglês) [-1, 2147483647] Número inteiro FALSO
log_statement none, ddl, mod, all Enum FALSO
pgaudit.log read, write, function, role, ddl, misc, misc_set,
all, none , -read, -write, -function, -role, -ddl,
-misc, -misc_set, -all, -none
String repetida FALSO
work_mem (em inglês) [64, 2147483647] Número inteiro FALSO
autovacuum ativado, desativado Booleano FALSO
maintenance_work_mem [1024, 2147483647] Número inteiro FALSO
random_page_cost [0, 2147483647] Ponto flutuante FALSO
log_min_messages (em inglês) debug5, debug4, debug3, debug2, debug1, info
notice, warning, error, log, fatal, panic
Enum FALSO
idle_in_transaction_session_timeout [0, 2147483647] Número inteiro FALSO
max_wal_size (em inglês) [2, 2147483647],. Número inteiro FALSO
autovacuum_vacuum_scale_factor (em inglês) [0, 100] Ponto flutuante FALSO
log_autovacuum_min_duration (em inglês) [-1, 2147483647] Número inteiro FALSO
autovacuum_vacuum_cost_limit (em inglês) [-1, 10000] Número inteiro FALSO
autovacuum_max_workers (em inglês) [1, 262143] Número inteiro TRUE
autovacuum_analyze_scale_factor (em inglês) [0, 100] Ponto flutuante FALSO
track_activity_query_size (em inglês) [100, 1048576] Número inteiro TRUE
log_duration (em inglês) ativado, desativado Booleano FALSO
autovacuum_vacuum_cost_delay (em inglês) [-1, 100] Número inteiro FALSO
checkpoint_completion_target [0, 1] Ponto flutuante FALSO
log_statement_stats ativado, desativado Booleano FALSO
max_worker_processes [8, 4096] Número inteiro TRUE
log_min_error_statement (em inglês) debug5, debug4, debug3, debug2, debug1, info,
notice, warning, error, log, fatal, panic
Enum FALSO
default_statistics_target (em inglês) [1, 10000] Número inteiro FALSO
checkpoint_timeout (em inglês) [30, 86400] Número inteiro FALSO
wal_buffers [-1, 262143 ] Número inteiro TRUE
effective_cache_size [1, 2147483647] Número inteiro FALSO
autovacuum_work_mem (em inglês) [1, 2147483647] Número inteiro FALSO
log_hostname (em inglês) ativado, desativado Booleano FALSO
autovacuum_vacuum_threshold (em inglês) [0, 2147483647] Número inteiro FALSO
autovacuum_naptime (em inglês) [1, 2147483] Número inteiro FALSO
autovacuum_analyze_threshold (em inglês) [0, 2147483647] Número inteiro FALSO
pgaudit.log_client ativado, desativado Booleano FALSO
pgaudit.log_parameter ativado, desativado Booleano FALSO
pgaudit.log_level debug5, debug4, debug3, debug2, debug1, info,
notice, warning, error, log
Enum FALSO
pgaudit.log_relation ativado, desativado Booleano FALSO
pgaudit.log_catalog ativado, desativado Booleano FALSO
pgaudit.role String FALSO
autovacuum_freeze_max_age (em inglês) [100000, 2000000000] Número inteiro TRUE
autovacuum_multixact_freeze_max_age (em inglês) [10000, 2000000000] Número inteiro TRUE
pgaudit.log_statement_once ativado, desativado Booleano FALSO
anon.algorithm String FALSO
anon.maskschema String FALSO
anon.restrict_to_trusted_schemas ativado, desativado Booleano FALSO
anon.salt String FALSO
anon.sourceschema String FALSO
dbs.enable_anon on, off Booleano TRUE
dbs.enable_pg_bigm on, off Booleano TRUE
dbs.enable_pg_cron on, off Booleano TRUE
dbs.enable_pg_hint_plan on, off Booleano TRUE
dbs.enable_pg_wait_sampling on, off Booleano TRUE
pg_bigm.enable_recheck ativado, desativado Booleano FALSO
pg_bigm.gin_key_limit [0, 2147483647] Número inteiro FALSO
pg_bigm.similarity_limit [0, 1] Ponto flutuante FALSO
pg_hint_plan.debug_print off, on, detailed, verbose, 0, 1, 2, 3, no, yes, false, true Enum TRUE
pg_hint_plan.enable_hint ativado, desativado Booleano FALSO
pg_hint_plan.enable_hint_table ativado, desativado Booleano FALSO
pg_hint_plan.message_level debug5, debug4, debug3, debug2, debug1, debug, info, notice, warning, error, log Enum FALSO
pg_hint_plan.parse_messages debug5, debug4, debug3, debug2, debug1, debug, info, notice, warning, error, log Enum FALSO
pg_stat_statements.max (em inglês) [100, 2147483647] Número inteiro TRUE
pg_stat_statements.save (em inglês) ativado, desativado Booleano FALSO
pg_stat_statements.track (em inglês) none, top, all Enum FALSO
pg_stat_statements.track_utility (em inglês) ativado, desativado Booleano FALSO
pg_wait_sampling.history_period [1, 2147483647] Número inteiro FALSO
pg_wait_sampling.history_size [1, 2147483647] Número inteiro FALSO
pg_wait_sampling.profile_period [1, 2147483647] Número inteiro FALSO
pg_wait_sampling.profile_pid ativado, desativado Booleano FALSO
pg_wait_sampling.profile_queries ativado, desativado Booleano FALSO
pglogical.batch_inserts ativado, desativado Booleano TRUE
pglogical.conflict_log_level debug5, debug4, debug3 , debug2, debug1 , info, notice , warning, error , log, fatal , panic Enum FALSO
pglogical.conflict_resolution error, apply_remote, keep_local, last_update_wins, first_update_wins Enum FALSO
pglogical.extra_connection_options String FALSO
pglogical.synchronous_commit ativado, desativado Booleano TRUE
pglogical.use_spi ativado, desativado Booleano TRUE
pgtt.enabled ativado, desativado Booleano FALSO
plv8.execution_timeout [1, 65536] Número inteiro FALSO
plv8.memory_limit [256, 3096] Número inteiro FALSO
plv8.start_proc String FALSO
rdkit.agent_FP_bit_ratio [0, 3] Ponto flutuante FALSO
rdkit.avalon_fp_size [64, 9192] Número inteiro FALSO
rdkit.dice_threshold [0, 1] Ponto flutuante FALSO
rdkit.difference_FP_weight_agents [-10, 10] Número inteiro FALSO
rdkit.difference_FP_weight_nonagents [1, 20] Número inteiro FALSO
rdkit.do_chiral_sss ativado, desativado Booleano FALSO
rdkit.do_enhanced_stereo_sss ativado, desativado Booleano FALSO
rdkit.featmorgan_fp_size [64, 9192] Número inteiro FALSO
rdkit.hashed_atompair_fp_size [64, 9192] Número inteiro FALSO
rdkit.hashed_torsion_fp_size [64, 9192] Número inteiro FALSO
rdkit.ignore_reaction_agents ativado, desativado Booleano FALSO
rdkit.init_reaction ativado, desativado Booleano FALSO
rdkit.layered_fp_size [64, 9192] Número inteiro FALSO
rdkit.morgan_fp_size [64, 9192] Número inteiro FALSO
rdkit.move_unmmapped_reactants_to_agents ativado, desativado Booleano FALSO
rdkit.rdkit_fp_size [64, 9192] Número inteiro FALSO
rdkit.reaction_difference_fp_size [64, 9192] Número inteiro FALSO
rdkit.reaction_difference_fp_type [1, 3] Número inteiro FALSO
rdkit.reaction_sss_fp_size [64, 9192] Número inteiro FALSO
rdkit.reaction_sss_fp_type [1, 5] Número inteiro FALSO
rdkit.sss_fp_size [64, 4096] Número inteiro FALSO
rdkit.tanimoto_threshold [0, 1] Ponto flutuante FALSO
rdkit.threshold_unmapped_reactant_atoms [0, 1] Ponto flutuante FALSO

A tabela a seguir especifica valores padrão para flags diferentes do padrão do fornecedor:

Sinalização Valor/fórmula
shared_buffers 1/3 * totalMemory(MiB)
max_wal_size 1504MB
max_connections Memória total >= ? Valor
120 GB 1000
60 GB 800
15 GB 500
7,5 GB 400
6 GB 200
3,75 GB 100
1,7 GB 50
0 25
effective_cache_size 2/5 * totalMemory
temp_file_limit 1/10 * storageSize
log_connections ativado
log_disconnections ativado
pgaudit.log all, -misc
log_hostname ativado
pgaudit.log_parameter ativado

Flags do banco de dados Oracle

Sinalização Intervalo Tipo É necessário reiniciar
aq_tm_processes [0, 40] Número inteiro FALSO
background_core_dump COMPLETO, PARCIAL Enum FALSO
bitmap_merge_area_size [0, 2147483647] Número inteiro TRUE
control_management_pack_access NONE, DIAGNOSTIC, DIAGNOSTIC+TUNING Enum FALSO
cursor_sharing FORCE, EXACT, SIMILAR Enum FALSO
db_cache_size [0, 10995116277760] Número inteiro FALSO
db_files [200, 20000] Número inteiro TRUE
db_flashback_retention_target [30, 2147483647] Número inteiro FALSO
db_keep_cache_size [0, 10995116277760] Número inteiro FALSO
db_recovery_file_dest_size [0, 10995116277760] Número inteiro FALSO
evento String TRUE
large_pool_size [0, 10995116277760] Número inteiro FALSO
log_buffer [2097152, 10995116277760] Número inteiro TRUE
open_cursors [5, 65535] Número inteiro FALSO
pga_aggregate_limit [0, 10995116277760] Número inteiro FALSO
pga_aggregate_target [10485760, 10995116277760] Número inteiro FALSO
processes [100, 20000] Número inteiro TRUE
recyclebin ATIVADO, DESATIVADO Enum TRUE
resource_limit TRUE, FALSE Booleano FALSO
sec_max_failed_login_attempts [1, 2147483647] Número inteiro TRUE
sga_max_size [377487360, 10995116277760] Número inteiro TRUE
sga_target [377487360, 10995116277760] Número inteiro FALSO
shared_pool_size [0, 10995116277760] Número inteiro FALSO
undo_retention [0, 2147483647] Número inteiro FALSO
global_names TRUE, FALSE Booleano FALSO
DBFIPS_140 TRUE, FALSE Booleano TRUE
parallel_max_servers [0, 32767] Número inteiro FALSO
_fix_control String FALSO
_sql_plan_directive_mgmt_control [0, 65535] Número inteiro FALSO
_optimizer_dsdir_usage_control [0, 126] Número inteiro FALSO
skip_unusable_indexes TRUE, FALSE Booleano FALSO

A tabela a seguir especifica valores padrão para flags diferentes do padrão do fornecedor:

Sinalização Valor/fórmula
sga_target 4/5* (totalMemory-1GiB)
pga_aggregate_target 1/5* (totalMemory-1GiB)
open_cursors 300
processes 300
DBFIPS_140 TRUE
global_names TRUE

Flags de banco de dados do AlloyDB Omni

Sinalização Intervalo Tipo É necessário reiniciar
google_columnar_engine.enabled ativado, desativado Booleano TRUE
google_columnar_engine.memory_size_in_mb [128, 2147483647] Número inteiro TRUE
anon.algorithm String FALSO
anon.maskschema String FALSO
anon.restrict_to_trusted_schemas ativado, desativado Booleano FALSO
anon.salt String FALSO
anon.sourceschema String FALSO
dbs.enable_anon on, off Booleano TRUE
dbs.enable_pg_bigm on, off Booleano TRUE
dbs.enable_pg_cron on, off Booleano TRUE
dbs.enable_pg_hint_plan on, off Booleano TRUE
dbs.enable_pg_squeeze on, off Booleano TRUE
dbs.enable_pg_wait_sampling on, off Booleano TRUE
pg_bigm.enable_recheck ativado, desativado Booleano FALSO
pg_bigm.gin_key_limit [0, 2147483647] Número inteiro FALSO
pg_bigm.similarity_limit [0, 1] Ponto flutuante FALSO
pg_hint_plan.debug_print off, on, detailed, verbose, 0, 1, 2, 3, no, yes, false, true Enum TRUE
pg_hint_plan.enable_hint ativado, desativado Booleano FALSO
pg_hint_plan.enable_hint_table ativado, desativado Booleano FALSO
pg_hint_plan.message_level debug5, debug4, debug3, debug2, debug1, debug, info, notice, warning, error, log Enum FALSO
pg_hint_plan.parse_messages debug5, debug4, debug3, debug2, debug1, debug, info, notice, warning, error, log Enum FALSO
pg_stat_statements.max (em inglês) [100, 2147483647] Número inteiro TRUE
pg_stat_statements.save (em inglês) ativado, desativado Booleano FALSO
pg_stat_statements.track (em inglês) none, top, all Enum FALSO
pg_stat_statements.track_utility (em inglês) ativado, desativado Booleano FALSO
pg_wait_sampling.history_period [1, 2147483647] Número inteiro FALSO
pg_wait_sampling.history_size [1, 2147483647] Número inteiro FALSO
pg_wait_sampling.profile_period [1, 2147483647] Número inteiro FALSO
pg_wait_sampling.profile_pid ativado, desativado Booleano FALSO
pg_wait_sampling.profile_queries ativado, desativado Booleano FALSO
pgaudit.log read, write, function, role, ddl, misc, misc_set,
all, none , -read, -write, -function, -role, -ddl,
-misc, -misc_set, -all, -none
String repetida FALSO
pgaudit.log_client ativado, desativado Booleano FALSO
pgaudit.log_parameter ativado, desativado Booleano FALSO
pgaudit.log_level debug5, debug4, debug3, debug2, debug1, info,
notice, warning, error, log
Enum FALSO
pgaudit.log_relation ativado, desativado Booleano FALSO
pgaudit.log_catalog ativado, desativado Booleano FALSO
pgaudit.role String FALSO
pgaudit.log_statement_once ativado, desativado Booleano FALSO
pglogical.batch_inserts ativado, desativado Booleano TRUE
pglogical.conflict_log_level debug5, debug4, debug3 , debug2, debug1 , info, notice , warning, error , log, fatal , panic Enum FALSO
pglogical.conflict_resolution error, apply_remote, keep_local, last_update_wins, first_update_wins Enum FALSO
pglogical.extra_connection_options String FALSO
pglogical.synchronous_commit ativado, desativado Booleano TRUE
pglogical.use_spi ativado, desativado Booleano TRUE
pgtt.enabled ativado, desativado Booleano FALSO
plv8.execution_timeout [1, 65536] Número inteiro FALSO
plv8.memory_limit [256, 3096] Número inteiro FALSO
plv8.start_proc String FALSO