Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menyiapkan Oracle GoldenGate
Untuk mengatur Oracle GoldenGate menggunakan AmazonRDS, konfigurasikan hub pada EC2 instans Amazon, lalu konfigurasikan basis data sumber dan target. Bagian berikut memberikan contoh cara mengatur Oracle untuk digunakan dengan Amazon GoldenGate RDS untuk Oracle.
Topik
Menyiapkan GoldenGate hub Oracle di Amazon EC2
Untuk membuat GoldenGate hub Oracle di EC2 instans Amazon, pertama-tama Anda membuat EC2 instans Amazon dengan instalasi klien penuh RDBMS Oracle. EC2Instans Amazon juga harus menginstal GoldenGate perangkat lunak Oracle. Versi GoldenGate perangkat lunak Oracle bergantung pada versi basis data sumber dan target. Untuk informasi selengkapnya tentang menginstal Oracle GoldenGate, lihat dokumentasi Oracle GoldenGate
EC2Instans Amazon yang berfungsi sebagai GoldenGate hub Oracle menyimpan dan memproses informasi transaksi dari database sumber menjadi file jejak. Untuk mendukung proses ini, pastikan Anda memenuhi persyaratan berikut:
-
Anda telah mengalokasikan penyimpanan yang cukup untuk file jejak.
-
EC2Instans Amazon memiliki kekuatan pemrosesan yang cukup untuk mengelola jumlah data.
-
EC2Instance memiliki memori yang cukup untuk menyimpan informasi transaksi sebelum ditulis ke file trail.
Untuk menyiapkan hub arsitektur GoldenGate klasik Oracle pada instans Amazon EC2
-
Buat subdirektori di direktori GoldenGate Oracle.
Di shell baris EC2 perintah Amazon, mulai
ggsci
, penerjemah GoldenGate perintah Oracle. PerintahCREATE SUBDIRS
membuat subdirektori di bawah direktori/gg
untuk file parameter, laporan, dan titik pemeriksaan.prompt$ cd /gg prompt$ ./ggsci GGSCI> CREATE SUBDIRS
-
Konfigurasikan file
mgr.prm
.Contoh berikut menambahkan baris ke file
$GGHOME/dirprm/mgr.prm
.PORT 8199 PurgeOldExtracts ./dirdat/*, UseCheckpoints, MINKEEPDAYS 5
-
Mulai pengelola.
Contoh berikut memulai perintah
ggsci
dan menjalankan perintahstart mgr
.GGSCI> start mgr
GoldenGate Hub Oracle sekarang siap digunakan.
Menyiapkan database sumber untuk digunakan dengan Oracle GoldenGate di Amazon RDS
Selesaikan tugas-tugas berikut untuk menyiapkan database sumber untuk digunakan dengan Oracle GoldenGate.
Langkah-langkah penyiapan
- Langkah 1: Mengaktifkan pencatatan log tambahan pada basis data sumber
- Langkah 2: Atur parameter REPLICATION inisialisasi ENABLE GOLDENGATE _ _ ke true
- Langkah 3: Menetapkan periode retensi log pada basis data sumber
- Langkah 4: Buat akun GoldenGate pengguna Oracle di database sumber
- Langkah 5: Memberi hak akses akun pengguna pada basis data sumber
- Langkah 6: Tambahkan TNS alias untuk database sumber
Langkah 1: Mengaktifkan pencatatan log tambahan pada basis data sumber
Untuk mengaktifkan logging tambahan tingkat basis data minimum, jalankan prosedur PL/berikut: SQL
EXEC rdsadmin.rdsadmin_util.alter_supplemental_logging(p_action => 'ADD')
Langkah 2: Atur parameter REPLICATION inisialisasi ENABLE GOLDENGATE _ _ ke true
Ketika Anda mengatur parameter inisialisasi ENABLE_GOLDENGATE_REPLICATION
ke true
, pengaturan ini memungkinkan layanan basis data untuk mendukung replikasi logis. Jika database sumber Anda berada di instans Amazon RDS DB, pastikan Anda memiliki grup parameter yang ditetapkan ke instans DB dengan parameter ENABLE_GOLDENGATE_REPLICATION
inisialisasi disetel ketrue
. Untuk informasi parameter inisialisasi ENABLE_GOLDENGATE_REPLICATION
selengkapnya, lihat dokumentasi Oracle Database
Langkah 3: Menetapkan periode retensi log pada basis data sumber
Pastikan Anda mengonfigurasi basis data sumber untuk mempertahankan log pengulangan yang diarsipkan. Pertimbangkan panduan-panduan berikut ini:
-
Tentukan durasi retensi log dalam jam. Nilai minimumnya adalah satu jam.
-
Tetapkan durasi untuk melebihi potensi waktu henti instans DB sumber, potensi periode komunikasi, dan periode potensi masalah jaringan apa pun untuk instans sumber. Durasi seperti itu memungkinkan Oracle GoldenGate memulihkan log dari instance sumber sesuai kebutuhan.
-
Pastikan Anda memiliki penyimpanan yang cukup di instans Anda untuk file.
Misalnya, setel periode retensi untuk log pengulangan yang diarsipkan menjadi 24 jam.
EXEC rdsadmin.rdsadmin_util.set_configuration('archivelog retention hours',24)
Jika Anda belum mengaktifkan retensi log, atau jika nilai retensi terlalu kecil, Anda akan menerima pesan kesalahan yang mirip dengan berikut ini.
2022-03-06 06:17:27 ERROR OGG-00446 error 2 (No such file or directory) opening redo log /rdsdbdata/db/GGTEST3_A/onlinelog/o1_mf_2_9k4bp1n6_.log for sequence 1306 Not able to establish initial position for begin time 2022-03-06 06:16:55.
Karena instans DB Anda menyimpan log pengulangan yang diarsipkan, pastikan Anda memiliki ruang yang cukup untuk file tersebut. Untuk melihat berapa banyak ruang yang telah Anda gunakan di yang terakhir num_hours
jam, jalankan kueri berikut, ganti num_hours
dengan jumlah jam.
SELECT SUM(BLOCKS * BLOCK_SIZE) BYTES FROM V$ARCHIVED_LOG WHERE NEXT_TIME>=SYSDATE-
num_hours
/24 AND DEST_ID=1;
Langkah 4: Buat akun GoldenGate pengguna Oracle di database sumber
Oracle GoldenGate berjalan sebagai pengguna database dan memerlukan hak database yang sesuai untuk mengakses redo dan arsip redo log untuk database sumber. Untuk menyediakan kebutuhan ini, buat akun pengguna di basis data sumber. Untuk informasi selengkapnya tentang izin untuk akun GoldenGate pengguna Oracle, lihat dokumentasi Oracle
Pernyataan berikut membuat akun pengguna dengan nama oggadm1
.
CREATE TABLESPACE administrator; CREATE USER oggadm1 IDENTIFIED BY "
password
" DEFAULT TABLESPACE ADMINISTRATOR TEMPORARY TABLESPACE TEMP; ALTER USER oggadm1 QUOTA UNLIMITED ON administrator;
catatan
Tetapkan kata sandi selain prompt yang ditampilkan di sini sebagai praktik terbaik keamanan.
Langkah 5: Memberi hak akses akun pengguna pada basis data sumber
Dalam tugas ini, Anda memberikan hak istimewa akun yang diperlukan untuk pengguna basis data di basis data sumber Anda.
Memberikan hak akses akun pada basis data sumber
-
Berikan hak istimewa yang diperlukan ke akun GoldenGate pengguna Oracle menggunakan SQL perintah
grant
dan prosedur.rdsadmin.rdsadmin_util
grant_sys_object
Pernyataan berikut memberikan hak akses untuk pengguna dengan namaoggadm1
.GRANT CREATE SESSION, ALTER SESSION TO oggadm1; GRANT RESOURCE TO oggadm1; GRANT SELECT ANY DICTIONARY TO oggadm1; GRANT FLASHBACK ANY TABLE TO oggadm1; GRANT SELECT ANY TABLE TO oggadm1; GRANT SELECT_CATALOG_ROLE TO
rds_master_user_name
WITH ADMIN OPTION; EXEC rdsadmin.rdsadmin_util.grant_sys_object ('DBA_CLUSTERS', 'OGGADM1'); GRANT EXECUTE ON DBMS_FLASHBACK TO oggadm1; GRANT SELECT ON SYS.V_$DATABASE TO oggadm1; GRANT ALTER ANY TABLE TO oggadm1; -
Berikan hak istimewa yang dibutuhkan oleh akun pengguna untuk menjadi administrator Oracle GoldenGate . Jalankan SQL PL/program berikut.
EXEC rdsadmin.rdsadmin_dbms_goldengate_auth.grant_admin_privilege ( grantee => 'OGGADM1', privilege_type => 'capture', grant_select_privileges => true, do_grants => TRUE);
Untuk mencabut hak akses, gunakan prosedur
revoke_admin_privilege
dalam paket yang sama.
Langkah 6: Tambahkan TNS alias untuk database sumber
Tambahkan entri berikut ke $ORACLE_HOME/network/admin/tnsnames.ora
di beranda Oracle untuk digunakan oleh proses EXTRACT
. Untuk informasi selengkapnya tentang file tnsnames.ora
, lihat Oracle documentation
OGGSOURCE= (DESCRIPTION= (ENABLE=BROKEN) (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=goldengate-source.abcdef12345.us-west-2.rds.amazonaws.com)(PORT=8200))) (CONNECT_DATA=(SERVICE_NAME=ORCL)) )
Menyiapkan database target untuk digunakan dengan Oracle GoldenGate di Amazon RDS
Dalam tugas ini, Anda menyiapkan instans DB target untuk digunakan dengan Oracle GoldenGate.
Langkah-langkah penyiapan
Langkah 1: Atur parameter REPLICATION inisialisasi ENABLE GOLDENGATE _ _ ke true
Ketika Anda mengatur parameter inisialisasi ENABLE_GOLDENGATE_REPLICATION
untuk true
, ini memungkinkan layanan basis data untuk mendukung replikasi logis. Jika database sumber Anda berada di instans Amazon RDS DB, pastikan Anda memiliki grup parameter yang ditetapkan ke instans DB dengan parameter ENABLE_GOLDENGATE_REPLICATION
inisialisasi disetel ketrue
. Untuk informasi parameter inisialisasi ENABLE_GOLDENGATE_REPLICATION
selengkapnya, lihat dokumentasi Oracle Database
Langkah 2: Buat akun GoldenGate pengguna Oracle pada database target
Oracle GoldenGate berjalan sebagai pengguna database dan membutuhkan hak istimewa database yang sesuai. Untuk memastikannya, buat akun pengguna di basis data target.
Pernyataan berikut akan membuat pengguna dengan nama oggadm1
.
CREATE TABLESPSACE administrator; CREATE USER oggadm1 IDENTIFIED BY "
password
" DEFAULT TABLESPACE administrator TEMPORARY TABLESPACE temp; ALTER USER oggadm1 QUOTA UNLIMITED ON administrator;
catatan
Tetapkan kata sandi selain prompt yang ditampilkan di sini sebagai praktik terbaik keamanan.
Langkah 3: Memberi hak akses akun pada basis data target
Dalam tugas ini, Anda memberikan hak istimewa akun yang diperlukan untuk pengguna basis data di basis data target Anda.
Untuk memberikan hak akses akun pada basis data target
-
Berikan hak istimewa yang diperlukan ke akun GoldenGate pengguna Oracle pada basis data target. Pada contoh berikut, Anda memberikan hak akses untuk
oggadm1
.GRANT CREATE SESSION TO oggadm1; GRANT ALTER SESSION TO oggadm1; GRANT CREATE CLUSTER TO oggadm1; GRANT CREATE INDEXTYPE TO oggadm1; GRANT CREATE OPERATOR TO oggadm1; GRANT CREATE PROCEDURE TO oggadm1; GRANT CREATE SEQUENCE TO oggadm1; GRANT CREATE TABLE TO oggadm1; GRANT CREATE TRIGGER TO oggadm1; GRANT CREATE TYPE TO oggadm1; GRANT SELECT ANY DICTIONARY TO oggadm1; GRANT CREATE ANY TABLE TO oggadm1; GRANT ALTER ANY TABLE TO oggadm1; GRANT LOCK ANY TABLE TO oggadm1; GRANT SELECT ANY TABLE TO oggadm1; GRANT INSERT ANY TABLE TO oggadm1; GRANT UPDATE ANY TABLE TO oggadm1; GRANT DELETE ANY TABLE TO oggadm1;
-
Berikan hak istimewa yang dibutuhkan oleh akun pengguna untuk menjadi administrator Oracle GoldenGate . Jalankan SQL PL/program berikut.
EXEC rdsadmin.rdsadmin_dbms_goldengate_auth.grant_admin_privilege ( grantee => 'OGGADM1', privilege_type => 'apply', grant_select_privileges => true, do_grants => TRUE);
Untuk mencabut hak akses, gunakan prosedur
revoke_admin_privilege
dalam paket yang sama.
Langkah 4: Tambahkan TNS alias untuk database target
Tambahkan entri berikut ke $ORACLE_HOME/network/admin/tnsnames.ora
di beranda Oracle untuk digunakan oleh proses REPLICAT
. Untuk database Oracle Multitenant, pastikan bahwa TNS alias menunjuk ke nama layanan. PDB Untuk informasi selengkapnya tentang file tnsnames.ora
, lihat Oracle documentation
OGGTARGET= (DESCRIPTION= (ENABLE=BROKEN) (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=goldengate-target.abcdef12345.us-west-2.rds.amazonaws.com)(PORT=8200))) (CONNECT_DATA=(SERVICE_NAME=ORCL)) )