Mettre à jour les attributs du cluster de base de données

Vous pouvez modifier les attributs suivants du cluster de bases de données avec la console GDC ou la CLI gdcloud :

  • Mot de passe de la base de données pour l'utilisateur administrateur
  • Connexions externes (activées/désactivées)
  • Niveau de disponibilité (AlloyDB Omni et PostgreSQL uniquement)
  • Sauvegarde activée et nombre de jours de conservation des sauvegardes
  • Indicateurs de base de données
  • Processeur, mémoire ou stockage alloués au cluster de bases de données

Pour savoir comment modifier un attribut, consultez le workflow correspondant au type d'attribut que vous souhaitez mettre à jour :

Console

Haute disponibilité

Pour les clusters de bases de données AlloyDB Omni et PostgreSQL, activez ou désactivez la haute disponibilité dans la même zone. Pour en savoir plus, consultez la section Configurer la haute disponibilité.

Protection des données

Pour tous les types de clusters de bases de données, vous pouvez activer ou désactiver la protection des données :

  1. Accédez à Protection des données, puis cliquez sur Modifier Modifier pour accéder au formulaire des paramètres de protection des données. Si les sauvegardes automatiques sont activées, vous pouvez également configurer la durée de conservation des sauvegardes.
  2. Une fois les modifications effectuées, cliquez sur Enregistrer pour les appliquer à votre cluster de bases de données.

Connectivité

Pour tous les types de clusters de bases de données, vous pouvez choisir si le cluster de bases de données est accessible uniquement depuis le projet GDC ou s'il est également accessible depuis l'extérieur du projet :

  1. Accédez à Connectivité, puis cliquez sur Modifier Modifier.
  2. Mettez à jour vos configurations de connectivité.
  3. Cliquez sur Enregistrer pour appliquer les modifications.

Instances

Pour tous les types de clusters de bases de données, vous pouvez modifier les propriétés de l'instance principale :

  1. Accédez à Instance principale, puis cliquez sur Modifier Modifier.
  2. Choisissez entre les configurations Hautes performances, Standard, Minimale ou Personnalisée. L'option Personnalisé vous permet de choisir le nombre de processeurs, la mémoire et le stockage de votre instance principale.

  3. La mise à jour du processeur, de la mémoire ou du stockage de votre instance principale nécessite un redémarrage. Sélectionnez Enregistrer et redémarrer pour appliquer les modifications.

Pour tous les types de clusters de bases de données, ce formulaire vous permet également d'ajouter, de modifier ou de supprimer des indicateurs de base de données. L'ensemble des indicateurs disponibles est prédéterminé par GDC. Pour en savoir plus, consultez la section Configurer des options de base de données.

gdcloud CLI

Utilisez la commande suivante pour mettre à jour un cluster de bases de données : sh gdcloud database clusters update CLUSTER_NAME [options]

Remplacez les éléments suivants :

  • CLUSTER_NAME par le nom du cluster de bases de données à mettre à jour.

Pour obtenir la liste complète des options, consultez la documentation de référence sur les commandes ou exécutez sh gdcloud database clusters update --help.

API

Protection des données

Pour tous les types de clusters de bases de données, vous pouvez activer la fonctionnalité de protection des données en créant une ressource BackupPlan pour ce cluster de bases de données.

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

Remplacez les variables suivantes :

  • DBENGINE_NAME : nom du moteur de base de données. Il peut être défini sur alloydbomni,postgresql ou oracle.
  • DBCLUSTER_NAME : nom du cluster de bases de données pour lequel activer la protection des données.
  • USER_PROJECT : nom du projet utilisateur dans lequel le cluster de bases de données sera créé.
  • RETENTION_DAYS : nombre de jours pendant lesquels l'opérateur AlloyDB Omni conserve cette sauvegarde. Il doit s'agir d'un nombre entier compris entre 1 et 90.

Vous pouvez également configurer des paramètres de protection des données tels que le nombre de jours de conservation en modifiant la ressource BackupPlan correspondante.

Pour désactiver la protection des données pour un cluster de bases de données, supprimez la ressource BackupPlan correspondante créée précédemment.

Configurer des options de base de données

Les images de base de données fournies avec GDC sont accompagnées de paramètres par défaut. Toutefois, vous pouvez personnaliser le moteur de base de données par défaut pour répondre aux exigences de vos applications. Les clusters de bases de données fournissent des indicateurs prédéfinis que vous pouvez définir à l'aide de la console GDC ou de la CLI gdcloud :

