Aggiorna gli attributi del cluster di database

Puoi modificare i seguenti attributi del cluster di database con la console GDC o gcloud CLI:

  • Password del database per l'utente amministratore
  • Connessioni esterne (attivate/disattivate)
  • Livello di disponibilità (solo AlloyDB Omni e PostgreSQL)
  • Backup attivato e giorni di conservazione del backup
  • Flag di database
  • CPU, memoria o spazio di archiviazione allocato al cluster di database

Per informazioni su come modificare un attributo, consulta il flusso di lavoro corrispondente al tipo di attributo che vuoi aggiornare:

Console

Alta disponibilità

Per i cluster di database AlloyDB Omni e PostgreSQL, attiva o disattiva l'alta disponibilità nella stessa zona. Per ulteriori informazioni, consulta la sezione Configurare l'alta disponibilità.

Protezione dei dati

Per tutti i tipi di cluster di database, puoi attivare o disattivare la protezione dei dati:

  1. Vai a Protezione dei dati e fai clic su Modifica Modifica per accedere al modulo delle impostazioni di protezione dei dati. Se i backup automatici sono abilitati, puoi anche configurare il periodo di conservazione dei backup.
  2. Dopo aver apportato le modifiche, fai clic su Salva per applicare gli aggiornamenti al cluster di database.

Connettività

Per tutti i tipi di cluster di database, puoi scegliere se il cluster di database è accessibile solo dall'interno del progetto GDC o anche dall'esterno del progetto:

  1. Vai a Connettività e fai clic su Modifica Modifica.
  2. Aggiorna le configurazioni di connettività.
  3. Fai clic su Salva per applicare le modifiche.

Istanze

Per tutti i tipi di cluster di database, puoi modificare le proprietà dell'istanza principale:

  1. Vai a Istanza principale e fai clic su Modifica Modifica.
  2. Scegli tra le configurazioni High Performance, Standard, Minimum o Custom. L'opzione Personalizzato ti consente di scegliere il numero di CPU, la memoria e lo spazio di archiviazione per l'istanza principale.

  3. L'aggiornamento di CPU, memoria o spazio di archiviazione dell'istanza principale richiede un riavvio. Seleziona Salva e riavvia per applicare le modifiche.

Per tutti i tipi di cluster di database, questo modulo consente anche di aggiungere, modificare o rimuovere i flag del database. L'insieme di flag disponibili è predeterminato da GDC. Per ulteriori informazioni, consulta la sezione Configurare i flag di database.

interfaccia a riga di comando gcloud

Utilizza il seguente comando per aggiornare un cluster di database: sh gdcloud database clusters update CLUSTER_NAME [options]

Sostituisci quanto segue:

  • CLUSTER_NAME con il nome del cluster di database da aggiornare.

Per l'elenco completo delle opzioni, consulta la documentazione di riferimento dei comandi o esegui sh gdcloud database clusters update --help

API

Protezione dei dati

Per tutti i tipi di cluster di database, puoi attivare la funzionalità di protezione dei dati creando una risorsa BackupPlan per quel cluster di database.

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

Sostituisci le seguenti variabili:

  • DBENGINE_NAME: il nome del motore del database. Questo è uno tra alloydbomni,postgresql o oracle.
  • DBCLUSTER_NAME: il nome del cluster di database per cui attivare la protezione dei dati.
  • USER_PROJECT: il nome del progetto utente in cui verrà creato il cluster di database.
  • RETENTION_DAYS: il numero di giorni per i quali l'operatore AlloyDB Omni conserva questo backup. Deve essere un numero intero compreso tra 1 e 90.

Puoi anche configurare le impostazioni di protezione dei dati, ad esempio i giorni di conservazione, modificando la risorsa BackupPlan corrispondente.

Per disattivare la protezione dei dati per un cluster di database, elimina la risorsa BackupPlan corrispondente creata in precedenza.

Configura flag di database

Le immagini del database fornite con GDC includono impostazioni predefinite. Tuttavia, puoi personalizzare il motore del database predefinito per soddisfare i requisiti delle tue applicazioni. I cluster di database forniscono flag predefiniti che puoi impostare utilizzando la console GDC o gcloud CLI:

Console

  1. Nel menu di navigazione, seleziona Database Service.

  2. Nell'elenco dei cluster di database, fai clic sul cluster di database per cui vuoi configurare i flag di database.

  3. Nella sezione Istanze nel cluster di database, fai clic su Modifica primaria.

    Modifica il cluster di database principale per configurare i flag.

  4. Nella sezione Flag, fai clic su Aggiungi un flag di database.

  5. Scegli il flag e inserisci il valore. Se il valore inserito non è valido, la console GDC ti fornisce istruzioni su come soddisfare l'intervallo o il tipo di valore richiesto.

  6. Fai clic su Fine.

  7. Per impostare la configurazione, fai clic su Salva. Perché alcuni flag diventino effettivi, devi riavviare il cluster di database. In questo caso, fai clic su Salva e riavvia.

  8. Per verificare che il nuovo flag sia impostato, torna alla sezione Istanze nel tuo cluster di database del cluster di database e verifica che il nuovo flag e il nuovo valore siano visibili.

