View a markdown version of this page

referensi fungsi rds_tools - Amazon Relational Database Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

referensi fungsi rds_tools

rds_toolsEkstensi ini menyediakan satu set fungsi utilitas untuk mengelola dan memantau RDS Anda untuk PostgreSQL Aurora PostgreSQL instance. Dengan menggunakan fungsi-fungsi ini, Anda dapat mendiagnosis masalah replikasi, vakum, dan konfigurasi langsung dari SQL, tanpa alat pemantauan terpisah. Fungsi-fungsi ini merupakan tambahan dari fungsi PostgreSQL standar. Untuk informasi selengkapnya tentang fungsi PostgreSQL standar, lihat Fungsi dan Operator dalam dokumentasi PostgreSQL.

Setiap deskripsi fungsi mencatat versi rds_tools ekstensi di mana fungsi menjadi tersedia.

Untuk membuat ekstensi, jalankan perintah berikut.

postgres=> CREATE EXTENSION rds_tools; CREATE EXTENSION

rds_tools.role_password_encryption_type

Mengembalikan metode enkripsi password yang digunakan untuk setiap peran database. Fungsi set-return ini mengecualikan peran RDS-protected sistem dari output. Tersedia dimulai dengan rds_tools ekstensi versi 1.0.

Untuk contoh menggunakan fungsi ini untuk meninjau enkripsi kata sandi sebelum memigrasikan pengguna database ke SCRAM, lihat. Menggunakan SCRAM untuk enkripsi kata sandi PostgreSQL

Prototipe fungsi

rds_tools.role_password_encryption_type()

Argumen

Tidak ada.

Output

  • rolname— Nama peran database.

  • encryption_type— Metode enkripsi kata sandi yang digunakan, seperti md5 atauscram-sha-256.

Contoh penggunaan

=> SELECT * FROM rds_tools.role_password_encryption_type(); rolname | encryption_type ---------------+----------------- postgres | md5 app_user | md5 readonly_user | scram-sha-256 (3 rows)

rds_tools.blue_green_get_status

Memeriksa perintah terbatas yang dijalankan selama operasi blue/green penerapan. Selama blue/green penerapan yang menggunakan replikasi logis, Anda tidak dapat mereplikasi perintah bahasa definisi data (DDL) atau operasi objek besar (LO) antara lingkungan biru dan hijau. Jika perintah terbatas terdeteksi, mulai ulang blue/green penerapan, karena data tidak dapat direplikasi dengan benar ke lingkungan hijau. Tersedia dimulai dengan rds_tools ekstensi versi 1.3.

Prototipe fungsi

rds_tools.blue_green_get_status(command_type)

Argumen

  • command_type— Jenis perintah terbatas untuk memeriksa. Nilai yang valid adalah 'DDL' (perintah bahasa definisi data) dan 'LO' (operasi objek besar).

Output

Sebuah boolean nilai. Mengembalikan true jika perintah terbatas dari jenis tertentu dijalankan selama penerapan, atau false jika tidak ada perintah tersebut terdeteksi.

Contoh penggunaan

=> SELECT rds_tools.blue_green_get_status('DDL'); blue_green_get_status ----------------------- f (1 row)

rds_tools.postgres_get_av_diag

Mengambil informasi diagnostik tentang proses autovacuum yang memblokir atau tertinggal, bersama dengan saran untuk menyelesaikan setiap masalah. Jalankan fungsi set-return ini dalam database dengan ID transaksi tertua untuk hasil yang akurat. Untuk informasi selengkapnya, lihat Mengidentifikasi dan menyelesaikan penghambat vakum agresif.

Tersedia dimulai dengan rds_tools ekstensi versi 1.9.

Prototipe fungsi

rds_tools.postgres_get_av_diag()

Argumen

Tidak ada.

