View a markdown version of this page

Tugas umum untuk database - Amazon Relational Database Service

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

Tugas umum untuk database

Anda dapat membuat, menghapus, atau memulihkan database pada RDS untuk instans DB Db2. Membuat, menghapus, atau memulihkan database memerlukan SYSADM otoritas tingkat yang lebih tinggi, yang tidak tersedia untuk pengguna master. Sebagai gantinya, gunakan prosedur-prosedur tersimpan Amazon RDS.

Anda juga dapat melakukan tugas manajemen umum seperti pemantauan, pemeliharaan, dan pengumpulan informasi tentang database Anda.

Membuat basis data

Untuk membuat database pada RDS untuk instans DB Db2, panggil prosedur ter rdsadmin.create_database simpan. Lihat informasi yang lebih lengkap di CREATE DATABASE command dalam dokumentasi IBM Db2.

catatan

Jika Anda berencana untuk memodifikasi db2_compatibility_vector parameter, ubah parameter sebelum membuat database. Untuk informasi selengkapnya, lihat Mengatur parameter db2_compatibility_vector.

Untuk membuat basis data
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Buat database dengan meneleponrdsadmin.create_database. Untuk informasi selengkapnya, lihat rdsadmin.create_database.

    db2 "call rdsadmin.create_database( 'database_name', 'database_page_size', 'database_code_set', 'database_territory', 'database_collation', 'database_autoconfigure_str', 'database_non-restrictive')"
  3. (Opsional) Buat database tambahan dengan memanggil rdsadmin.create_database setiap database yang ingin Anda buat. Setiap instance DB Db2 dapat berisi hingga 50 database. Untuk informasi selengkapnya, lihat rdsadmin.create_database.

    db2 "call rdsadmin.create_database('database_name')"
  4. (Opsional) Konfirmasikan bahwa database Anda dibuat dengan menggunakan salah satu metode berikut:

    • Panggil rdsadmin.list_databases. Untuk informasi selengkapnya, lihat rdsadmin.list_databases.

    • Jalankan perintah SQL berikut:

      db2 "select varchar(r.task_type,25) as task_type, r.database_name, varchar(r.lifecycle,15) as lifecycle, r.created_at, r.database_name, varchar(bson_to_json(task_input_params),256) as input_params, varchar(r.task_output,1024) as task_output from table(rdsadmin.get_task_status(null,null,'create_database')) as r order by created_at desc"

Mengkonfigurasi pengaturan untuk database

Untuk mengonfigurasi pengaturan database pada RDS untuk instans DB Db2, panggil prosedur tersimpanrdsadmin.set_configuration. Misalnya, Anda dapat mengonfigurasi jumlah buffer atau manipulator buffer yang akan dibuat selama operasi pemulihan.

Untuk mengkonfigurasi pengaturan untuk database
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. (Opsional) Periksa pengaturan konfigurasi Anda saat ini dengan meneleponrdsadmin.show_configuration. Untuk informasi selengkapnya, lihat rdsadmin.show_configuration.

    db2 "call rdsadmin.show_configuration('name')"
  3. Konfigurasikan pengaturan untuk database dengan memanggilrdsadmin.set_configuration. Untuk informasi selengkapnya, lihat rdsadmin.set_konfigurasi.

    db2 "call rdsadmin.set_configuration( 'name', 'value')"

Memodifikasi parameter database

Amazon RDS untuk Db2 menggunakan tiga jenis parameter: parameter konfigurasi manajer database, variabel registri, dan parameter konfigurasi database. Anda dapat memperbarui dua jenis pertama melalui grup parameter dan tipe terakhir melalui prosedur rdsadmin.update_db_parameter tersimpan.

catatan

Anda hanya dapat mengubah nilai parameter yang ada. Anda tidak dapat menambahkan parameter baru yang tidak didukung RDS untuk Db2.

Untuk informasi lebih lanjut parameter ini dan cara memodifikasi nilainya, lihatAmazon RDS untuk parameter Db2.

Mengkonfigurasi retensi log

Untuk mengonfigurasi berapa lama Amazon RDS menyimpan file log untuk database RDS for Db2 Anda, panggil prosedur ter rdsadmin.set_archive_log_retention simpan.

