Sebelum memulai, sebaiknya tinjau Backup and DR Service for Oracle.
Sebelum dapat mencadangkan database Oracle, Anda harus menambahkan server Oracle sebagai host ke Backup and DR Service. Agar ini berfungsi, pastikan untuk membaca Prasyarat untuk mencadangkan database Oracle lalu ikuti langkah-langkah persiapan berikut.
Menyiapkan database Oracle di lingkungan Linux
Sebelum Anda melindungi database Oracle, atau jika tugas perlindungan database gagal, pastikan setelan berikut sudah benar di server database Oracle.
- Setiap database Oracle yang akan dilindungi harus aktif dan berjalan. Contoh:
database: actdb
ps -ef | grep pmon | grep -i actdb
oracle 27688 1 0 2015 ? 00:26:24 ora_pmon_actdb
- Database harus berjalan dalam mode log arsip. Untuk memverifikasi bahwa database berjalan dalam mode log arsip, login ke server database sebagai pengguna Oracle OS dan tetapkan variabel lingkungan database:
export ORACLE_HOME=<oracle home path>
# Get this from /etc/oratab
export ORACLE_SID=<database instance name>
export PATH=$ORACLE_HOME/bin:$PATH
Login to sqlplus:
sqlplus / as sysdba
archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination +FRA
Oldest online log sequence 569
Next log sequence to archive 570
Current log sequence 570
Note: If archive log mode is not enabled then get archive mode enabled
before proceeding.
- Database harus menggunakan
spfile. Pastikan database berjalan denganspfile:
sqlplus / as sysdba
show parameter spfile
NAME TYPE VALUE
------------------ ----------- ------------
spfile string +DATA/ctdb/spfilectdb.ora
Note: If the value is `null_` then
get the spfile set. Backup and DR supports backing up using pfile as well.
pfile should be available in default location. For example, a
Linux `pfile` should be located under `$ORACLE_HOME/dbs`.
Untuk database Oracle RAC, file kontrol snapshot harus berada di bawah disk bersama. Untuk database Oracle RAC di bawah ASM, file kontrol snapshot harus berada di bawah disk bersama.
Untuk memeriksanya, hubungkan ke RMAN dan jalankan perintah
show all. Konfigurasi jika perlu:rman target /Kemudian di RMAN:
show allParameter konfigurasi RMAN untuk database dengan CTDB db_unique_name adalah:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/mnt/ctdb/snapcf_ctdb.f';
This example shows the configuration set to the local file system.
In a RAC environment, this must be set to shared ASM Disk Group. To put it
on the ASM Disk Group, use:
```bash
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+(disk group name)/snap_(database name).f';
```
Bersiap mencadangkan database Oracle dengan file data di grup disk ASM
Disk staging Backup and DR pada grup disk ASM
Parameter ASM diskstring harus ditetapkan dan tidak boleh null. Login ke server database sebagai pengguna ASM OS dan tetapkan variabel lingkungan ASM:
export ORACLE_HOME=(oracle ASM home path)
# Get this from /etc/oratab
export ORACLE_SID=(ASM instance name)
export PATH=$ORACLE_HOME/bin:$PATH
Hubungkan ke sqlplus:
sqlplus / as sysasm
show parameter asm_diskstring
NAME TYPE VALUE
------------------- ----------- ------------------------------
asm_diskstring string ORCL:*, /dev/sdt1, /dev/sdu1
Jika hasil nilai adalah null, dapatkan nilai string disk ASM yang benar
untuk disk ASM yang ada sebelum melanjutkan perlindungan
Pencadangan dan DR. Pencadangan Backup and DR menambahkan jalur string disk-nya
(/dev/Backup and DR/asm/*) untuk disk staging pencadangannya agar dipetakan ke ASM.
Disk penahapan Backup and DR pada sistem file
Jika Anda melindungi database Oracle ASM ke sistem file, maka Convert ASM to file system harus disetel ke Yes di bagian Application Details & Settings. Lihat Detail & setelan aplikasi untuk Database Oracle.
Menyiapkan autentikasi database Oracle
Langkah-langkah persiapan tambahan berikut hanya diperlukan jika Anda berencana menggunakan autentikasi database. Autentikasi database Oracle dijelaskan dalam Pencadangan dan DR menggunakan autentikasi database.
Ikuti langkah-langkah dalam Menyiapkan database Oracle di lingkungan Linux.
Buat akun pengguna database untuk pencadangan Backup dan DR, jika belum disediakan:
create user act_rman_user identified by <password>;
- Beri akses
sysdbake semua node RAC dengan login kesqlplusdi semua node dan menjalankan:
grant create session, resource, sysdba to act_rman_user;
Untuk Oracle 12c, peran ini dapat berupa sysbackup, bukan of sysdba, dan nama pengguna database dimulai dengan #.
- Pastikan peran
sysdbatelah diberikan di semua node dalam lingkungan RAC:
sqlplus / as sysasm
select * from gv$pwfile_users;
INST_ID USERNAME SYSDB SYSOP SYSAS
---------- -------------- ----- ----- -----
1 SYS TRUE TRUE FALSE
2 SYS TRUE TRUE FALSE
1 ACT_RMAN_USER TRUE TRUE FALSE
2 ACT_RMAN_USER TRUE TRUE FALSE
Uji nama layanan berdasarkan jenis lingkungan Anda menggunakan petunjuk berikut:
Buat dan verifikasi servicename Oracle di lingkungan non-RAC
Nama layanan Oracle hanya digunakan untuk autentikasi database. Tidak diperlukan untuk autentikasi OS.
Contoh:
Nama Database: dbstd,
Nama Instance: dbstd
- Jika nama layanan Oracle tidak tercantum, buat entri nama layanan dalam file
tnsnames.oradi$ORACLE_HOME/network/adminatau di$GRID_HOME/network/admindengan menambahkan entri:
act_svc_dbstd =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = (IP of the database server))(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = dbstd)
) )
Jika file tnsnames.ora berada di lokasi yang tidak standar, berikan jalur absolut ke file tersebut di bagian Detail & Setelan Aplikasi seperti yang dijelaskan dalam Detail & setelan aplikasi untuk database Oracle
Uji entri nama layanan untuk database guna memastikan database dikonfigurasi:
Login sebagai pengguna OS Oracle dan tetapkan lingkungan Oracle:
TNS_ADMIN=(tnsnames.ora file location)
tnsping act_svc_dbstd
- Periksa akun pengguna database untuk memastikan cadangan Backup and DR dapat terhubung:
sqlplus act_rman_user/act_rman_user@act_svc_dbstd as sysdba
- Berikan nama layanan yang dibuat (act_svc_dbstd) di bagian setelan Oracle Service Name di bagian Application Details & Settings seperti yang dijelaskan dalam Application details & settings for Oracle Databases
Membuat dan memverifikasi nama layanan Oracle di lingkungan RAC
Nama layanan Oracle hanya digunakan untuk autentikasi database. Tidak diperlukan untuk autentikasi OS.
Contoh RAC tiga node:
Nama database:
dbracNama Instance1:
dbrac1Nama Instance2:
dbrac2Nama Instance3:
dbrac3dengan perlindungan database yang ditetapkan dari Node3 (Nama Instancedbrac3):
- Buat entri servicename di file
tnsnames.oradi$ORACLE_HOME/network/adminatau di$GRID_HOME/network/admindengan menambahkan entri berikut:
act_svc_dbrac3 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = (IP of the database server)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(INSTANCE_NAME = dbrac3)
(SERVICE_NAME = dbrac)
) ) )
Where:
HOST = This can be SCAN IP in a RAC environment or VIP or IP of the node 3 database server.
SERVICE_NAME = database name
INSTANCE_NAME = database instance name on node3
Uji servicename:
Login sebagai pengguna OS Oracle dan tetapkan lingkungan Oracle:
TNS_ADMIN=(tnsnames.ora file location)
tnsping act_svc_dbrac3
- Periksa akun pengguna database untuk memastikan cadangan Backup dan DR dapat terhubung:
sqlplus act_rman_user/act_rman_user@act_svc_dbrac3 as sysdba
Berikan nama layanan yang dibuat (act_svc_dbrac3) di setelan Nama layanan Oracle di bagian Application Details & Settings yang dijelaskan dalam Application details & settings for Oracle Databases.
Jika file tnsnames.ora berada di lokasi yang tidak standar, berikan jalur absolut ke file tnsnames.ora di setelan Jalur
TNS_AdminOracle di bagian Detail & Setelan Aplikasi yang dijelaskan dalam Detail & setelan aplikasi untuk database Oracle
Mengaktifkan pelacakan perubahan blok database (opsional)
Pelacakan blok perubahan database dijelaskan dalam Pelacakan perubahan blok (BCT) database Oracle
Untuk memeriksa apakah pelacakan perubahan blok database diaktifkan:
sqlplus / as sysdba
Di prompt sql:
select * from v$block_change_tracking;
Jika pelacakan perubahan blok database tidak diaktifkan, aktifkan pelacakan perubahan blok database dari sqlplus:
Menggunakan Grup Disk ASM
sqlplus / as sysdba
Di prompt sql:
alter database enable block change tracking using file '+<ASM Disk Group Name>/<database name>/<dbname>.bct';
Menggunakan sistem file
sqlplus / as sysdba
Di prompt sql:
alter database enable block change tracking using file '$ORACLE_HOME/dbs/<dbname>.bct';
Melindungi dari node Oracle Data Guard
Anda dapat melindungi database Oracle dari node database utama atau dari node standby Oracle Data Guard. Jika perlindungan disetel dari node Oracle Data Guard, pastikan untuk menyetel kredensial node utama di bagian Detail & Setelan Aplikasi di konsol pengelolaan appliance.
Untuk autentikasi database (khusus Linux)
Nama Pengguna/Sandi: Kredensial akun pengguna database. Agar akun pengguna ini tersedia di node Data Guard dengan akses sysdba, pengguna ini harus dibuat dengan hak istimewa sysdba di node Primer (lihat membuat akun pengguna cadangan dengan akses sysdba). Kemudian, file sandi (di bagian
$ORACLE_HOME/dbs/) dari node utama harus disalin ke node Data Guard.
Untuk autentikasi OS
- Nama Pengguna/Sandi: Di bagian Autentikasi OS, hak istimewa sysdba
tidak diperlukan. Akun pengguna database ini memerlukan hak istimewa
connect, alter system. Agar akun pengguna ini tersedia di node Data Guard, pengguna ini harus dibuat di node utama.
Jika pengguna tidak memiliki peran sysdba, pengguna memerlukan grant connect, alter system, select on dba_tablespaces.
Untuk memberikan hak istimewa ini, pada prompt sql:
grant connect, alter system, select on dba_tablespaces to act_rman_user;
- Nama Layanan Node Utama Oracle Data Guard: Ini adalah nama layanan dalam file tnsnames.ora yang dikonfigurasi di node Data Guard untuk terhubung ke node utama dari node standby. Nama Layanan Node Utama Oracle Data Guard diperlukan untuk autentikasi OS dan DB jika pencadangan dikonfigurasi dari node standby Data Guard.
Untuk mengetahui detail lengkap tentang semua detail & setelan, lihat Detail & setelan aplikasi untuk Oracle Database
| Node Database | Autentikasi OS | Autentikasi Database |
|---|---|---|
| Utama | Tidak diperlukan kredensial database. | Kredensial database diperlukan. Jika tidak ada peran yang dipilih, sysdba akan digunakan. |
| Siaga | Kredensial database diperlukan meskipun untuk Autentikasi OS (untuk terhubung ke primer guna mengalihkan log). Kredensial database tidak harus memiliki peran sysdba/sysbackup. Jika akun sysdba/sysbackup digunakan, tetapkan peran pengguna di Peran Pengguna di Database di Detail & Setelan Aplikasi. | Kredensial database diperlukan. Kredensial database harus untuk peran sysdba atau sysbackup, dan Peran Pengguna di Database harus disetel ke sysdba atau sysbackup di Detail & Setelan Aplikasi. Untuk menyiapkan autentikasi database, lihat Mengaktifkan Autentikasi Database untuk Server Oracle. |
Mengonfigurasi failover transparan RAC dari pencadangan RMAN ke node lain
Agen Pencadangan dan DR harus diinstal dan berjalan di semua node yang Anda rencanakan untuk menjadi bagian dari konfigurasi failover pencadangan. Perlindungan disiapkan hanya dari satu node.
Di Detail & Setelan, Node Cluster, tentukan pilihan node failover di lingkungan Oracle RAC:
<Failover choice>:<Node IP>:<Servicename>:<Role>
Dengan:
Pilihan Failover: urutan node yang akan di-failover.
IP Node: alamat IP node tempat Anda ingin menjalankan pencadangan
Servicename: nama layanan yang dibuat dan ditentukan dalam tnsnames.ora untuk pencadangan RMAN Backup and DR. Ini dapat berupa layanan khusus baru yang dibuat untuk pencadangan Backup and DR atau nama SID (nama instance) database di node tersebut.
Role: F, menunjukkan bahwa ini adalah node failover
Untuk membuat nama layanan baru di node failover di bawah file tnsnames.ora ($ORACLE_HOME/network/admin/tnsnames.ora atau di $GRID_HOME/network/admin/tnsnames.ora)
Contoh di lingkungan Oracle One Node
RAC One Node terdiri dari dua node:
172.15.157.200
172.15.157.201
Database ini memiliki satu database OneN yang hanya berjalan di salah satu node pada waktu tertentu. OneN dilindungi dari 172.15.157.200, dengan setelan Cluster Node ditentukan sebagai 1:172.15.157.201:OneN:F
Jika OneN melakukan failover ke 172.15.157.201, pencadangan Backup and DR akan mengikutinya dan memulai tugas pencadangan berikutnya dari 172.15.157.201, bukan dari 200. Jika failover terjadi di tengah tugas pencadangan, tugas akan gagal dan tugas berikutnya akan menggunakan node failover untuk memulai pencadangan baru.
Contoh di Lingkungan Oracle, bukan One Node:
RAC 2 node (
dbrac1,dbrac2)Perlindungan disetel menggunakan nama database "dbrac" dari
dbrac1dan failover akan disetel kedbrac2Nama layanan di node2:
act_svc_dbrac2IP Node2 atau IP pemindaian:
172.1.1.0
act_svc_node2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.1.1.0)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(INSTANCE_NAME = dbrac2)
(SERVICE_NAME = dbrac)
) )
Di bagian Application Details & Settings, entri node cluster adalah berikut:
1:172.1.1.1:act_svc_node2:F
Perilaku entri node cluster F dan M
F: Node failover, hanya berpartisipasi saat node pelindung tidak melakukan pencadangan.
M: Node pemeliharaan, menggantikan node pelindung jika divalidasi agar dapat melakukan pencadangan.
Kompresi log arsip Oracle
Pencadangan log arsip Backup and DR mendukung kompresi set pencadangan log Oracle. Jenis kompresi yang Anda pilih bergantung pada setelan konfigurasi RMAN ini. Pilih opsi berdasarkan kasus penggunaan Anda.
Rasio kompresi yang lebih rendah memberikan dampak paling kecil pada throughput pencadangan. Jenis ini paling cocok untuk lingkungan yang sumber daya CPU-nya menjadi faktor pembatas.
Kompresi sedang direkomendasikan untuk sebagian besar lingkungan. Keduanya memberikan kombinasi rasio kompresi dan kecepatan yang baik.
Rasio kompresi tinggi membutuhkan banyak sumber daya dan paling cocok untuk pencadangan melalui jaringan yang lebih lambat dengan faktor pembatasnya adalah kecepatan jaringan.
Setelan default-nya adalah Dasar. Basic tidak memerlukan Oracle Advanced Compression.
Untuk memeriksa jenis kompresi yang ditetapkan di lingkungan, jalankan perintah show all
dari prompt RMAN:
rman target /
show all
Mengonfigurasi layanan database Oracle untuk load balancing di beberapa node
Prosedur ini hanya berlaku untuk database Oracle ASM. Dalam contoh ini, asumsikan lingkungan RAC empat node; node 3 dan 4 akan di-load balance untuk penggunaan cadangan.
Lihat:
Mengonfigurasi salinan image RMAN paralel dari beberapa node
Mengonfigurasi layanan database Oracle untuk load balancing di beberapa node
Load balancing di antara node Oracle RAC memerlukan autentikasi database Oracle.
Mengonfigurasi salinan image RMAN paralel dari beberapa node
Di lingkungan RAC, Anda dapat mengonfigurasi pencadangan untuk dijalankan secara paralel dari beberapa node.
Instal agen Backup and DR di semua node.
Siapkan pemetaan grup disk ASM ke node 3 dan node 4 menggunakan Detail & setelan aplikasi.
Buat layanan database menggunakan srvctl untuk dijalankan dari node 3 dan node 4.
Gunakan layanan ini untuk menentukannya di bagian Detail & Setelan Aplikasi. Pilih Jumlah channel di bagian Setelan Lanjutan (# channel). RMAN mendistribusikan channel antara node 3 dan node 4.
Tetapkan nama layanan Oracle dan Node Anggota RAC.
Mengonfigurasi Layanan Database Oracle untuk load balancing di beberapa node
Konfigurasi di Detail & Setelan Aplikasi, Node Anggota RAC: IP node3 dan IP node 4.
Buat layanan database untuk node pemeliharaan yang akan digunakan oleh Backup and DR untuk pencadangan:
srvctl add service -d <dbname> -s act_service_<dbname> -r <dbinstance3>,<dbinstance4>
srvctl start service -d <dbname> -s act_service_<dbname>
- Tambahkan entri tns untuk nama layanan Oracle
yang dibuat di node cadangan (node
dbinstance3dandbinstance4dalam contoh ini) di bawah file tnsnames.ora ($ORACLE_HOME/network/admin/tnsnames.ora atau di $GRID_HOME/network/admin/tnsnames.ora)
act_service_<dbname> =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = <SCAN IP>)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = <DATABASE NAME>)
) )
- Uji nama layanan yang dibuat:
tnsping act_service_<dbname>
- Uji nama layanan dan kredensial pengguna:
sqlplus act_rman_user/act_rman_user@act_service_<dbname> as sysdba
Tentukan nama layanan ini di bagian Application Details & Settings nama layanan Oracle.
Buat layanan pencadangan log arsip khusus di node yang dilindungi (misalnya, node 3) yang akan digunakan untuk pencadangan:
srvctl add service -d <dbname> -s act_arc_service_<dbname> -r <dbinstance3>
srvctl start service -d <dbname> -s act_arc_service_<dbname>
- Tambahkan entri tns untuk nama layanan pencadangan log arsip yang dibuat di file
tnsnames.ora($ORACLE_HOME/network/admin/tnsnames.oraatau di$GRID_HOME/network/admin/tnsnames.ora)
act_arc_service_<dbname> =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = <SCAN IP>)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(INSTANCE_NAME = <node 3 instance>)
(SERVICE_NAME = act_arc_service_<dbname>)
) )
- Uji nama layanan:
tnsping act_arch_service_<dbname>
- Tentukan servicename ini di bagian Application Details & Settings archive log backup servicename.
Patch Oracle 12c
Pemasangan yang kompatibel dengan aplikasi Backup and DR dapat gagal jika penginstalan Oracle 12c Anda tidak menyertakan patch ini, yang dapat didownload dari portal dukungan Oracle:
Bug Oracle Database 12c# 19404068 (ORA-1610 ON RECOVER DATABASE FOR CREATED CONTROLFILE)
- (Patch 19404068) Linux x86-64 untuk Oracle 12.1.0.2.0
Untuk melihat apakah patch sudah diinstal, jalankan:
cd $ORACLE_HOME/OPatch
./opatch lsinventory -details
./opatch lsinventory -details | grep 19404068
Langkah Berikutnya
Sebelum menambahkan host Oracle, lanjutkan ke:
Panduan DBA Oracle
- Backup and DR untuk database Oracle
- Prasyarat untuk melindungi database Oracle
- Patch Oracle dan masalah umum
- Menyiapkan database Oracle untuk perlindungan
- Menemukan dan melindungi database Oracle
- Detail dan setelan untuk database Oracle
- Menggunakan dNFS dengan Backup and DR
- Melindungi database Oracle yang ditemukan
- Memasang database Oracle sebagai pemasangan standar
- Membuat salinan virtual instan database Oracle
- Memulihkan dan memulihkan database Oracle
- Pemulihan instan database Oracle menggunakan Mount and Migrate
- Menyediakan lingkungan dengan alur kerja Backup and DR