Off line backup database Oracle
Ada dua metode untuk membackup database Oracle, yaitu off line dan online. Off line backup dilakukan dengan mematikan database terlebih dahulu, baru kemudian membackup datafile. Online backup dilakukan tanpa mematikan database, jadi database masih bisa diakses selama proses backup.
Online backup mensyaratkan database berada dalam mode archive log. Nanti akan saya bahas di artikel lain. Kali ini saya akan membahas tentang off line backup.
Berikut ini step-step untuk off line backup:
1. lihat daftar file oracle (datafile, logfile, dan control file)
Gunakan query berikut ini untuk melihat semua file
Gunakan query berikut ini untuk melihat semua file
SQL> select name as file_name from
(select name from v$tempfile union
select name from v$datafile union
select name from v$controlfile union
select member as name from v$logfile)
order by file_name;
2. Matikan database
3. Backup file-file database (datafile, logfile, dan control file)
SQL> shutdown immediate;3. Backup file-file database (datafile, logfile, dan control file)
$ cp /oradata/ts/control01.ctl /backup/ts/control01.ctl
$ cp /oradata/ts/control02.ctl /backup/ts/control02.ctl
$ cp /oradata/ts/control03.ctl /backup/ts/control03.ctl
$ cp /oradata/ts/redo04.log /backup/ts/redo04.log
$ cp /oradata/ts/redo05.log /backup/ts/redo05.log
$ cp /oradata/ts/redo06.log /backup/ts/redo06.log
$ cp /oradata/ts/sysaux01.dbf /backup/ts/sysaux01.dbf
$ cp /oradata/ts/system01.dbf /backup/ts/system01.dbf
$ cp /oradata/ts/temp01.dbf /backup/ts/temp01.dbf
$ cp /oradata/ts/undotbs01.dbf /backup/ts/undotbs01.dbf
$ cp /oradata/ts/users01.dbf /backup/ts/users01.dbf
4. Nyalakan database
SQL> startup;
KEMUDIAN LAKUKAN RESTORE DARI OFFLINE BACKUP
Restore dari off line backup
Berikut ini step-step restore dengan memakai instance yang sama.
- Siapkan file-file yang akan direstore
File-file tersebut adalah control, log, data, dan temp file - Pastikan instance sudah mati
SQL> shutdown immediate; - Restore file-file backup ke directory asalnya
$ cp /backup/ts/control01.ctl /oradata/ts/control01.ctl
$ cp /backup/ts/control02.ctl /oradata/ts/control02.ctl
$ cp /backup/ts/control03.ctl /oradata/ts/control03.ctl
$ cp /backup/ts/redo04.log /oradata/ts/redo04.log
$ cp /backup/ts/redo05.log /oradata/ts/redo05.log
$ cp /backup/ts/redo06.log /oradata/ts/redo06.log
$ cp /backup/ts/sysaux01.dbf /oradata/ts/sysaux01.dbf
$ cp /backup/ts/system01.dbf /oradata/ts/system01.dbf
$ cp /backup/ts/temp01.dbf /oradata/ts/temp01.dbf
$ cp /backup/ts/undotbs01.dbf /oradata/ts/undotbs01.dbf
$ cp /backup/ts/users01.dbf /oradata/ts/users01.dbf - Nyalakan database
SQL> startup;
Jika karena suatu hal, kita tidak bisa merestore ke direktori asalnya, maka kita bisa merestore ke tempat (direktori) lain. Step 1 dan 2 masih seperti yang di atas. Step 3 dan seterusnya adalah berikut ini:
- Restore ke directory baru
Control file$ cp /backup/ts/control01.ctl /newdir/ts/control01.ctlLog file
$ cp /backup/ts/control02.ctl /newdir/ts/control02.ctl
$ cp /backup/ts/control03.ctl /newdir/ts/control03.ctl$ cp /backup/ts/redo04.log /newdir/ts/redo04.logData file
$ cp /backup/ts/redo05.log /newdir/ts/redo05.log
$ cp /backup/ts/redo06.log /newdir/ts/redo06.log$ cp /backup/ts/sysaux01.dbf /newdir/ts/sysaux01.dbfTemp file
$ cp /backup/ts/system01.dbf /newdir/ts/system01.dbf
$ cp /backup/ts/undotbs01.dbf /newdir/ts/undotbs01.dbf
$ cp /backup/ts/users01.dbf /newdir/ts/users01.dbf$ cp /backup/ts/temp01.dbf /newdir/ts/temp01.dbf - Ubah konfigurasi control file. Edit init (instance parameter) file.
Filenya di $ORACLE_HOME/dbs/init[NAMAINSTANCE].ora
Ganti lokasi control file dari yang lama ke yang baru.
Value yang lama:control_files='/oradata/ts/control01.ctl', '/oradata/ts/control02.ctl','/oradata/ts/control03.ctl'Value yang baru:control_files='/newdir/ts/control01.ctl', '/newdir/ts/control02.ctl','/newdir/ts/control03.ctl' - Ubah konfigurasi file yang lainnya (log, data, dan temp file)
SQL> startup mountSQL> alter database rename file '/oradata/ts/redo04.log' to '/newdir/ts/redo04.log';
SQL> alter database rename file '/oradata/ts/sysaux01.dbf' to '/newdir/ts/sysaux01.dbf';
SQL> alter database rename file '/oradata/ts/temp01.dbf' to '/newdir/ts/temp01.dbf';
dan seterusnya ... - Open database
SQL> alter database open;
Error yang terkait
- Jika control file tidak ada, atau ada tapi direktorinya berubah dan init file belum diedit
SQL> startup
ORACLE instance started.Total System Global Area 1610612736 bytes
Fixed Size 2177912 bytes
Variable Size 396149896 bytes
Database Buffers 1207959552 bytes
Redo Buffers 4325376 bytes
ORA-00205: error in identifying control file, check alert log for more info - Jika ada data file yang kelewatan, atau ada tapi direktorinya berubah dan belum di-alter/rename
SQL> startup
ORACLE instance started.Total System Global Area 1610612736 bytes
Fixed Size 2177912 bytes
Variable Size 396149896 bytes
Database Buffers 1207959552 bytes
Redo Buffers 4325376 bytes
Database mounted.
ORA-01157: cannot identify/lock data file 4 - see DBWR trace file
ORA-01110: data file 4: '/oradata/ts/users01.dbf'
Komentar
Posting Komentar