Untuk mengonfigurasi retensi log untuk database
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. (Opsional) Periksa konfigurasi Anda saat ini untuk retensi log dengan meneleponrdsadmin.show_archive_log_retention. Untuk informasi selengkapnya, lihat rdsadmin.show_archive_log_retensi.

    db2 "call rdsadmin.show_archive_log_retention( ?, 'database_name')"
  3. Konfigurasikan retensi log untuk database dengan memanggilrdsadmin.set_archive_log_retention. Untuk informasi selengkapnya, lihat rdsadmin.set_archive_log_retensi.

    db2 "call rdsadmin.set_archive_log_retention( ?, 'database_name', 'archive_log_retention_hours')"

Informasi log daftar

Untuk mencantumkan detail tentang file log arsip, termasuk detail seperti ukuran penyimpanan total yang digunakan, panggil prosedur rdsadmin.list_archive_log_information tersimpan.

Untuk mencantumkan informasi log untuk database
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Kembalikan daftar informasi file log dengan memanggilrdsadmin.list_archive_log_information. Untuk informasi selengkapnya, lihat rdsadmin.list_archive_log_information.

    db2 "call rdsadmin.list_archive_log_information( ?, 'database_name')"

Menggunakan kontrol akses berbutir halus (FGAC)

Untuk menggunakan perintah kontrol akses halus untuk mengontrol akses ke data tabel dalam database pada RDS untuk instance DB Db2, panggil prosedur tersimpan. rdsadmin.fgac_command Anda mungkin ingin menggunakan FGAC untuk membatasi akses ke data berdasarkan peran pengguna atau atribut data. Misalnya, Anda dapat membatasi akses ke data perawatan kesehatan pasien berdasarkan jenis data atau ke penyedia perawatan medis tertentu.

Untuk menggunakan kontrol akses halus untuk mengontrol akses ke data tabel dalam database
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Jalankan berbagai perintah kontrol akses halus dengan memanggil. rdsadmin.fgac_command Untuk informasi selengkapnya, lihat rdsadmin.fgac_perintah.

    db2 "call rdsadmin.fgac_command( ?, 'database_name', 'fgac_command')"

Menonaktifkan database

Untuk menonaktifkan database pada RDS untuk instans DB Db2, panggil prosedur ter rdsadmin.deactivate_database simpan.

Secara default, Amazon RDS mengaktifkan database saat Anda membuat database di RDS untuk instans DB Db2. Anda dapat menonaktifkan database yang jarang digunakan untuk menghemat sumber daya memori.

Untuk menonaktifkan database
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Nonaktifkan database dengan meneleponrdsadmin.deactivate_database. Untuk informasi selengkapnya, lihat rdsadmin.deactivate_database.

    db2 "call rdsadmin.deactivate_database( ?, 'database_name')"

Mengaktifkan database

Untuk mengaktifkan database pada RDS mandiri untuk instans DB Db2, panggil prosedur tersimpanrdsadmin.activate_database.

Secara default, Amazon RDS mengaktifkan database saat Anda membuat database di RDS untuk instans DB Db2. Anda dapat menonaktifkan database yang jarang digunakan untuk menghemat sumber daya memori, dan kemudian mengaktifkan database yang dinonaktifkan.

Untuk mengaktifkan database
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Aktifkan database dengan meneleponrdsadmin.activate_database. Untuk informasi selengkapnya, lihat rdsadmin.activate_database.

    db2 "call rdsadmin.activate_database( ?, 'database_name')"

Mengaktifkan kembali database

Untuk mengaktifkan kembali database pada sumber replika RDS untuk instance DB Db2, panggil prosedur ter rdsadmin.reactivate_database simpan. Setelah Anda membuat perubahan pada konfigurasi database, Anda mungkin perlu mengaktifkan kembali database pada RDS untuk instans DB Db2. Untuk menentukan apakah Anda perlu mengaktifkan kembali database, sambungkan ke database dan jalankandb2 get db cfg show detail.