Console

  1. Dans le menu de navigation, sélectionnez Service de base de données.

  2. Dans la liste des clusters de bases de données, cliquez sur celui pour lequel vous souhaitez configurer des indicateurs de base de données.

  3. Dans la section Instances de votre cluster de bases de données, cliquez sur Modifier le nœud principal.

    Modifiez votre cluster de base de données principal pour configurer les options.

  4. Dans la section Indicateurs, cliquez sur Ajouter un indicateur de base de données.

  5. Choisissez votre flag et saisissez la valeur. Si la valeur que vous saisissez n'est pas valide, la console GDC vous indique comment respecter la plage ou le type de valeur requis.

  6. Cliquez sur OK.

  7. Pour définir la configuration, cliquez sur Enregistrer. Pour que certains indicateurs prennent effet, vous devez redémarrer le cluster de bases de données. Dans ce cas, cliquez sur Enregistrer et redémarrer.

  8. Pour confirmer que votre nouvelle option est définie, revenez à la section Instances de votre cluster de bases de données de votre cluster de bases de données et vérifiez que la nouvelle option et la nouvelle valeur sont visibles.

Pour modifier les options de votre base de données, revenez à la section Options et modifiez les options existantes. Pointez sur un composant d'option, puis cliquez sur l'icône Supprimer pour supprimer une option de base de données.

gdcloud

Vous pouvez configurer de nouveaux indicateurs de base de données pour votre cluster ou réinitialiser tous les indicateurs existants à leurs valeurs par défaut :

  • Pour configurer un indicateur de base de données pour votre cluster de bases de données, exécutez la commande suivante :

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

    Remplacez les éléments suivants :

    • CLUSTER_NAME : nom du cluster de base de données.
    • DB_FLAGS : liste d'indicateurs de base de données, séparés par une virgule, à définir sur la base de données exécutée dans le cluster de bases de données. Chaque indicateur et valeur de base de données sont définis sous la forme d'une paire clé/valeur. Les indicateurs sans valeur peuvent être définis sans chaîne après le caractère =.

    Par exemple, la commande suivante définit plusieurs indicateurs de base de données pour test-db-cluster :

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

    Pour obtenir la liste des indicateurs de base de données disponibles, consultez Indicateurs de base de données disponibles.

  • Pour réinitialiser tous les indicateurs de base de données sur leurs paramètres par défaut, exécutez la commande suivante :

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

    Remplacez CLUSTER_NAME par le nom du cluster de bases de données.

API

  • Pour configurer des options de base de données pour votre cluster de bases de données, exécutez la commande suivante :

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

    Remplacez les variables suivantes :

    • DBENGINE_NAME : nom du moteur de base de données. Il s'agit de l'une des valeurs suivantes : alloydbomni, postgresql ou oracle.
    • DBCLUSTER_NAME : nom du cluster de base de données.
    • USER_PROJECT : nom du projet utilisateur dans lequel le cluster de bases de données a été créé.
    • DB_FLAGS : paramètres de configuration de la base de données à ajouter ou à modifier. Il doit s'agir d'un objet au format JSON contenant des paires clé/valeur, où les clés sont les noms des paramètres de la base de données et les valeurs sont leurs paramètres respectifs. Par exemple, la commande suivante définit plusieurs indicateurs de base de données :
    "autovacuum": "on", "autovacuum_analyze_threshold": "2147483647", "dbs.enable_anon": "on"
    

    Pour obtenir la liste des indicateurs de base de données disponibles, consultez Indicateurs de base de données disponibles.

  • Pour réinitialiser tous les indicateurs de base de données sur leurs paramètres par défaut, exécutez la commande suivante :

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

    Remplacez les variables suivantes :

    • DBENGINE_NAME : nom du moteur de base de données. Il s'agit de l'une des valeurs suivantes : alloydbomni, postgresql ou oracle.
    • DBCLUSTER_NAME : nom du cluster de base de données.
    • USER_PROJECT : nom du projet utilisateur dans lequel le cluster de bases de données a été créé.

Options de base de données disponibles

Les options de base de données disponibles pour configurer votre cluster de bases de données sont fournies ci-dessous en fonction du moteur de base de données que vous avez configuré.

Options de base de données PostgreSQL

