Anda dapat mengubah atribut cluster database berikut dengan konsol GDC atau gdcloud CLI:
- Sandi database untuk pengguna admin
- Koneksi eksternal (diaktifkan/dinonaktifkan)
- Tingkat ketersediaan
- Pencadangan diaktifkan dan jumlah hari retensi cadangan
- Flag database
- CPU, memori, atau penyimpanan yang dialokasikan ke cluster database
Untuk mengetahui informasi tentang cara mengubah atribut, lihat alur kerja yang sesuai dengan jenis atribut yang ingin Anda perbarui:
Konsol
Ketersediaan Tinggi
Mengaktifkan atau menonaktifkan ketersediaan tinggi zona yang sama. Lihat bagian Mengonfigurasi ketersediaan tinggi untuk mengetahui informasi selengkapnya.
Perlindungan Data
Untuk semua jenis cluster database, Anda dapat mengaktifkan atau menonaktifkan Perlindungan data:
- Buka Perlindungan data, lalu klik edit Edit untuk mengakses formulir setelan perlindungan data. Jika pencadangan otomatis diaktifkan, Anda juga dapat mengonfigurasi durasi penyimpanan cadangan.
- Setelah melakukan perubahan, klik Save agar update diterapkan ke cluster database Anda.
Konektivitas
Untuk semua jenis cluster database, Anda dapat memilih apakah cluster database hanya dapat diakses dari dalam project GDC, atau apakah cluster tersebut juga dapat diakses dari luar project:
- Buka Konektivitas, lalu klik edit Edit.
- Perbarui konfigurasi konektivitas Anda.
Klik Simpan untuk menerapkan perubahan.
Instance
Untuk semua jenis cluster database, Anda dapat mengedit properti instance utama:
- Buka Primary Instance, lalu klik edit Edit.
Pilih antara konfigurasi Performa Tinggi, Standar, Minimum, atau Kustom. Opsi Custom memungkinkan Anda memilih jumlah CPU, memori, dan penyimpanan untuk instance utama.
Memperbarui CPU, memori, atau penyimpanan instance utama Anda akan memerlukan mulai ulang. Pilih Simpan dan Mulai Ulang untuk menerapkan perubahan.
Untuk semua jenis cluster database, formulir ini juga memungkinkan Anda menambahkan, mengubah, atau menghapus flag database. Kumpulan flag yang tersedia telah ditentukan sebelumnya oleh GDC. Lihat bagian Mengonfigurasi flag database untuk mengetahui informasi selengkapnya.
gdcloud
Gunakan perintah berikut untuk mengupdate cluster database:
gdcloud database clusters update CLUSTER_NAME [options]
Ganti CLUSTER_NAME dengan nama cluster database yang akan diupdate.
Untuk mengetahui daftar lengkap opsi, lihat referensi perintah atau jalankan:
gdcloud database clusters update --help
API
Perlindungan Data
Untuk semua jenis cluster database, Anda dapat mengaktifkan fitur perlindungan data dengan membuat resource BackupPlan untuk cluster database tersebut.
apiVersion: postgresql.dbadmin.gdc.goog/v1
kind: BackupPlan
metadata:
name: DBCLUSTER_NAME-backupplan
namespace: USER_PROJECT
spec:
dbclusterRef: DBCLUSTER_NAME
backupRetainDays: RETENTION_DAYS
Ganti variabel berikut:
DBCLUSTER_NAME: nama cluster database yang akan diaktifkan perlindungan datanya.USER_PROJECT: nama project pengguna tempat cluster database akan dibuat.RETENTION_DAYS: jumlah hari operator mempertahankan cadangan ini. Nilai ini harus berupa bilangan bulat antara 1 dan 90.
Anda juga dapat mengonfigurasi setelan perlindungan data seperti hari retensi dengan mengedit resource BackupPlan yang sesuai.
Untuk menonaktifkan perlindungan data untuk cluster database, hapus resource BackupPlan terkait yang dibuat sebelumnya.
Mereset Sandi Pengguna Administrator
Untuk semua jenis cluster database, Anda dapat mereset sandi database untuk pengguna administrator.
Buat secret sandi.
apiVersion: v1 kind: Secret metadata: name: db-pw-DBCLUSTER_NAME namespace: USER_PROJECT type: Opaque data: DBCLUSTER_NAME: "BASE64_PASSWORD"Patch 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
Ganti variabel berikut:
DBCLUSTER_NAME: nama cluster database.USER_PROJECT: nama project pengguna tempat cluster database akan diupdate.BASE64_PASSWORD: encoding base64 sandi administrator database.
Perlu waktu sekitar satu menit agar sandi baru diterapkan.
Mengonfigurasi flag database
Image database yang disertakan dengan GDC dilengkapi dengan setelan default. Namun, Anda dapat menyesuaikan mesin database default untuk memenuhi persyaratan aplikasi Anda. Cluster database menyediakan flag yang telah ditetapkan yang dapat Anda tetapkan menggunakan konsol GDC atau gdcloud CLI:
Konsol
Di menu navigasi, pilih Database Service.
Dari daftar cluster database, klik cluster database yang ingin Anda konfigurasi flag database-nya.
Di bagian Instances in your database cluster, klik Edit Primary.

