FLASHBACK DROP
Drop Edilen Tabloyu Flashback’le Kurtarmak:
Bu Flashback özelliğiyle yanlışlıkla drop edilmiş tabloyu geri getirebiliriz, kullanım amacı budur.
Flashback operasyonlarından flashback table before drop kullanabilmemiz için “recyclebin on” olmalıdır. Flashback ayarları için aşağıdaki makaleye bakabilirsiniz.
http://omeracar.com.tr/flashback-nedir-nasil-aktif-edilir
Örnek için bir tablo yaratıp onun üzerinde çalışalım.
SQL> CREATE TABLE OMER_TEST_TAB AS (SELECT * FROM USER_TABLES);
SQL> SELECT COUNT(*) FROM OMER_TEST_TAB;
6012
SQL> DROP TABLE OMER_TEST_TAB;
Table dropped.
Drop edilen tabloyu orijinal ismiyle kurtarmak:
SQL>FLASHBACK TABLE OMER_TEST_TAB TO BEFORE DROP;
Flashback complete.
Drop edilen tabloyu yeni isimle kurtarmak:
SQL>FLASHBACK TABLE OMER_TEST_TAB TO BEFORE DROP RENAME TO OMER_TEST2_TAB;
Flashback complete.
Tablomuzu sorgulayarak tablomuzun geri gelip gelmediğine bakalım..
SQL>SELECT COUNT(*) FROM OMER_TEST_TAB T;
6012
SQL>SELECT COUNT(*) FROM OMER_TEST2_TAB;
6012
Yanlışlıkla drop edilen tablomuzu(OMER_TEST_TAB) geri getirmiş olduk.Drop edilen tablolar ve ilişkili nesneler (trigger,constraint,index vb) Recyclebin içerisinde tutulur.Nesne isimleri BIN…. İle başlıyor,
ve çöp kutusundaki tablolara select çekebiliyoruz.
SQL>SELECT * FROM “BIN$dmk5IZTTR8qVlpBs6KOSEw==$0“;
Nesneler drop edildikçe çöp kutusunda birikir bu yüzden ara ara
Recyclebin içini boşaltmak gerekiyor, bunun içinde “Purge Recyclebin” diyerek çöp kutusunu boşaltabiliyoruz..
Çöp kutusunu Purge etmek:
SQL>PURGE Recyclebin;
Bir tabloyu çöp kutusuna atmadan drop etmek:
SQL>DROP TABLE OMER_TEST_TAB PURGE;
Çöp kutusundaki bir tabloyu purge etmek:
SQL>PURGE TABLE OMER_TEST_TAB;
Umarım faydalı olur..