Berikut salah satu contoh error yang ditemui dioracle, dimana data file not available, bisa karena corupts atau file nya dipindahkan saat database sdg berjalan
sedangkan dalam beberapa kasus kita harus segera mengambil tindakan sebelum masalahnya meluas.
Dalam Oracle 11g Data Recovery yang baru membuat operasi ini lebih mudah. Fitur ini bisa di gunakan dengan 2 cara, yaitu dalam mode Command Line atau dalam
fasilitas Enterprise Manager.
SQL> conn scott/tiger
Connected.
SQL> create table t (col1 number);
create table t (col1 number)
*
ERROR at line 1:
ORA-01116: error in opening database file 4
ORA-01110: data file 4: '/home/oracle/oradata/PRODB3/users01.dbf'
ORA-27041: unable to open file
Linux Error: 2: No such file or directory
Additional information: 3
Berikut kita menggunakan command line yang akan kita eksekusi dan jalankan di RMAN
Pertama start proses RMAN kemudian koneksi kan ketarget
C:\>rman target=/
Recovery Manager: Release 11.1.0.6.0 - Production on Wed Jul 2 09:47:36 2008
Copyright (c) 1982, 2007, Oracle. All rights reserved.
connected to target database: ORCL (DBID=1185929127)
RMAN> list failure;
Jika tidak ada error maka akan keluar pesan sebagai berikut
using target database control file instead of recovery catalog
no failures found that match specification
Jika ternyata ada error maka akan keluar pesan kesalahan sbg berikut
using target database control file instead of recovery catalog
List of Database Failures
=========================Failure ID Priority Status Time Detected Summary
---------- -------- --------- ------------- -------
142 HIGH OPEN 15-JUL-07 One or more non-system datafiles are missing
Pesan kesalahan ini menunjukkan bahwa ada datafile yang hilang. Datafile yang hilang bukan merupakan bagian dari tablespace SYSTEM, database hidup
dengan tablespace itu dalam keadaan offline. Error ini sangat critical sehingga kolom priority memuat status HIGH.
Tiap kesalahan mempunyai ID, sehingga memudahkan dlm mengidentifikasi dalam error didatabase.
RMAN> list failure 142 detail;
Perintah ini menunjukkan detail penyebab dari error tersebut.
RMAN> advise failure;
Perintah ini menghasilkan keluaran berupa penjelasan dari error dan cara memperbaikinya
List of Database Failures
=========================Failure ID Priority Status Time Detected Summary
---------- -------- --------- ------------- -------
142 HIGH OPEN 15-JUL-07 One or more non-system datafiles are missinganalyzing automatic repair options; this may take some time
using channel ORA_DISK_1
analyzing automatic repair options completeMandatory Manual Actions
========================
no manual actions availableOptional Manual Actions
=======================
1. If file /home/oracle/oradata/PRODB3/users01.dbf was unintentionally renamed or moved, restore itAutomated Repair Options
========================
Option Repair Description
------ ------------------
1 Restore and recover datafile 4
Strategy: The repair includes complete media recovery with no data loss
Repair script: /home/oracle/app/diag/rdbms/prodb3/PRODB3/hm/reco_3162589478.hm
Keluaran ini mempunyai beberapa bagian penting. Pertama, Advisor menganalisa error didatabase, dan yang kedua Advisor menyarankan solusi,
Dalam kasus ini solusinya sederhana yaitu Restore dan Recover file.
Dan hal yang paling berguna dari Data Recovery Advisor yaitu seperti pada baris terakhir dari output diatas, Advisors men generate script yang dapat digunakan
untuk repair datafile atau memperbaiki error yang terjadi.
Jadi kita mempunyai sebuah script yang siap untuk dieksekusi, tapi sebelum kita melakukan eksekusi kita bisa melakukan verifikasi terhadap script tersebut
sehingga kita bisa melakukan preview terhadap apa yang akan dijalanin dalam script tersebut.
RMAN> repair failure preview;
Strategy: The repair includes complete media recovery with no data loss
Repair script: /home/oracle/app/diag/rdbms/prodb3/PRODB3/hm/reco_741461097.hmcontents of repair script:
# restore and recover datafile
sql 'alter database datafile 4 offline';
restore datafile 4;
recover datafile 4;
sql 'alter database datafile 4 online';
Setelah kita melihat apa yang akan dijalankan oleh script tersebut, sekarang kita bisa menjalankan script tersebut
RMAN> repair failure;
Strategy: The repair includes complete media recovery with no data loss
Repair script: /home/oracle/app/diag/rdbms/prodb3/PRODB3/hm/reco_741461097.hmcontents of repair script:
# restore and recover datafile
sql 'alter database datafile 4 offline';
restore datafile 4;
recover datafile 4;
sql 'alter database datafile 4 online';Do you really want to execute the above repair (enter YES or NO)?
Dengan Asumsi saya pilih YES untuk repair, maka selanjutnya
executing repair script
sql statement: alter database datafile 4 offline
Starting restore at 15-JUL-07
using channel ORA_DISK_1channel ORA_DISK_1: restoring datafile 00004
input datafile copy RECID=5 STAMP=628025835 file name=/home/oracle/flasharea
/PRODB3/datafile/o1_mf_users_39ocxbv3_.dbf
destination for restore of datafile 00004: /home/oracle/oradata/PRODB3/users01.dbf
channel ORA_DISK_1: copied datafile copy of datafile 00004
output file name=/home/oracle/oradata/PRODB3/users01.dbf RECID=0 STAMP=0
Finished restore at 15-JUL-07Starting recover at 15-JUL-07
using channel ORA_DISK_1starting media recovery
archived log for thread 1 with sequence 51 is already on disk as file /home/oracle/
flasharea/PRODB3/archivelog/2007_07_15/o1_mf_1_51_39ocxxdw_.arc
... and so on ...
name=/home/oracle/flasharea/PRODB3/archivelog/2007_07_15/o1_mf_1_55_39ocy9ox_.arc thread=1 sequence=55
media recovery complete, elapsed time: 00:00:01
Finished recover at 15-JUL-07sql statement: alter database datafile 4 online
repair failure complete
Tidak ada komentar:
Posting Komentar