Minggu, 15 November 2009

Flashback Database

Flashback database merupakan fitur baru dalam Oracle 10g, dengan flashback database kita bisa mengembalikan database ke kondisi tertentu berdasarkan waktu atau SCN. Flashback database digunakan untuk melakukan recovery database karena user melakukan truncate large table, drop user atau terjadi kesalahan transaksi yang sangat kompleks sehingga terlalu sulit untuk telusuri.
Walaupun flashback database lebih mudah dan lebih simple dibandingkan dengan INCOMPLETE RECOVERY namun ada keterbatasan terhadap flashback database. Flashback database tidak bisa dilakukan dalam kondisi seperti:

  • Kerusakan media disk, kita tetap harus melakukan restore file database dari media backup dan melakukan recovery baik complete ataupun incomplete
  • Datafile sudah berubah ukuran menjadi lebih kecil atau biasa disebut shrinking datafiles (defrag datafile)
  • Control baru direstore atau recreate
  • Drop tablespace dan recovery dengan OPEN RESETLOGS
  • Tidak bisa melakukan flashback database ke SCN yang lebih kecil dari SCN yang ada di flashback log

KONFIGURASI FLASHBACK

Secara default database yang kita buat belum bisa untuk melakukan flashback database. Kita harus melakukan beberapa konfigurasi dulu

1. SETTING ARCHIVELOG MODE DATABASE
Flashback database mensyaratkan database harus ARCHIVELOG. Untuk mengetahui apakah database sudah archivelog atau belum, cek dengan perintah berikut:

SQL> ARCHIVE LOG LIST;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 1
Next log sequence to archive 3
Current log sequence 3

Info diatas menunjukkan database sudah ARCHIVELOG. Jika belum lakukan konfigurasi dengan cara seperti berikut :

SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT ;
SQL> ALTER DATABASE ARCHIVELOG ;
SQL> ALTER DATABASE OPEN ;

2. SETTING UKURAN FLASH RECOVERY AREA

SQL> SHOW PARAMETER db_recovery_file_dest_size;
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------
db_recovery_file_dest_size big integer 2G

Ukuran flash recovery area adalah 2 GB, jika ukuran dirasa kurang, flash recovery area bisa dibesarkan dengan perintah :

SQL> ALTER SYSTEM SET db_recovery_file_dest_size=3G;
System altered.

3. SETTING RETENTION FLASHBACK
Misalkan maksimum bisa flashbak sampai 2 hari ke belakang.

SQL> ALTER SYSTEM SET
2 DB_FLASHBACK_RETENTION_TARGET=2880
3 SCOPE=BOTH; System altered.


4. AKTIFKAN FITUR FLASHBACK DATABASE

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount;
ORACLE instance started.
Total System Global Area 272629760 bytes
Fixed Size 1248504 bytes
Variable Size 88081160 bytes
Database Buffers 180355072 bytes
Redo Buffers 2945024 bytes
Database mounted.

SQL> alter database flashback on;
Database altered.
SQL> alter database open;
Database altered.

MONITORING FLASHBACK

Flashback database bisa dimonitor melalui dynamic view V$DATABASE, V$FLASHBACK_DATABASE_LOG dan V$FLASHBACK_DATABASE STATS.
View V$DATABASE menampilkan informasi apakah Flashback Database enable atau disable, jika enable bernilai YES dan disable bernilai NO.

SQL> select flashback_on from v$database;
FLASHBACK_ON
------------------
YES

View V$FLASHBACK_DATABASE_LOG view baru di Oracle 10g dan dibuat untuk mendukung fasilitas Flashback Database. Informasi dari view ini adalah total space yang diperlukan di recovery area untuk mendukung aktifitas flashback database. View ini juga menampilkan ukuran flashback data yaitu pada kolom FLASHBACK_SIZE. Kolom ESTIMATED_FLASHBACK_SIZE digunakan untuk menentukan perkiraan ukuran flashback data yang diperlukan untuk setting retention target yang sudah kita lakukan.

SQL> select
2 oldest_flashback_scn AS OLD_SCN,
3 TO_CHAR(oldest_flashback_time,'DD-MM-YYYY:HH24:MI:SS') AS OLD_TIME,
4 retention_target as RET_TARGET,
5 estimated_flashback_size,
6 FLASHBACK_SIZE
7 from v$flashback_database_log;
OLD_SCN OLD_TIME RET_TARGET EST_FB_SIZE FLASHBACK_SIZE
------- ---------------- ---------- ----------- --------------
741507 02-10-2007:13:16 2880 0 8192000

Database Anda sudah siap untuk fitur FLASHBACK DATABASE.

sumber : http://www.klik-oracle.web.id/?tag=flashback-database

Tidak ada komentar:

Posting Komentar