Per modificare i flag di database, torna alla sezione Flag e modifica i flag esistenti. Passa il mouse sopra un componente flag e fai clic sull'icona Elimina per rimuovere un flag di database.

gdcloud

Puoi configurare nuovi flag di database per il cluster o ripristinare tutti i flag esistenti ai valori predefiniti:

  • Per configurare un flag di database per il cluster di database, esegui:

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

    Sostituisci quanto segue:

    • CLUSTER_NAME: il nome del cluster di database.
    • DB_FLAGS: l'elenco separato da virgole dei flag di database da impostare sul database in esecuzione nel cluster di database. Ogni flag e valore del database viene impostato come coppia chiave-valore. I flag senza valore possono essere definiti senza una stringa dopo il carattere =.

    Ad esempio, il seguente comando imposta diversi flag di database per test-db-cluster:

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

    Per un elenco dei flag di database disponibili, consulta Flag di database disponibili.

  • Per ripristinare tutte le impostazioni predefinite dei flag di database, esegui:

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

    Sostituisci CLUSTER_NAME con il nome del cluster di database.

API

  • Per configurare i flag di database per il cluster di database, esegui:

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

    Sostituisci le seguenti variabili:

    • DBENGINE_NAME: il nome del motore del database. Si tratta di uno dei seguenti valori: alloydbomni, postgresql o oracle.
    • DBCLUSTER_NAME: il nome del cluster di database.
    • USER_PROJECT: il nome del progetto utente in cui è stato creato il cluster di database.
    • DB_FLAGS: i parametri di configurazione del database da aggiungere o aggiornare. Deve essere un oggetto formattato in JSON di coppie chiave-valore, in cui le chiavi sono i nomi dei parametri del database e i valori sono le rispettive impostazioni. Ad esempio, il seguente comando imposta diversi flag di database:
    "autovacuum": "on", "autovacuum_analyze_threshold": "2147483647", "dbs.enable_anon": "on"
    

    Per un elenco dei flag di database disponibili, consulta Flag di database disponibili.

  • Per ripristinare tutte le impostazioni predefinite dei flag di database, esegui:

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

    Sostituisci le seguenti variabili:

    • DBENGINE_NAME: il nome del motore del database. Si tratta di uno dei seguenti valori: alloydbomni, postgresql o oracle.
    • DBCLUSTER_NAME: il nome del cluster di database.
    • USER_PROJECT: il nome del progetto utente in cui è stato creato il cluster di database.

Flag di database disponibili

I flag di database disponibili da configurare per il cluster di database vengono forniti di seguito in base al motore del database configurato.

Flag del database PostgreSQL

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

La tabella seguente specifica i valori predefiniti per i flag diversi da quelli del fornitore:

Flag Valore/Formula
shared_buffers 1/3 * totalMemory(MiB)
max_wal_size 1504MB
max_connections Memoria totale >= ? Valore
120 GB 1000
60 GB 800
15 GB 500
7,5 GB 400
6GB 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 on
log_disconnections on
pgaudit.log tutti, -varie
log_hostname on
pgaudit.log_parameter on

Flag di database Oracle

Flag Intervallo Tipo È necessario riavviare
aq_tm_processes [0, 40] Numero intero FALSE
background_core_dump FULL, PARTIAL Enum FALSE
bitmap_merge_area_size [0, 2147483647] Numero intero VERO
control_management_pack_access NONE, DIAGNOSTIC, DIAGNOSTIC+TUNING Enum FALSE
cursor_sharing FORZA, ESATTO, SIMILE Enum FALSE
db_cache_size [0, 10995116277760] Numero intero FALSE
db_files [200, 20000] Numero intero VERO
db_flashback_retention_target [30, 2147483647] Numero intero FALSE
db_keep_cache_size [0, 10995116277760] Numero intero FALSE
db_recovery_file_dest_size [0, 10995116277760] Numero intero FALSE
event Stringa VERO
large_pool_size [0, 10995116277760] Numero intero FALSE
log_buffer [2097152, 10995116277760] Numero intero VERO
open_cursors [5, 65535] Numero intero FALSE
pga_aggregate_limit [0, 10995116277760] Numero intero FALSE
pga_aggregate_target [10485760, 10995116277760] Numero intero FALSE
processi [100, 20000] Numero intero VERO
recyclebin ON, OFF Enum VERO
resource_limit TRUE, FALSE Booleano FALSE
sec_max_failed_login_attempts [1, 2147483647] Numero intero VERO
sga_max_size [377487360, 10995116277760] Numero intero VERO
sga_target [377487360, 10995116277760] Numero intero FALSE
shared_pool_size [0, 10995116277760] Numero intero FALSE
undo_retention [0, 2147483647] Numero intero FALSE
global_names TRUE, FALSE Booleano FALSE
DBFIPS_140 TRUE, FALSE Booleano VERO
parallel_max_servers [0, 32767] Numero intero FALSE
_fix_control Stringa FALSE
_sql_plan_directive_mgmt_control [0, 65535] Numero intero FALSE
_optimizer_dsdir_usage_control [0, 126] Numero intero FALSE
skip_unusable_indexes TRUE, FALSE Booleano FALSE

