Latihan Recover tablespace , tabel dan maintain archivelog dengan RMAN A. Kasus Recover datafile system01.dbf yang didelete/rename saat oracle database running Atau dikenal dengan media failure Pastikan datafile system01 sudah ada backup nya dan archive log setelah backup sampai yang terbaru masih tersimpan. 1. Cari lokasi datafile tslatih sqlplus / as sysdba SQL> select name from v$datafile where name like '%system%'; NAME ------------------------------------ /oracle/data/ora121/system01.dbf -- Untuk bisa mendapat kasus recover tablespace 2. Hapus atau rename datafile /oracle/data/ora121/system01.dbf mv /oracle/data/ora121/system01.dbf /oracle/data/ora121/system01.dbf.old 3. Shutdown database 4. restore datafile backup system01.dbf ke /oracle/data/ora121/ dari command line 5. Start oracle dengan option mount 8. Ubah status dari datafile system01.dbf ke offline SQL> alter database datafile '/oracle/data/ora121/system01.dbf' offline; Status system01.dbf akan menjadi recover. bisa dilihat dari SQL> select name, status from v$datafile where name like '%system01%'; 9. Sekarang recover tablespace dengan perintah berikut : SQL> alter database recover automatic tablespace system; 10. Proses recovery akan menggerate nama file-file redo log yang akan digunakan. Sekarang status dari tslatih01.dbf di v$datafile berubah dari recover menjadi offline. 11. Step berikutnya adalah open database 12. Agar tablespace system dapat kembali digunakan status harus dirubah jadi online 13. Proses recovery datafile system01.dbf selesai ======================================== B. Flasback recovery Tidak semua kasus kehilangan data perlu direcover dari backup. Oracle memperkenalkan fitur Flashback untuk recoveri dengan cara sederhana. Flashback Query memungkinkan user untuk mendapatkan kembali datanya pada titik tertentu sekalipun sudah dimodifikasi dan di commit. Sebagian row atau seluruh isi table. Latihan ini memperkenalkan fitur flashback dari oracle dan bagaimana cara mempergunakannya. Situasi yang bagaimana fitur flashback ini digunakan? Menurut dokumentasi oracle teknologi flashback dapat memperbaiki kesalahan berikut : - Kesalahan DROP TABLE - Kesalahan transaksi UPDATE,DELETE atau INSERT - Kesalahan job batch atau akibat kesalahan aplikasi Kerusakan datafile atau kehilangan data akibat media failure tidak dapat dihandle oleh flashback Query, tetapi menggunakan latihan A di atas. Syarat database untuk Flashback recovery - Database harus dalam mode archivelog - Rencanakan retensi dari undo sesuai kebutuhan, semakin besar retensi semakin besar undo space yang dibutuhkan. default undo retention adalah 900 detik - Enable Automatic undo management yang terdiri dari UNDO_MANAGEMENT, UNDO_TABLESPACE dan UNDO_RETENTION periksa dengan query berikut : SQL> select name,value from v$parameter where name like '%undo%' --Latihan mengembalikan tabel yang di drop 1. Buat tabel sbb : CREATE TABLE TMFLASHBACK AS SELECT owner, table_name, tablespace_name FROM all_tables WHERE 1=2; 2. Isi dengan 3 record sbb INSERT INTO TMFLASHBACK VALUES ('A', '111', 'AAA'); INSERT INTO TMFLASHBACK VALUES ('B', '222', 'BBB'); INSERT INTO TMFLASHBACK VALUES ('C', '333', 'CCC'); COMMIT; 3. Select * from TMFLASHBACK; OWNER TABLE_NAME TABLESPACE_NAME ----- ---------- --------------- A 111 AAA B 222 BBB C 333 CCC 4. DROP TABLE TMFLASHBACK; 5. Select * from TMFLASHBACK; ORA-00942: table or view does not exist 6. Recover dengan flashback FLASHBACK TABLE TMFLASHBACK TO BEFORE DROP; 7. Select * from TMFLASHBACK; OWNER TABLE_NAME TABLESPACE_NAME ----- ---------- --------------- A 111 AAA B 222 BBB C 333 CCC ==================================== C. Monitor dan maintain archive log dengan RMAN Archive log harus dimaintain agar disk tempat archiving tidak menjadi full. RMAN bisa digunakan untuk backup , delete archive log dan restore archive log untuk keperluan recovery. Beberapa perintah RMAN 1. Masuk ke target database Dari oracle command prompt : rman target / RMAN> 2. Melihat konfigurasi RMAN RMAN> show all; 3. Definisikan destinasi backup ke suatu direktori Misal /home/oracle/bkup/ dengan format backup %d_%U artinya : NamaSID_nomorUnik RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT = '/home/oracle/bkup/%d_%U'; Hasil konfigurasi bisa dilihat dengan show all; 4. Backup archivelog dengan RMAN RMAN> backup archivelog all; 5. Untuk melihat summary hasil backup archivelog RMAN> list backup of archivelog all summary; 6. Untuk melihat file-file archivelog yang ada didalam backup RMAN RMAN> list backup of archivelog all; 7. Untuk melihat file-file archivelog yang ada di direktori archiving. RMAN> list archivelog all; 8. Untuk list file archivelog dengan usia > 14 hari RMAN> list archivelog all completed before 'sysdate -14'; 9. Delete archivelog dengan kondisi usia file lebih lama dari 14 hari RMAN> delete force noprompt archivelog all completed before 'sysdate -14'; 10. Restore archivelog ke direktori archiving berdasarkan log sequence 50 s/d 60 RMAN> restore archivelog from logseq 50 until logseq 60; 11. Memeriksa avaibilitas backup RMAN> crosscheck backup; 12. Memeriksa backup yang sudah obsolete RMAN> report obsolete; 13. Menghapus backup obsolete RMAN> delete obsolete; Latihan : Gunakan RMAN untuk maintain file archiving di /oracle/data/arch 1. Set destinsasi backup ke /home/oracle/bkup/%d_%U 2. Backup semua archivelog 3. List hasil backup summary dan detil 4. Delete file-file archive yang usianya > 7 hari di /oracle/data/arch dengan menggunakan RMAN 5. Periksa file archive di /oracle/data/arch, file dengan usia > 7 hari sudah terdelete 6. Restore 1 buah file archivelog dari backup dengan log sequence pilih sendiri dilihat dari nomor 3 Periksa file archive dengan log sequence tersebut sudah direstore di /oracle/data/arch
Selamat datang untuk berbagi IT
Selamat datang untuk berbagi IT.
Kamis, 23 Juli 2020
Latihan 05
By Dimas dimz Juli 23, 2020