Option Plage Type Redémarrage requis
max_connections [1, 262143] Integer TRUE
temp_file_limit [1048576, 2147483647] Integer FALSE
log_min_duration_statement [-1, 2147483647] Integer FALSE
log_connections activé, désactivé Booléen FALSE
log_lock_waits activé, désactivé Booléen FALSE
log_disconnections activé, désactivé Booléen FALSE
log_checkpoints activé, désactivé Booléen FALSE
log_temp_files [-1, 2147483647] Integer FALSE
log_statement none, ddl, mod, all Enum FALSE
pgaudit.log read, write, function, role, ddl, misc, misc_set,
all, none , -read, -write, -function, -role, -ddl,
-misc, -misc_set, -all, -none
Chaîne répétée FALSE
work_mem [64, 2147483647] Integer FALSE
autovacuum activé, désactivé Booléen FALSE
maintenance_work_mem [1024, 2147483647] Integer FALSE
random_page_cost [0, 2147483647] Float 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] Integer FALSE
max_wal_size [2, 2147483647],. Integer FALSE
autovacuum_vacuum_scale_factor [0, 100] Float FALSE
log_autovacuum_min_duration [-1, 2147483647] Integer FALSE
autovacuum_vacuum_cost_limit [-1, 10000] Integer FALSE
autovacuum_max_workers [1, 262143] Integer TRUE
autovacuum_analyze_scale_factor [0, 100] Float FALSE
track_activity_query_size [100, 1048576] Integer TRUE
log_duration activé, désactivé Booléen FALSE
autovacuum_vacuum_cost_delay [-1, 100] Integer FALSE
checkpoint_completion_target [0, 1] Float FALSE
log_statement_stats activé, désactivé Booléen FALSE
max_worker_processes [8, 4096] Integer TRUE
log_min_error_statement debug5, debug4, debug3, debug2, debug1, info,
notice, warning, error, log, fatal, panic
Enum FALSE
default_statistics_target [1, 10000] Integer FALSE
checkpoint_timeout [30, 86400] Integer FALSE
wal_buffers [-1, 262143 ] Integer TRUE
effective_cache_size [1, 2147483647] Integer FALSE
autovacuum_work_mem [1, 2147483647] Integer FALSE
log_hostname activé, désactivé Booléen FALSE
autovacuum_vacuum_threshold [0, 2147483647] Integer FALSE
autovacuum_naptime [1, 2147483] Integer FALSE
autovacuum_analyze_threshold [0, 2147483647] Integer FALSE
pgaudit.log_client activé, désactivé Booléen FALSE
pgaudit.log_parameter activé, désactivé Booléen FALSE
pgaudit.log_level debug5, debug4, debug3, debug2, debug1, info,
notice, warning, error, log
Enum FALSE
pgaudit.log_relation activé, désactivé Booléen FALSE
pgaudit.log_catalog activé, désactivé Booléen FALSE
pgaudit.role Chaîne FALSE
autovacuum_freeze_max_age [100000, 2000000000] Integer TRUE
autovacuum_multixact_freeze_max_age [10000, 2000000000] Integer TRUE
pgaudit.log_statement_once activé, désactivé Booléen FALSE
anon.algorithm Chaîne FALSE
anon.maskschema Chaîne FALSE
anon.restrict_to_trusted_schemas activé, désactivé Booléen FALSE
anon.salt Chaîne FALSE
anon.sourceschema Chaîne FALSE
dbs.enable_anon on, off Booléen TRUE
dbs.enable_pg_bigm on, off Booléen TRUE
dbs.enable_pg_cron on, off Booléen TRUE
dbs.enable_pg_hint_plan on, off Booléen TRUE
dbs.enable_pg_wait_sampling on, off Booléen TRUE
pg_bigm.enable_recheck activé, désactivé Booléen FALSE
pg_bigm.gin_key_limit [0, 2147483647] Integer FALSE
pg_bigm.similarity_limit [0, 1] Float FALSE
pg_hint_plan.debug_print off, on, detailed, verbose, 0, 1, 2, 3, no, yes, false, true Enum TRUE
pg_hint_plan.enable_hint activé, désactivé Booléen FALSE
pg_hint_plan.enable_hint_table activé, désactivé Booléen 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] Integer TRUE
pg_stat_statements.save activé, désactivé Booléen FALSE
pg_stat_statements.track none, top, all Enum FALSE
pg_stat_statements.track_utility activé, désactivé Booléen FALSE
pg_wait_sampling.history_period [1, 2147483647] Integer FALSE
pg_wait_sampling.history_size [1, 2147483647] Integer FALSE
pg_wait_sampling.profile_period [1, 2147483647] Integer FALSE
pg_wait_sampling.profile_pid activé, désactivé Booléen FALSE
pg_wait_sampling.profile_queries activé, désactivé Booléen FALSE
pglogical.batch_inserts activé, désactivé Booléen TRUE
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 Chaîne FALSE
pglogical.synchronous_commit activé, désactivé Booléen TRUE
pglogical.use_spi activé, désactivé Booléen TRUE
pgtt.enabled activé, désactivé Booléen FALSE
plv8.execution_timeout [1, 65536] Integer FALSE
plv8.memory_limit [256, 3096] Integer FALSE
plv8.start_proc Chaîne FALSE
rdkit.agent_FP_bit_ratio [0, 3] Float FALSE
rdkit.avalon_fp_size [64, 9192] Integer FALSE
rdkit.dice_threshold [0, 1] Float FALSE
rdkit.difference_FP_weight_agents [-10, 10] Integer FALSE
rdkit.difference_FP_weight_nonagents [1, 20] Integer FALSE
rdkit.do_chiral_sss activé, désactivé Booléen FALSE
rdkit.do_enhanced_stereo_sss activé, désactivé Booléen FALSE
rdkit.featmorgan_fp_size [64, 9192] Integer FALSE
rdkit.hashed_atompair_fp_size [64, 9192] Integer FALSE
rdkit.hashed_torsion_fp_size [64, 9192] Integer FALSE
rdkit.ignore_reaction_agents activé, désactivé Booléen FALSE
rdkit.init_reaction activé, désactivé Booléen FALSE
rdkit.layered_fp_size [64, 9192] Integer FALSE
rdkit.morgan_fp_size [64, 9192] Integer FALSE
rdkit.move_unmmapped_reactants_to_agents activé, désactivé Booléen FALSE
rdkit.rdkit_fp_size [64, 9192] Integer FALSE
rdkit.reaction_difference_fp_size [64, 9192] Integer FALSE
rdkit.reaction_difference_fp_type [1, 3] Integer FALSE
rdkit.reaction_sss_fp_size [64, 9192] Integer FALSE
rdkit.reaction_sss_fp_type [1, 5] Integer FALSE
rdkit.sss_fp_size [64, 4096] Integer FALSE
rdkit.tanimoto_threshold [0, 1] Float FALSE
rdkit.threshold_unmapped_reactant_atoms [0, 1] Float FALSE

