Database Migration Service memanfaatkan Oracle LogMiner API, yang merupakan bagian dari Oracle Database, untuk mengkueri file log pengulangan yang diarsipkan. File ini berisi informasi tentang histori aktivitas di database. Setiap database Oracle memiliki sekumpulan file log redo online. Semua data transaksi di database dicatat dalam file.
Saat file log redo saat ini dirotasi (atau dialihkan), proses arsip akan menyalin file ini ke penyimpanan arsip. Sementara itu, database mempromosikan file lain untuk ditayangkan sebagai file saat ini.
Saat menggunakan Oracle LogMiner API, Database Migration Service tidak mengakses file log redo online, tetapi hanya berfungsi dengan file log yang diarsipkan. Mengakses file log redo yang diarsipkan secara inheren akan menambahkan beberapa latensi ke proses migrasi. Halaman ini menjelaskan konfigurasi yang disarankan untuk database sumber Oracle Anda untuk mengontrol dampak latensi.
Menetapkan parameter konfigurasi untuk file log redo Oracle
Desain ini memiliki implikasi yang mendalam terhadap potensi latensi Database Migration Service. Jika file log redo Oracle sering diubah atau disimpan dalam ukuran yang lebih kecil (misalnya, < 256 MB), Database Migration Service dapat mereplikasi perubahan dengan lebih cepat.
Ada parameter konfigurasi yang dapat Anda tetapkan untuk mengontrol frekuensi rotasi file log:
Ukuran: File log redo online memiliki ukuran minimum 4 MB, dan ukuran default bergantung pada sistem operasi Anda. Anda dapat mengubah ukuran file log dengan membuat file log online baru dan menghapus file log lama.
Untuk menemukan ukuran file log redo online, jalankan kueri berikut:
SELECT GROUP#, STATUS, BYTES/1024/1024 MB FROM V$LOG
- Waktu: Parameter
ARCHIVE_LAG_TARGET
memberikan batas atas durasi (dalam detik) log saat ini dari database utama.Ini bukan waktu peralihan log yang tepat, karena memperhitungkan waktu yang diperlukan untuk mengarsipkan log. Nilai defaultnya adalah
0
(tidak ada batas atas), dan nilai yang wajar sebesar1800
(atau 30 menit) atau kurang disarankan.Anda dapat menggunakan perintah berikut untuk menetapkan parameter
ARCHIVE_LAG_TARGET
, baik selama inisialisasi maupun saat database aktif:SHOW PARAMETER ARCHIVE_LAG_TARGET;
Perintah ini menampilkan jumlah detik yang diperlukan agar log saat ini dapat diperluas.ALTER SYSTEM SET ARCHIVE_LAG_TARGET = number-of-seconds;
Gunakan perintah ini untuk mengubah batas atas.Misalnya, untuk menetapkan batas atas ke 10 menit (atau 600 detik), masukkan
ALTER SYSTEM SET ARCHIVE_LAG_TARGET = 600;