Anda juga dapat memanggil prosedur tersimpan ini untuk mengaktifkan kembali database pada RDS mandiri untuk instans DB Db2 setelah Anda membuat perubahan pada konfigurasi database. Atau, Anda dapat mengaktifkan kembali database pada RDS mandiri untuk instans DB Db2 dengan terlebih dahulu memanggil prosedur tersimpan rdsadmin.deactivate_database dan kemudian prosedur ter rdsadmin.activate_database simpan. Untuk informasi selengkapnya, lihat Menonaktifkan database dan Mengaktifkan database.

Untuk mengaktifkan kembali database
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Aktifkan kembali database dengan menelep rdsadmin.reactivate_database on. Untuk informasi selengkapnya, lihat rdsadmin.reactivate_database.

    db2 "call rdsadmin.reactivate_database( ?, 'database_name')"

Menghapus database

Untuk menghapus database dari RDS untuk instans DB Db2, panggil prosedur ter rdsadmin.drop_database simpan. Untuk informasi selengkapnya, lihat Menjatuhkan database dalam IBM Db2 dokumentasi.

catatan

Anda dapat menghapus database dengan memanggil prosedur tersimpan hanya jika kondisi tertentu terpenuhi. Untuk informasi lebih lanjut, lihat Catatan penggunaan untukrdsadmin.drop_database.

Untuk menghapus database
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Jatuhkan database dengan meneleponrdsadmin.drop_database. Untuk informasi selengkapnya, lihat rdsadmin.drop_database.

    db2 "call rdsadmin.drop_database('database_name')"

Membuat backup basis data

Untuk mencadangkan database di instans RDS for Db2 DB ke Amazon S3, panggil prosedur ter rdsadmin.backup_database simpan. Untuk informasi selengkapnya, lihat perintah BACKUP DATABASE dalam IBM Db2 dokumentasi.

catatan

Prosedur tersimpan ini menggunakan integrasi dengan Amazon S3. Pastikan Anda telah mengkonfigurasi integrasi sebelum melanjutkan. Untuk informasi selengkapnya, lihat Mengintegrasikan Amazon RDS untuk instans Db2 DB dengan Amazon S3.

Untuk membuat cadangan database
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Buat titik akhir gateway VPC untuk S3. Jika Anda sudah memiliki titik akhir gateway VPC untuk S3, lewati ke Langkah 4.

    Agar instance DB RDS untuk Db2 dapat berinteraksi dengan Amazon S3, Anda harus memiliki VPC dan titik akhir gateway Amazon S3 untuk digunakan subnet pribadi. Untuk informasi selengkapnya, lihat Langkah 1: Buat titik akhir gateway VPC untuk Amazon S3.

  3. Konfirmasikan titik akhir gateway VPC untuk S3. Untuk informasi selengkapnya, lihat Langkah 2: Konfirmasikan bahwa titik akhir gateway VPC Anda untuk Amazon S3 ada.

  4. Cadangkan database dengan meneleponrdsadmin.backup_database. Untuk informasi selengkapnya, lihat rdsadmin.backup_database.

    db2 "call rdsadmin.backup_database( ?, 'database_name', 's3_bucket_name', 's3_prefix', 'backup_type', 'compression_option', 'util_impact_priority', 'num_files', 'parallelism', 'num_buffers')"
  5. Akhiri koneksi Anda.

    terminate
  6. (Opsional) Konfirmasikan bahwa file cadangan diunggah ke bucket Amazon S3 Anda di bawahs3_prefix/dbi_resource_id/db_name. Jika file tidak muncul dis3_prefix/dbi_resource_id/db_name, periksa status pencadangan database Anda untuk mengidentifikasi masalah apa pun. Untuk informasi selengkapnya, lihat rdsadmin.get_task_status. Jika Anda tidak dapat menyelesaikan masalah yang teridentifikasi, hubungi AWS Dukungan.

  7. (Opsional) Setelah pencadangan ke Amazon S3 selesai, Anda dapat memulihkan cadangan ke RDS untuk instans DB Db2 atau ke lokasi lain seperti server lokal. Untuk informasi tentang memulihkan ke RDS untuk instans DB Db2, lihat. Memulihkan basis data

Menyalin log arsip ke Amazon S3