La tabella seguente specifica i valori predefiniti per i flag diversi da quelli del fornitore:

Flag Valore/Formula
sga_target 4/5* (totalMemory-1GiB)
pga_aggregate_target 1/5* (totalMemory-1GiB)
open_cursors 300
processi 300
DBFIPS_140 VERO
global_names VERO

Flag di database AlloyDB Omni

Flag Intervallo Tipo È necessario riavviare
google_columnar_engine.enabled on, off Booleano VERO
google_columnar_engine.memory_size_in_mb [128, 2147483647] Numero intero VERO
anon.algorithm Stringa FALSE
anon.maskschema Stringa FALSE
anon.restrict_to_trusted_schemas on, off Booleano FALSE
anon.salt Stringa FALSE
anon.sourceschema Stringa FALSE
dbs.enable_anon on, off Booleano VERO
dbs.enable_pg_bigm on, off Booleano VERO
dbs.enable_pg_cron on, off Booleano VERO
dbs.enable_pg_hint_plan on, off Booleano VERO
dbs.enable_pg_squeeze on, off Booleano VERO
dbs.enable_pg_wait_sampling on, off Booleano VERO
pg_bigm.enable_recheck on, off Booleano FALSE
pg_bigm.gin_key_limit [0, 2147483647] Numero intero FALSE
pg_bigm.similarity_limit [0, 1] Numero in virgola mobile FALSE
pg_hint_plan.debug_print off, on, detailed, verbose, 0, 1, 2, 3, no, yes, false, true Enum VERO
pg_hint_plan.enable_hint on, off Booleano FALSE
pg_hint_plan.enable_hint_table on, off Booleano FALSE
pg_hint_plan.message_level debug5, debug4, debug3, debug2, debug1, debug, info, notice, warning, error, log Enum FALSE
pg_hint_plan.parse_messages debug5, debug4, debug3, debug2, debug1, debug, info, notice, warning, error, log Enum FALSE
pg_stat_statements.max [100, 2147483647] Numero intero VERO
pg_stat_statements.save on, off Booleano FALSE
pg_stat_statements.track nessuno, in alto, tutti Enum FALSE
pg_stat_statements.track_utility on, off Booleano FALSE
pg_wait_sampling.history_period [1, 2147483647] Numero intero FALSE
pg_wait_sampling.history_size [1, 2147483647] Numero intero FALSE
pg_wait_sampling.profile_period [1, 2147483647] Numero intero FALSE
pg_wait_sampling.profile_pid on, off Booleano FALSE
pg_wait_sampling.profile_queries on, off Booleano FALSE
pgaudit.log read, write, function, role, ddl, misc, misc_set,
all, none , -read, -write, -function, -role, -ddl,
-misc, -misc_set, -all, -none
Stringa ripetuta FALSE
pgaudit.log_client on, off Booleano FALSE
pgaudit.log_parameter on, off Booleano FALSE
pgaudit.log_level debug5, debug4, debug3, debug2, debug1, info,
notice, warning, error, log
Enum FALSE
pgaudit.log_relation on, off Booleano FALSE
pgaudit.log_catalog on, off Booleano FALSE
pgaudit.role Stringa FALSE
pgaudit.log_statement_once on, off Booleano FALSE
pglogical.batch_inserts on, off Booleano VERO
pglogical.conflict_log_level debug5, debug4, debug3 , debug2, debug1 , info, notice , warning, error , log, fatal , panic Enum FALSE
pglogical.conflict_resolution error, apply_remote, keep_local, last_update_wins, first_update_wins Enum FALSE
pglogical.extra_connection_options Stringa FALSE
pglogical.synchronous_commit on, off Booleano VERO
pglogical.use_spi on, off Booleano VERO
pgtt.enabled on, off Booleano FALSE
plv8.execution_timeout [1, 65536] Numero intero FALSE
plv8.memory_limit [256, 3096] Numero intero FALSE
plv8.start_proc Stringa FALSE