Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Administrator basis data (DBA) melakukan berbagai tugas saat mengelola instans DB Amazon RDS for PostgreSQL. Jika Anda seorang DBA yang sudah terbiasa dengan PostgreSQL, Anda perlu menyadari beberapa perbedaan penting antara menjalankan PostgreSQL di perangkat keras Anda dan RDS for PostgreSQL. Misalnya, karena ini adalah layanan terkelola, Amazon RDS tidak mengizinkan akses shell ke instans DB Anda. Ini berarti Anda tidak memiliki akses langsung ke file pg_hba.conf
dan file konfigurasi lainnya. Untuk RDS for PostgreSQL, perubahan yang biasanya dilakukan pada file konfigurasi PostgreSQL dari instans on-premise dibuat ke grup parameter DB kustom yang terkait dengan instans DB RDS for PostgreSQL. Untuk informasi selengkapnya, lihat Grup parameter untuk RDS.
Anda juga tidak dapat mengakses file log dengan cara yang sama seperti yang Anda lakukan dengan instans PostgreSQL on-premise. Untuk mempelajari pencatatan selengkapnya, lihat File log basis data RDS for PostgreSQL.
Sebagai contoh lain, Anda tidak memiliki akses ke akun PostgreSQL superuser
. Di RDS for PostgreSQL, peran rds_superuser
merupakan peran yang paling istimewa, dan diberikan ke postgres
pada saat penyiapan. Meskipun Anda telah terbiasa menggunakan PostgreSQL on-premise atau baru menggunakan RDS for PostgreSQL, sebaiknya Anda memahami peran rds_superuser
, serta cara bekerja dengan peran, pengguna, grup, dan izin. Untuk informasi selengkapnya, lihat Memahami SQL peran dan izin Postgre.
Berikut ini adalah beberapa tugas DBA umum untuk RDS for PostgreSQL.
Topik
Bekerja dengan mekanisme pencatatan log yang didukung oleh RDS for PostgreSQL
Ada beberapa parameter, ekstensi, dan item lain yang dapat dikonfigurasi dan Anda atur untuk mencatat aktivitas yang terjadi di instans DB PostgreSQL. Sumber daya yang dimaksud meliputi:
Parameter
log_statement
dapat digunakan untuk mencatat aktivitas pengguna di basis data PostgreSQL. Untuk mempelajari pencatatan log RDS for PostgreSQL dan cara memantau log selengkapnya, lihat File log basis data RDS for PostgreSQL.Parameter
rds.force_admin_logging_level
mencatat tindakan yang dilakukan oleh pengguna internal Amazon RDS (rdsadmin) di basis data instans DB. Parameter ini akan menulis output ke kesalahan log PostgreSQL. Nilai yang diizinkan adalahdisabled
,debug5
,debug4
,debug3
,debug2
,debug1
,info
,notice
,warning
,error
, log,fatal
, danpanic
. Nilai default-nya adalahdisabled
.Parameter
rds.force_autovacuum_logging_level
dapat diatur untuk mengambil berbagai operasi autovacuum di log kesalahan PostgreSQL. Untuk informasi selengkapnya, lihat Melakukan log aktivitas autovacuum dan vakum.Ekstensi PostgreSQL Audit (pgAaudit) dapat diinstal dan dikonfigurasi untuk mengambil aktivitas di tingkat sesi atau di tingkat objek. Untuk informasi selengkapnya, lihat Menggunakan pgAudit untuk mencatat aktivitas database.
Dengan ekstensi
log_fdw
, Anda dapat mengakses log mesin basis data menggunakan SQL. Untuk informasi selengkapnya, lihat Menggunakan ekstensi log_fdw untuk mengakses log DB menggunakan SQL.Pustaka
pg_stat_statements
ditentukan sebagai default untuk parametershared_preload_libraries
dalam RDS for PostgreSQL versi 10 dan yang lebih baru. Pustaka inilah yang dapat Anda gunakan untuk menganalisis kueri yang sedang berjalan. Pastikanpg_stat_statements
diatur dalam grup parameter DB Anda. Untuk informasi cara memantau instans DB RDS for PostgreSQL menggunakan informasi yang disediakan pustaka ini selengkapnya, lihat Statistik SQL untuk RDS PostgreSQL.Parameter
log_hostname
mengambil log nama host dari setiap koneksi klien. Untuk RDS for PostgreSQL versi 12 dan versi yang lebih baru, parameter ini diatur keoff
secara default. Jika diaktifkan, pastikan Anda memantau waktu koneksi sesi. Ketika diaktifkan, layanan menggunakan permintaan pencarian terbalik sistem nama domain (DNS) untuk mendapatkan nama host klien yang membuat koneksi dan menambahkannya ke log PostgreSQL. Hal ini memberikan dampak nyata selama koneksi sesi. Sebaiknya mengaktifkan parameter ini hanya untuk memecahkan masalah.
Secara umum, tujuan pencatatan log adalah agar DBA dapat memantau, menyesuaikan performa, dan memecahkan masalah. Banyak log yang diunggah secara otomatis ke Amazon CloudWatch atau Performance Insights. Di sini, log diurutkan dan dikelompokkan agar dapat memberikan metrik lengkap untuk instans DB Anda. Untuk mempelajari pemantauan dan metrik Amazon RDS selengkapnya, lihat Memantau metrik dalam instans Amazon RDS.
Menggunakan pgBadger untuk analisis log dengan PostgreSQL
Anda dapat menggunakan penganalisis log seperti pgBadgerlog_line_prefix
saat ini sebagai parameter pgBadger, laporan tetap akan dihasilkan.
Misalnya, perintah berikut memformat file log Amazon RDS for PostgreSQL tertanggal 04-02-2014 dengan benar menggunakan pgBadger.
./pgbadger -f stderr -p '%t:%r:%u@%d:[%p]:' postgresql.log.2014-02-04-00
Menggunakan PGSnapper untuk memantau PostgreSQL
Anda dapat menggunakan PGSnapper untuk membantu pengumpulan berkala statistik dan metrik terkait performa Amazon RDS for PostgreSQL. Untuk informasi selengkapnya, lihat Memantau performa Amazon RDS for PostgreSQL menggunakan PGSnapper