Log arsip Db2 sekarang dapat disalin dari instance RDS untuk Db2 DB Anda ke Amazon S3. Log arsip yang dikombinasikan dengan cadangan asli yang dibuat menggunakan rdsadmin.backup_database dapat digunakan untuk memulihkan dan meneruskan database untuk menunjuk waktu pada RDS lain untuk instans Db2 atau database EC2.

Sebelum mengkonfigurasi fitur ini, gunakan prosedur tersimpan rdsadmin.backup_database untuk mengatur RDS untuk database Db2.

Fitur ini beroperasi pada tingkat instance RDS untuk Db2 DB, meskipun penyalinan log arsip dapat diaktifkan atau dinonaktifkan per database.

Untuk mengonfigurasi penyalinan log arsip ke Amazon S3
  1. Hubungkan ke rdsadmin database menggunakan nama pengguna utama dan kata sandi utama untuk RDS Anda untuk Db2 DB Instance. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Siapkan cadangan log arsip ke S3 dengan memanggilrdsadmin.set_konfigurasi.

    db2 "call rdsadmin.set_configuration( 'name', 'value')"

    Contoh:

    db2 "call rdsadmin.set_configuration('ARCHIVE_LOG_COPY_TARGET_S3_ARN', 'arn:aws:s3:::my_rds_db2_backups/archive-log-copy/')"
  3. Aktifkan penyalinan log arsip untuk database dengan memanggilrdsadmin.enable_archive_log_copy. Ganti database_name dengan nama database Anda.

    db2 "call rdsadmin.enable_archive_log_copy(?, 'database_name')"
  4. Demikian pula, untuk menonaktifkan penyalinan log arsip untuk database, hubungirdsadmin.disable_archive_log_copy.

    db2 "call rdsadmin.disable_archive_log_copy(?, 'database_name')"
  5. Konfirmasikan status salinan log arsip dengan meneleponrdsadmin.list_databases.

    db2 "select * from table(rdsadmin.list_databases())"

    Sampel keluaran:

    DATABASE_NAME CREATE_TIME DATABASE_UNIQUE_ID ARCHIVE_LOG_RETENTION_HOURS ARCHIVE_LOG_COPY ARCHIVE_LOG_LAST_UPLOAD_FILE ARCHIVE_LOG_LAST_UPLOAD_FILE_TIME ARCHIVE_LOG_COPY_STATUS --------------- -------------------------- -------------------------------------------------- --------------------------- ---------------- ---------------------------- --------------------------------- ------------------------------ RDSADMIN 2026-01-06-02.03.42.569069 RDSADMIN 0 DISABLED - - - FOO 2026-01-06-02.13.42.885650 F0D81C7E-7213-4565-B376-4F33FCF420E3 7 ENABLED S0006536.LOG 2026-01-28-19.15.10.000000 UPLOADING CODEP 2026-01-14-19.42.42.508476 106EEF95-6E30-4FFF-85AE-B044352DF095 0 DISABLED - - - ...

Menyalin log aktif ke Amazon S3

Anda dapat menyalin file log transaksi aktif dari database RDS for Db2 ke Amazon S3. Log aktif berisi transaksi yang dilakukan baru-baru ini yang belum diarsipkan. Dengan salinan log aktif, Anda dapat memulihkan transaksi di luar apa yang telah diunggah salinan log arsip.

catatan

Konfigurasikan salinan log arsip untuk database sebelum Anda menyalin log aktif. Untuk informasi selengkapnya, lihat Menyalin log arsip ke Amazon S3.

Untuk menyalin log aktif ke Amazon S3
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Salin log aktif dengan meneleponrdsadmin.copy_active_logs. Ganti database_name dengan nama database Anda. Untuk informasi selengkapnya, lihat rdsadmin.copy_active_logs.

    db2 "call rdsadmin.copy_active_logs(?, 'database_name')"

    File log aktif diunggah ke bucket Amazon S3 Anda di bawah s3_prefix rds-archive-log-copy/ dbi_resource_id / database_name - database_unique_id /active_logs_task_ task_id/. Awalan Amazon S3 menggunakan konfigurasi untukARCHIVE_LOG_COPY_TARGET_S3_ARN.

