Restore dari off line backup

Posted in Backup & Recovery on May 15, 2008

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’

Silahkan baca yang berikut ini juga :

Trackback URI | Comments RSS

6 Responses to “ Restore dari off line backup ”

  1. # 1 Devor Says:

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

  2. # 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. # 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. # 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. # 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. # 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?

Leave a Reply


  • Media Belajar Database Oracle

    Selamat Datang di Rohmad.net. Tempat belajar Database Oracle bagi yang tertarik. Tempat mengembangkan pengetahuan dan skill bagi DBA yang sedang berkembang. Dan tempat sharing pengalaman bagi DBA yang sudah experienced.

  • Search