Restore dari off line backup

Restore dari hasil offline backup adalah sangat sederhana, sesederhana backup-nya. Lihat offline backup di sini http://rohmad.net/…/off-line-backup-database-oracle/

Berikut ini step-step restore dengan memakai instance yang sama.

  1. Siapkan file-file yang akan direstore
    File-file tersebut adalah control, log, data, dan temp file
  2. Pastikan instance sudah mati
    SQL> shutdown immediate;
  3. 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
  4. Nyalakan databaseSQL> 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:

  1. Restore ke directory baru
    Control file
    $ cp /backup/ts/control01.ctl /newdir/ts/control01.ctl
    $ cp /backup/ts/control02.ctl /newdir/ts/control02.ctl
    $ cp /backup/ts/control03.ctl /newdir/ts/control03.ctl
    Log file
    $ cp /backup/ts/redo04.log /newdir/ts/redo04.log
    $ cp /backup/ts/redo05.log /newdir/ts/redo05.log
    $ cp /backup/ts/redo06.log /newdir/ts/redo06.log
    Data file
    $ cp /backup/ts/sysaux01.dbf /newdir/ts/sysaux01.dbf
    $ 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
    Temp file
    $ cp /backup/ts/temp01.dbf /newdir/ts/temp01.dbf
  2. 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'
  3. 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 ...
  4. Open database
    SQL> alter database open;

Error yang terkait

  1. 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
  2. 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'
This entry was posted in Backup & Recovery and tagged , , , , , , . Bookmark the permalink.

14 Responses to Restore dari off line backup

  1. Devor says:

    Wah, akhirnya artikel restore nya di buat juga. thanks pak rohmad. ditunggu artikel-artikel menarik lainnya….

  2. Dedy says:

    Pak rohmad, numpang tanya, saya sedang ada kegiatan backup dan restore, yang saat ini saya coba lakukan adalah melakukan copy / clonning dari server database oracle versi 8, ke oracle versi 10 g. kesulitan yang saya dapatkan adalah saya tidak menemukan file initorcl.ora (orcl = nama instancenya) di path yang di katakan diatas,
    tetapi saya menemukannya justru di folder pfile/initorcl.ora. -> apakah memang ini merupakan tempa bagi initorcl.ora di versi 10g ?

    mohon diberi petunjuk juga, karena kebetulan perpindahan data ke server yang baru menggunakan nama instance yang berbeda dari server lama. thx.

  3. rohmadne says:

    Cloningnya pakai methode apa, semua datafile dicopy? Kalau beda versi, ada step-step tambahan yaitu upgrade dari versi 8 ke 10g, silahkan lihat referensinya di sini http://download.oracle.com/docs/cd/B19306_01/server.102/b14196/install004.htm

    Init file yang dibaca Oracle adalah yang di $ORACLE_HOME/dbs atau %ORACLE_HOME%\database. Sementara yang difolder pfile biasanya temporary initfile (misalnya ketika memakai DBCA).

    Nama instance berbeda tidak masalah, yang penting sesuaikan saja parameter-parameter di initfile-nya.

  4. Dedy says:

    Maaf pak , kemaren kurang detail informasinya , karena di kantor jadi buru2 gak enak sama bos.
    anyway, saya cloning pake method cold backup, ok saya coba baca step-step tambahan mengenai upgrade beda versi pak. terima kasih pak atas petunjuknya.

  5. sigit says:

    Pak Rohmad,
    saya coba langkah2 diatas.
    tapi ada error saat startup

    SQL> startup
    ORACLE instance started.

    Total System Global Area 1415546472 bytes
    Fixed Size 730728 bytes
    Variable Size 872415232 bytes
    Database Buffers 536870912 bytes
    Redo Buffers 5529600 bytes
    Database mounted.
    ORA-00305: log 1 of thread 1 inconsistent; belongs to another database
    ORA-00312: online log 1 thread 1: ‘/u01/oracle/oradata/TEST/redo01.log’

    Mohon petunjuknya…

    ORACLE instance started.

    Total System Global Area 1415546472 bytes
    Fixed Size 730728 bytes
    Variable Size 872415232 bytes
    Database Buffers 536870912 bytes
    Redo Buffers 5529600 bytes
    Database mounted.

    ORA-00312: online log 1 thread 1: ‘/u01/oracle/oradata/COMMON/redo01.log’

  6. rohmadne says:

    Redo (online) log file dan control file tampaknya bukan dari database yang sama, mungkin control file tidak anda restore juga . Pastikan bahwa anda menggunakan control file yang sesuai (hasil restore juga).

    Ini di-restore ke versi database yang sama khan?

  7. Arif says:

    Pak Rohmad, izin bertanya nih
    Saya sudah melakukan proses backup dan oleh oracle disimpan dlm file yg berbentuk *.bkp (ada sktr 3 file). Nah masalahnya saya ingin recovery file tsb tp ingin mengetahui file mana yg kira2x file archived log.
    Saya pernah melakukan perintah “recovery database” & jwbnnya “Media recovery completed” tetapi setiap mau alter database open selalu muncul error ORA-01092:Oracle Instance terminated.Disconenction Forced.
    Terima kasih.

  8. rohmadne says:

    Anda melakukan backup pakai RMAN ya?

    “Media recovery completed” itu artinya recovery sudah berhasil.
    Kalau muncul “ORA-01092” ketika “alter database open”, itu perlu dianalis lebih lanjut. Analisa tahap pertama adalah lihat error message di alert log dan trace file.

  9. fiqhi hanief says:

    saya melakukan perintah query..tetap jika tidak menggunakan perintah ORDER BY dapat di execute dan jika menggunakan perintah order by query tersebut muncul pesan erro sbb:

    ORA-00604: error occurred at recursive SQL level 1
    ORA-01578: ORACLE data block corrupted (file # 1, block # 33447)
    ORA-01110: data file 1: ‘/data/oracle/oradata/rushmore/system01.dbf’

    mohon percerahannya

  10. apakah pak rohmad bisa mengadakan training di kantor saya

  11. WONDERFUL Post.appreciate your share..a lot more wait .. …

  12. junior dataon says:

    woii dibales donk..set dah

  13. Pingback: Petunjuk Memahami Database Oracle | Fariz Syahputra

  14. slut says:

    dumb singaporeans online

Leave a Reply

Your email address will not be published. Required fields are marked *