Untuk memulihkan database menggunakan log aktif
  1. Kembalikan database dari cadangan asli. Untuk informasi selengkapnya, lihat Memulihkan basis data.

  2. Gulung ke depan menggunakan log arsip dengan dis complete_rollforward etel keFALSE. Untuk informasi selengkapnya, lihat rdsadmin.rollforward_database.

  3. Gulung ke depan menggunakan log aktif dengan active_logs_task_ task_id menentukan awalan ke akhir log, dan atur complete_rollforward keTRUE. Untuk informasi selengkapnya, lihat rdsadmin.rollforward_database.

Memulihkan basis data

Untuk memindahkan database dari bucket Amazon S3 ke instans RDS for Db2 DB, panggil prosedur tersimpanrdsadmin.restore_database. Lihat informasi yang lebih lengkap di RESTORE DATABASE command dalam dokumentasi IBM Db2.

Untuk memulihkan database
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. (Opsional) Periksa pengaturan konfigurasi Anda saat ini untuk mengoptimalkan operasi pemulihan dengan meneleponrdsadmin.show_configuration. Untuk informasi selengkapnya, lihat rdsadmin.show_configuration.

    db2 "call rdsadmin.show_configuration('name')"
  3. Konfigurasikan pengaturan untuk mengoptimalkan operasi pemulihan dengan memanggilrdsadmin.set_configuration. Mengatur nilai-nilai ini secara eksplisit dapat meningkatkan kinerja saat memulihkan database dengan volume data yang besar. Untuk informasi selengkapnya, lihat rdsadmin.set_konfigurasi.

    db2 "call rdsadmin.set_configuration( 'name', 'value')"
  4. Kembalikan database dengan meneleponrdsadmin.restore_database. Untuk informasi selengkapnya, lihat rdsadmin.restore_database.

    db2 "call rdsadmin.restore_database( ?, 'database_name', 's3_bucket_name', 's3_prefix', restore_timestamp, 'backup_type')"
  5. (Opsional) Konfirmasikan bahwa database Anda telah dipulihkan dengan memanggil rdsadmin.list_databases dan memeriksa apakah database yang dipulihkan terdaftar. Untuk informasi selengkapnya, lihat rdsadmin.list_databases.

  6. Bawa database kembali online dan terapkan log transaksi tambahan dengan meneleponrdsadmin.rollforward_database. Untuk informasi selengkapnya, lihat rdsadmin.rollforward_database.

    db2 "call rdsadmin.rollforward_database( ?, 'database_name', 's3_bucket_name', s3_prefix, 'rollforward_to_option', 'complete_rollforward')"
  7. (Opsional) Periksa status prosedur ter rdsadmin.rollforward_database simpan dengan memanggil prosedur rdsadmin.rollforward_status tersimpan.

  8. Jika Anda complete_rollforward mengatur FALSE pada langkah sebelumnya, maka Anda harus menyelesaikan membawa database kembali online dengan meneleponrdsadmin.complete_rollforward. Untuk informasi selengkapnya, lihat rdsadmin.complete_rollforward.

    db2 "call rdsadmin.complete_rollforward( ?, 'database_name')"
  9. (Opsional) Periksa status prosedur ter rdsadmin.complete_rollforward simpan dengan memanggil prosedur rdsadmin.rollforward_status tersimpan.

Daftar database

Anda dapat membuat daftar semua database yang berjalan di Amazon RDS untuk Db2 dengan memanggil fungsi yang ditentukan rdsadmin.list_databases pengguna.

Untuk membuat daftar database Anda
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Daftar database Anda dengan meneleponrdsadmin.list_databases. Untuk informasi selengkapnya, lihat rdsadmin.list_databases.

    db2 "select * from table(rdsadmin.list_databases())"

Mengumpulkan informasi tentang database

Untuk mengumpulkan informasi tentang database pada RDS untuk instans DB Db2, panggil prosedur tersimpanrdsadmin.db2pd_command. Informasi ini dapat membantu memantau database Anda atau memecahkan masalah.

Untuk mengumpulkan informasi tentang database
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Kumpulkan informasi tentang database dengan meneleponrdsadmin.db2pd_command. Untuk informasi selengkapnya, lihat rdsadmin.db2pd_perintah.

    db2 "call rdsadmin.db2pd_command('db2pd_cmd')"