Le tableau suivant indique les valeurs par défaut des indicateurs qui diffèrent de celles du fournisseur :

Option Valeur/Formule
shared_buffers 1/3 * totalMemory(MiB)
max_wal_size 1 504 Mo
max_connections Mémoire totale >= ? Valeur
120 Go 1000
60 Go 800
15 Go 500
7,50 Go 400
6 Go 200
3,75 Go 100
1,7 Go 50
0 25
effective_cache_size 2/5 * totalMemory
temp_file_limit 1/10 * storageSize
log_connections activé
log_disconnections activé
pgaudit.log all, -misc
log_hostname activé
pgaudit.log_parameter activé

Indicateurs de base de données Oracle

Option Plage Type Redémarrage requis
aq_tm_processes [0, 40] Integer FALSE
background_core_dump COMPLET, PARTIEL Enum FALSE
bitmap_merge_area_size [0, 2147483647] Integer TRUE
control_management_pack_access NONE, DIAGNOSTIC, DIAGNOSTIC+TUNING Enum FALSE
cursor_sharing FORCÉE, EXACTE, SIMILAIRE Enum FALSE
db_cache_size [0, 10995116277760] Integer FALSE
db_files [200, 20000] Integer TRUE
db_flashback_retention_target [30, 2147483647] Integer FALSE
db_keep_cache_size [0, 10995116277760] Integer FALSE
db_recovery_file_dest_size [0, 10995116277760] Integer FALSE
événement Chaîne TRUE
large_pool_size [0, 10995116277760] Integer FALSE
log_buffer [2097152, 10995116277760] Integer TRUE
open_cursors [5, 65535] Integer FALSE
pga_aggregate_limit [0, 10995116277760] Integer FALSE
pga_aggregate_target [10485760, 10995116277760] Integer FALSE
processes [100, 20000] Integer TRUE
recyclebin ACTIVÉ, DÉSACTIVÉ Enum TRUE
resource_limit TRUE, FALSE Booléen FALSE
sec_max_failed_login_attempts [1, 2147483647] Integer TRUE
sga_max_size [377487360, 10995116277760] Integer TRUE
sga_target [377487360, 10995116277760] Integer FALSE
shared_pool_size [0, 10995116277760] Integer FALSE
undo_retention [0, 2147483647] Integer FALSE
global_names TRUE, FALSE Booléen FALSE
DBFIPS_140 TRUE, FALSE Booléen TRUE
parallel_max_servers [0, 32767] Integer FALSE
_fix_control Chaîne FALSE
_sql_plan_directive_mgmt_control [0, 65535] Integer FALSE
_optimizer_dsdir_usage_control [0, 126] Integer FALSE
skip_unusable_indexes TRUE, FALSE Booléen FALSE