Di bagian Flags, klik Tambahkan Flag Database.
Pilih flag Anda dan masukkan nilainya. Jika nilai yang Anda masukkan tidak valid, konsol GDC akan memberikan petunjuk tentang cara memenuhi rentang atau jenis nilai yang diperlukan.
Klik Done.
Untuk menetapkan konfigurasi, klik Save. Agar beberapa flag diterapkan, Anda harus memulai ulang cluster database. Untuk kasus ini, klik Save and Restart.
Untuk mengonfirmasi bahwa flag baru Anda telah ditetapkan, kembali ke bagian Instances in your database cluster di cluster database Anda dan verifikasi bahwa flag dan nilai baru terlihat.
Untuk mengedit flag database, kembali ke bagian Flags dan ubah flag yang ada. Arahkan kursor ke komponen flag dan klik ikon Delete untuk menghapus flag database.
gdcloud
Anda dapat mengonfigurasi flag database baru untuk cluster atau mereset semua flag yang ada kembali ke nilai defaultnya:
Untuk mengonfigurasi flag database bagi cluster database Anda, jalankan:
gdcloud database clusters update CLUSTER_NAME \ --database-flags DB_FLAGSGanti kode berikut:
CLUSTER_NAME: nama cluster database.DB_FLAGS: daftar flag database yang dipisahkan koma yang akan ditetapkan pada database yang berjalan di cluster database. Setiap flag dan nilai database ditetapkan sebagai pasangan nilai kunci. Flag tanpa nilai dapat ditentukan tanpa string setelah karakter=.
Misalnya, perintah berikut menetapkan beberapa flag database untuk
test-db-cluster:gdcloud database clusters update test-db-cluster \ --database-flags max_allowed_packet=55555,skip_grant_tables=,log_output=1Untuk mengetahui daftar flag database yang tersedia, lihat Flag database yang tersedia.
Untuk mereset semua flag database ke setelan default, jalankan:
gdcloud database clusters update CLUSTER_NAME --clear-database-flagsGanti
CLUSTER_NAMEdengan nama cluster database.
API
Untuk mengonfigurasi flag database bagi cluster database Anda, jalankan:
kubectl patch dbcluster.postgresql.dbadmin.gdc.goog DBCLUSTER_NAME -p '{"spec":{"primarySpec": {"parameters": DB_FLAGS}}}' --type=merge -n USER_PROJECTGanti variabel berikut:
DBCLUSTER_NAME: nama cluster database.USER_PROJECT: nama project pengguna tempat cluster database dibuat.DB_FLAGS: parameter konfigurasi database yang akan ditambahkan atau diperbarui. Objek ini harus berupa objek berformat JSON dari key-value pair, dengan kunci sebagai nama parameter database dan nilai sebagai setelan masing-masing. Misalnya, perintah berikut menetapkan beberapa flag database:
"autovacuum": "on", "autovacuum_analyze_threshold": "2147483647", "dbs.enable_anon": "on"Untuk mengetahui daftar flag database yang tersedia, lihat Flag database yang tersedia.
Untuk mereset semua flag database ke setelan default, jalankan:
kubectl patch dbcluster.postgresql.dbadmin.gdc.goog DBCLUSTER_NAME --type=json -p='[{"op": "remove", "path": "/spec/primarySpec/parameters"}]' -n USER_PROJECTGanti variabel berikut:
DBCLUSTER_NAME: nama cluster database.USER_PROJECT: nama project pengguna tempat cluster database dibuat.
Flag database yang tersedia
| Flag | Rentang | Jenis | Perlu dimulai ulang |
|---|---|---|---|
| google_columnar_engine.enabled | on, off | Boolean | TRUE |
| google_columnar_engine.memory_size_in_mb | [128, 2147483647] | Bilangan bulat | TRUE |
| anon.algorithm | String | FALSE | |
| anon.maskschema | String | FALSE | |
| anon.restrict_to_trusted_schemas | on, off | Boolean | FALSE |
| anon.salt | String | FALSE | |
| anon.sourceschema | String | FALSE | |
| dbs.enable_anon | Boolean | TRUE | |
| dbs.enable_pg_bigm | Boolean | TRUE | |
| dbs.enable_pg_cron | Boolean | TRUE | |
| dbs.enable_pg_hint_plan | Boolean | TRUE | |
| dbs.enable_pg_squeeze | Boolean | TRUE | |
| dbs.enable_pg_wait_sampling | Boolean | TRUE | |
| pg_bigm.enable_recheck | on, off | Boolean | FALSE |
| pg_bigm.gin_key_limit | [0, 2147483647] | Bilangan bulat | 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 | on, off | Boolean | FALSE |
| pg_hint_plan.enable_hint_table | on, off | Boolean | 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] | Bilangan bulat | TRUE |
| pg_stat_statements.save | on, off | Boolean | FALSE |
| pg_stat_statements.track | none, top, all | Enum | FALSE |
| pg_stat_statements.track_utility | on, off | Boolean | FALSE |
| pg_wait_sampling.history_period | [1, 2147483647] | Bilangan bulat | FALSE |
| pg_wait_sampling.history_size | [1, 2147483647] | Bilangan bulat | FALSE |
| pg_wait_sampling.profile_period | [1, 2147483647] | Bilangan bulat | FALSE |
| pg_wait_sampling.profile_pid | on, off | Boolean | FALSE |
| pg_wait_sampling.profile_queries | on, off | Boolean | FALSE |
| pgaudit.log | read, write, function, role, ddl, misc, misc_set, all, none , -read, -write, -function, -role, -ddl, -misc, -misc_set, -all, -none |
String berulang | FALSE |
| pgaudit.log_client | on, off | Boolean | FALSE |
| pgaudit.log_parameter | on, off | Boolean | FALSE |
| pgaudit.log_level | debug5, debug4, debug3, debug2, debug1, info, notice, warning, error, log |
Enum | FALSE |
| pgaudit.log_relation | on, off | Boolean | FALSE |
| pgaudit.log_catalog | on, off | Boolean | FALSE |
| pgaudit.role | String | FALSE | |
| pgaudit.log_statement_once | on, off | Boolean | FALSE |
| pglogical.batch_inserts | on, off | Boolean | 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 | String | FALSE | |
| pglogical.synchronous_commit | on, off | Boolean | TRUE |
| pglogical.use_spi | on, off | Boolean | TRUE |
| pgtt.enabled | on, off | Boolean | FALSE |
| plv8.execution_timeout | [1, 65536] | Bilangan bulat | FALSE |
| plv8.memory_limit | [256, 3096] | Bilangan bulat | FALSE |
| plv8.start_proc | String | FALSE |