Memaksa aplikasi keluar dari database

Untuk memaksa aplikasi keluar dari database pada RDS untuk instans DB Db2, panggil prosedur tersimpanrdsadmin.force_application. Sebelum Anda melakukan pemeliharaan pada database Anda, paksa aplikasi keluar dari database Anda.

Untuk memaksa aplikasi keluar dari database
  1. Hubungi basis data rdsadmin dengan menggunakan nama pengguna master dan kata sandi master untuk instans basis data RDS for Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Memaksa aplikasi keluar dari database dengan memanggilrdsadmin.force_application. Untuk informasi selengkapnya, lihat rdsadmin.force_aplikasi.

    db2 "call rdsadmin.force_application( ?, 'applications')"

Menghasilkan laporan performa

Anda dapat menghasilkan laporan performa dengan prosedur atau skrip. Lihat informasi tentang penggunaan prosedur di DBSUMMARY procedure ‐ Generate a summary report of system and application performance metrics dalam dokumentasi IBM Db2.

Db2 menyertakan file db2mon.sh dalam direktori ~sqllib/sample/perf-nya. Menjalankan skrip akan menghasilkan laporan metrik SQL yang berbiaya rendah dan ekstensif. Untuk mengunduh file db2mon.sh dan file skrip terkait, lihat direktori perf di repositori GitHub db2-samples IBM.

Untuk menghasilkan laporan performa dengan skrip
  1. Hubungkan ke database Db2 Anda menggunakan nama pengguna utama dan kata sandi utama untuk RDS untuk instans DB Db2 Anda. Dalam contoh berikut, ganti master_username dan master_password dengan informasi Anda sendiri.

    db2 connect to rdsadmin user master_username using master_password
  2. Buat kolam penyangga bernama db2monbp dengan ukuran halaman 4096 dengan memanggil rdsadmin.create_bufferpool. Untuk informasi selengkapnya, lihat rdsadmin.create_bufferpool.

    db2 "call rdsadmin.create_bufferpool('database_name','db2monbp',4096)"
  3. Buat ruang tabel sementara bernama db2montmptbsp yang menggunakan kolam penyangga db2monbp dengan memanggil rdsadmin.create_tablespace. Untuk informasi selengkapnya, lihat rdsadmin.create_tablespace.

    db2 "call rdsadmin.create_tablespace('database_name',\ 'db2montmptbsp','db2monbp',4096,1000,100,'T')"
  4. Buka skrip db2mon.sh, dan ubah baris tentang menghubungi basis data.

    1. Hapus baris berikut.

      db2 -v connect to $dbName
    2. Ganti baris pada langkah sebelumnya dengan baris berikut. Dalam contoh berikut, ganti master_username dan master_password dengan nama pengguna utama dan kata sandi utama untuk RDS untuk instans DB Db2 Anda.

      db2 -v connect to $dbName user master_username using master_password
    3. Hapus baris berikut.

      db2 -v create bufferpool db2monbp db2 -v create user temporary tablespace db2montmptbsp bufferpool db2monbp db2 -v drop tablespace db2montmptbsp db2 -v drop bufferpool db2monbp
  5. Jalankan skrip db2mon.sh untuk menghasilkan laporan pada interval tertentu. Dalam contoh berikut, ganti absolute_path dengan jalur lengkap ke file skrip, rds_database_alias dengan nama database Anda, dan seconds dengan jumlah detik (0 hingga 3600) antara pembuatan laporan.

    absolute_path/db2mon.sh rds_database_alias seconds | tee -a db2mon.out

    Contoh

    Contoh berikut menunjukkan bahwa file skrip terletak di perf direktori di bawah home direktori.

    /home/db2inst1/sqllib/samples/perf/db2mon.sh rds_database_alias seconds | tee -a db2mon.out
  6. Jatuhkan kumpulan buffer dan tablespace yang dibuat untuk file. db2mon.sh Dalam contoh berikut, ganti master_username dan master_password dengan nama pengguna utama dan kata sandi utama untuk RDS untuk instans DB Db2 Anda. Ganti database_name dengan nama database Anda. Untuk informasi selengkapnya, lihat rdsadmin.drop_tablespace dan rdsadmin.drop_bufferpool.

    db2 connect to rdsadmin user master_username using master_password db2 "call rdsadmin.drop_tablespace('database_name','db2montmptbsp')" db2 "call rdsadmin.drop_bufferpool('database_name','db2monbp')"