Le tableau suivant indique les valeurs par défaut des indicateurs qui diffèrent de celles du fournisseur :

Option Valeur/Formule
sga_target 4/5* (totalMemory-1GiB)
pga_aggregate_target 1/5* (totalMemory-1GiB)
open_cursors 300
processes 300
DBFIPS_140 TRUE
global_names TRUE

Indicateurs de base de données AlloyDB Omni

Option Plage Type Redémarrage requis
google_columnar_engine.enabled activé, désactivé Booléen TRUE
google_columnar_engine.memory_size_in_mb [128, 2147483647] Integer TRUE
anon.algorithm Chaîne FALSE
anon.maskschema Chaîne FALSE
anon.restrict_to_trusted_schemas activé, désactivé Booléen FALSE
anon.salt Chaîne FALSE
anon.sourceschema Chaîne FALSE
dbs.enable_anon on, off Booléen TRUE
dbs.enable_pg_bigm on, off Booléen TRUE
dbs.enable_pg_cron on, off Booléen TRUE
dbs.enable_pg_hint_plan on, off Booléen TRUE
dbs.enable_pg_squeeze on, off Booléen TRUE
dbs.enable_pg_wait_sampling on, off Booléen TRUE
pg_bigm.enable_recheck activé, désactivé Booléen FALSE
pg_bigm.gin_key_limit [0, 2147483647] Integer FALSE
pg_bigm.similarity_limit [0, 1] Float FALSE
pg_hint_plan.debug_print off, on, detailed, verbose, 0, 1, 2, 3, no, yes, false, true Enum TRUE
pg_hint_plan.enable_hint activé, désactivé Booléen FALSE
pg_hint_plan.enable_hint_table activé, désactivé Booléen 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] Integer TRUE
pg_stat_statements.save activé, désactivé Booléen FALSE
pg_stat_statements.track none, top, all Enum FALSE
pg_stat_statements.track_utility activé, désactivé Booléen FALSE
pg_wait_sampling.history_period [1, 2147483647] Integer FALSE
pg_wait_sampling.history_size [1, 2147483647] Integer FALSE
pg_wait_sampling.profile_period [1, 2147483647] Integer FALSE
pg_wait_sampling.profile_pid activé, désactivé Booléen FALSE
pg_wait_sampling.profile_queries activé, désactivé Booléen FALSE
pgaudit.log read, write, function, role, ddl, misc, misc_set,
all, none , -read, -write, -function, -role, -ddl,
-misc, -misc_set, -all, -none
Chaîne répétée FALSE
pgaudit.log_client activé, désactivé Booléen FALSE
pgaudit.log_parameter activé, désactivé Booléen FALSE
pgaudit.log_level debug5, debug4, debug3, debug2, debug1, info,
notice, warning, error, log
Enum FALSE
pgaudit.log_relation activé, désactivé Booléen FALSE
pgaudit.log_catalog activé, désactivé Booléen FALSE
pgaudit.role Chaîne FALSE
pgaudit.log_statement_once activé, désactivé Booléen FALSE
pglogical.batch_inserts activé, désactivé Booléen TRUE
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 Chaîne FALSE
pglogical.synchronous_commit activé, désactivé Booléen TRUE
pglogical.use_spi activé, désactivé Booléen TRUE
pgtt.enabled activé, désactivé Booléen FALSE
plv8.execution_timeout [1, 65536] Integer FALSE
plv8.memory_limit [256, 3096] Integer FALSE
plv8.start_proc Chaîne FALSE