Output

  • blocker— Kategori aktivitas database yang memblokir ruang hampa. Nilainya adalah salah satu dari berikut ini:

    • Pernyataan aktif

    • Idle pada transaksi

    • Transaksi yang disiapkan

    • Slot replikasi logis

    • Baca replika dengan slot replikasi fisik

    • Baca replika dengan replikasi streaming

    • Tabel sementara

  • database— Nama database tempat aktivitas pemblokiran terjadi.

  • blocker_identifier— Pengidentifikasi aktivitas pemblokiran. Nilainya tergantung pada jenis pemblokir:

    • Untuk pernyataan aktif atau sesi idle-in-transaction, ID proses dengan pernyataan SQL-nya.

    • Untuk transaksi yang disiapkan, nama transaksi yang disiapkan.

    • Untuk replika baca, alamat IP replika.

    • Untuk slot replikasi, nama slot replikasi.

  • wait_event— Acara tunggu dari sesi pemblokiran, jika berlaku.

  • autovacuum_lagging_by— Jumlah transaksi yang autovacuum tertinggal untuk kategori tersebut.

  • suggestion— Saran untuk menyelesaikan pemblokir, termasuk nama database, ID proses, dan tindakan yang harus diambil.

  • suggested_action— Berbagai tindakan yang harus diambil untuk menyelesaikan pemblokir.

Contoh penggunaan

=> SELECT * FROM rds_tools.postgres_get_av_diag() ORDER BY autovacuum_lagging_by DESC; blocker | Active statement database | my_database blocker_identifier | SELECT pg_sleep(20000); wait_event | Timeout:PgSleep autovacuum_lagging_by | 568600871 suggestion | Connect to database "my_database", review carefully, and consider terminating the process using suggested_action. suggested_action | {"SELECT pg_terminate_backend(29621);"}

rds_tools.rds_version

Menampilkan RDS untuk versi mesin PostgreSQL untuk instans DB Anda. Fungsi ini membaca informasi versi dari file konfigurasi instans. Tersedia dimulai dengan rds_tools ekstensi versi 1.1.

Prototipe fungsi

rds_tools.rds_version()

Argumen

Tidak ada.

Output

String karakter yang berisi versi mesin.

Contoh penggunaan

=> SELECT rds_tools.rds_version(); rds_version ------------- 18.1.R1 (1 row)

rds_tools.logical_seed_lsn

Mengembalikan nomor urutan log benih logis (LSN) yang mewakili titik di mana replikasi logis menyimpang dari contoh sumber. Gunakan fungsi ini untuk mengelola pengaturan replikasi logis dan memahami titik konsistensi replikasi. Tersedia dimulai dengan rds_tools ekstensi versi 1.2.

Prototipe fungsi

rds_tools.logical_seed_lsn()

Argumen

Tidak ada.

Output

Sebuah pg_lsn nilai.

Contoh penggunaan

=> SELECT rds_tools.logical_seed_lsn(); logical_seed_lsn ------------------ 0/1677B68 (1 row)

rds_tools.db_instance_identifier

Menampilkan pengidentifikasi instans DB. Anda menentukan pengenal ini saat membuat instans DB, dan layanan AWS menggunakannya untuk mengidentifikasi database Anda. Tersedia dimulai dengan rds_tools ekstensi versi 1.2.

Prototipe fungsi

rds_tools.db_instance_identifier()

Argumen

Tidak ada.

Output

String karakter yang berisi pengidentifikasi instans DB.

Contoh penggunaan

=> SELECT rds_tools.db_instance_identifier(); db_instance_identifier ------------------------ my-postgres-instance (1 row)

rds_tools.dbi_resource_id

Menampilkan ID sumber daya instans DB (ID sumber daya DBI) dari instans DB Anda. ID sumber daya DBI adalah pengidentifikasi unik dan tidak dapat diubah yang dihasilkan AWS untuk instans DB. Itu tetap konstan sepanjang masa hidup instance, bahkan jika Anda mengganti nama instance. Gunakan nilai ini untuk menghubungkan aktivitas database dengan CloudTrail log AWS atau layanan pemantauan AWS lainnya. Nilai ini cocok dengan DbiResourceId bidang yang dikembalikan oleh perintah DBInstance RDS API. Tersedia dimulai dengan rds_tools ekstensi versi 1.4.

Prototipe fungsi

rds_tools.dbi_resource_id()

Argumen

Tidak ada.

Output

String karakter yang berisi ID sumber daya DBI.

Contoh penggunaan

=> SELECT rds_tools.dbi_resource_id(); dbi_resource_id ----------------------------------- db-ABC123DEF456GHI789JKL012MNO345P (1 row)

rds_tools.multi_az_db_cluster_source_dbi_resource_id