Menghasilkan laporan db2exfmt

db2exfmtadalah alat penganalisis kinerja kueri yang dapat Anda gunakan untuk men-debug masalah kinerja kueri di database RDS untuk Db2.

Prasyarat

Sebelum menggunakandb2exfmt, pastikan persyaratan berikut terpenuhi:

Akses basis data
  • Jalan db2exfmt kan hanya terhadap database pengguna.

  • Tidak dapat berjalan db2exfmt melawan RDSADMIN. Ini akan menghasilkan kesalahan otorisasi (SQL0551N).

Pengaturan klien
  • RDS target untuk database Db2 harus dikatalogkan dan dapat diakses dari mesin klien tempat Anda menjalankan perintah. db2exfmt

  • Instalasi klien IBM tidak mengemas db2exfmt biner. Diperlukan instalasi Db2 lengkap, seperti Edisi Komunitas Db2.

Konfirmasikan bahwa db2exfmt biner tersedia di mesin klien:

ls -l DB2_INSTALL_PATH/bin/db2exfmt
Untuk menjalankan db2exfmt
  1. Buat skrip shell (misalnya,db2exfmt.sh) untuk menjalankan db2exfmt alat.

    #!/bin/bash MYUSER=master_username # Master user name MYPASS=master_password # Master user password DBNAME=database_name # Database name QRY=q1.sql # Filename that contains the SQL statement OUTPUT_FL=my_db2exfmt.out # Filename where db2exfmt output will be saved echo "select * from MASTERUSER.NAMES ;" > $QRY db2 connect to $DBNAME user $MYUSER using $MYPASS db2 set current query optimization = 5 db2 set current explain mode explain db2 -tvf $QRY db2 set current explain mode no db2exfmt -d $DBNAME -g TIC -w -1 -n % -s % -# 0 -u $MYUSER $MYPASS -o ${OUTPUT_FL}

    Skrip ini melakukan hal berikut:

    • Terhubung ke RDS untuk database Db2

    • Menetapkan tingkat pengoptimalan kueri

    • Mengaktifkan mode penjelasan untuk menangkap rencana eksekusi kueri

    • Mengeksekusi query SQL

    • Ber db2exfmt jalan untuk menghasilkan laporan analisis yang diformat

    Untuk daftar lengkap dan penjelasan parameter db2exfmt perintah, lihat db2exfmt - Jelaskan perintah format tabel dalam IBM Db2 dokumentasi.

  2. Jalankan skrip:

    $ ./db2exfmt.sh

Contoh output:

Database Connection Information Database server = DB2/LINUXX8664 11.5.9.0 SQL authorization ID = MASTERUS... Local database alias = UHPROD01 DB20000I The SQL command completed successfully. DB20000I The SQL command completed successfully. select * from MASTERUSER.NAMES SQL0217W The statement was not executed as only Explain information requests are being processed. SQLSTATE=01604 DB20000I The SQL command completed successfully. DB2 Universal Database Version 11.5, 5622-044 (c) Copyright IBM Corp. 1991, 2019 Licensed Material - Program Property of IBM IBM DATABASE 2 Explain Table Format Tool Connecting to the Database as user masteruser. Connect to Database Successful. Using SYSTOOLS schema for Explain tables. Output is in my_db2exfmt.out. Executing Connect Reset -- Connect Reset was Successful.

Jika SYSTOOLS.EXPLAIN* tabel tidak ditemukan pada database target, buat tabel jelaskan dengan menjalankan perintah berikut:

db2 -v CONNECT TO database_name user master_username using master_password db2 -v "CALL SYSPROC.SYSINSTALLOBJECTS('EXPLAIN', 'C', CAST (NULL AS VARCHAR(128)), CAST (NULL AS VARCHAR(128)))"