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à
  • 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à

Attiva o disattiva l'alta disponibilità nella stessa zona. Per saperne di più, consulta la sezione Configurare l'alta affidabilità.

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 è possibile accedere al cluster di database solo dall'interno del progetto GDC o se è accessibile 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 Rendimento elevato, Standard, Minima o Personalizzata. L'opzione Personalizzato ti consente di scegliere il numero di CPU, la memoria e lo spazio di archiviazione per l'istanza primaria.

  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 di database. L'insieme di flag disponibili è predeterminato da GDC. Per ulteriori informazioni, consulta la sezione Configurare i flag di database.

gcloud CLI

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 il cluster di database.

apiVersion: postgresql.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:

  • 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 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.

Reimpostare la password utente amministratore

Per tutti i tipi di cluster di database, puoi reimpostare la password del database per l'utente amministratore.

  1. Crea un secret della password.

    apiVersion: v1
    kind: Secret
    metadata:
      name: db-pw-DBCLUSTER_NAME
      namespace: USER_PROJECT
    type: Opaque
    data:
      DBCLUSTER_NAME: "BASE64_PASSWORD"
    
  2. Applica la patch a DBCluster.

    kubectl patch dbcluster.postgresql.dbadmin.gdc.goog DBCLUSTER_NAME -p '{"spec":{"primarySpec": {"adminUser": {"passwordRef": {"name": "db-pw-DBCLUSTER_NAME"}}}}}' --type=merge -n USER_PROJECT
    

Sostituisci le seguenti variabili:

  • DBCLUSTER_NAME: il nome del cluster di database.
  • USER_PROJECT: il nome del progetto utente in cui verrà aggiornato il cluster di database.
  • BASE64_PASSWORD: la codifica Base64 della password dell'amministratore del database.

L'applicazione della nuova password richiede circa un minuto.

Configura flag di database

Le immagini del database fornite con GDC sono dotate di 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 di database e valore 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.postgresql.dbadmin.gdc.goog DBCLUSTER_NAME -p '{"spec":{"primarySpec": {"parameters": DB_FLAGS}}}' --type=merge -n USER_PROJECT
    

    Sostituisci le seguenti variabili:

    • 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.postgresql.dbadmin.gdc.goog DBCLUSTER_NAME --type=json -p='[{"op": "remove", "path": "/spec/primarySpec/parameters"}]' -n USER_PROJECT
    

    Sostituisci le seguenti variabili:

    • 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

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