Menampilkan ID sumber daya DBI dari instance sumber untuk penerapan cluster Multi-AZ DB. Gunakan fungsi ini untuk memahami hubungan antara instance dalam Multi-AZ konfigurasi dan untuk memecahkan masalah skenario replikasi atau failover. Tersedia dimulai dengan rds_tools ekstensi versi 1.4.

Prototipe fungsi

rds_tools.multi_az_db_cluster_source_dbi_resource_id()

Argumen

Tidak ada.

Output

String karakter yang berisi ID sumber daya DBI sumber. Mengembalikan NULL jika instance bukan bagian dari cluster Multi-AZ DB, file konfigurasi tidak ada, atau dbi_resource_id bidang tidak ada dalam konfigurasi.

Contoh penggunaan

=> SELECT rds_tools.multi_az_db_cluster_source_dbi_resource_id(); multi_az_db_cluster_source_dbi_resource_id -------------------------------------------- db-XYZ789ABC123DEF456GHI012JKL345MNO678P (1 row)

rds_tools.show_topologi

Menampilkan metadata topologi untuk Multi-AZ kluster RDS, yang memungkinkan pengalihan cepat dengan menyediakan informasi koneksi untuk semua instance di cluster. Pustaka klien seperti AWS Advanced JDBC Wrapper Driver menggunakan fungsi set-return ini untuk terhubung langsung ke semua instance dalam klaster RDS. Multi-AZ Untuk mengidentifikasi ID sumber daya dari instance penulis, gunakan fungsi ini bersama dengan rds_tools.multi_az_db_cluster_source_dbi_resource_id fungsi. Tersedia dimulai dengan rds_tools ekstensi versi 1.4.

Prototipe fungsi

rds_tools.show_topology([client_identifier])

Argumen

  • client_identifier(opsional) — Pengenal untuk pustaka klien atau proxy yang menanyakan topologi. Parameter ini opsional tetapi direkomendasikan, karena memungkinkan Amazon RDS untuk melacak klien mana yang secara aktif menanyakan topologi dan menyediakan telemetri untuk dukungan klien tambahan.

Output

  • id— ID sumber daya DBI dari setiap instance di cluster RDS. Multi-AZ

  • endpoint— Titik akhir untuk setiap node di cluster.

  • port— Nomor port untuk setiap instance di Multi-AZ cluster RDS.

  • role— Peran node dalam cluster, seperti penulis atau pembaca.

  • status— Status node.

  • version— Versi catatan topologi.

Contoh penggunaan

=> SELECT id, endpoint, port, role FROM rds_tools.show_topology('my-jdbc-app'); id | endpoint | port | role -----------------+-----------------------------------------------------------+------+-------- db-IDENTIFIER-1 | somedb-instance-1.aaaaaaaaaaaa.us-west-2.rds.amazonaws.com | 5432 | writer db-IDENTIFIER-2 | somedb-instance-2.aaaaaaaaaaaa.us-west-2.rds.amazonaws.com | 5432 | reader db-IDENTIFIER-3 | somedb-instance-3.aaaaaaaaaaaa.us-west-2.rds.amazonaws.com | 5432 | reader (3 rows)

rds_tools.pg_ls_multixactdir

Daftar isi pg_multixact direktori, yang menyimpan data multitransaction di PostgreSQL. Gunakan fungsi set-return ini untuk memantau penggunaan multixact, memecahkan masalah terkait multixact, dan memahami pola penyimpanan database. Tersedia dimulai dengan rds_tools ekstensi versi 1.7.

Prototipe fungsi

rds_tools.pg_ls_multixactdir()

Argumen

Tidak ada.

Output

  • name— Nama file atau direktori.

  • size— Ukuran dalam byte.

  • modification— Stempel waktu modifikasi terakhir.

Contoh penggunaan

=> SELECT * FROM rds_tools.pg_ls_multixactdir(); name | size | modification ---------------------------+------+------------------------ pg_multixact/members/ | 4096 | 2026-10-01 19:17:29+00 pg_multixact/members/0000 | 8192 | 2025-08-22 21:53:46+00 pg_multixact/offsets/ | 4096 | 2026-10-01 19:17:29+00 pg_multixact/offsets/0000 | 8192 | 2026-10-01 19:22:38+00 (4 rows)