12c New Features : Pluggable Database Restore – Recover

Aslında bu yazıyıda bir anlamda new features olarak düşünebiliriz. Sonuçda container database 12c ile birlikte geldi. 12c öncesindeki versiyonlarda standalone database yapısı olduğundan her bir database için ayrı bir backup alır ve o backup’ ı kullanarakda yine o database için restore işlemlerimizi yapıyoruz. 12c ile bilirkte yapı RMAN tarafında biraz değişti. Örneğin bir container database’ iniz ve altında bir sürü pluggable database’leriniz olduğunu düşünürsek burda sadece container database’ in backupını alıp sonrasında bu backup içerisinden istenilen pluggable database’ i restore edebilirsiniz. Yani sizin bir container db altında 10 tane ppluggable db’ iniz varsa her biri için ayrıca backup almanız gerekmiyor. İsterseniz tabi ayrı ayrı da alabilirisiniz.

Container database’ in backupı alındığında burada kullanılan pluggable database’ lerden bir tanesini nasıl restore edebiliriz ona bakalım ;

Spfile ve controlfile container bazında olduğu için onları sonrasında anlatıyor oluruz. Şimdi databafile’ lerden başlayarak testimizi yapmaya çalışalım ;

Restore testi yapacağımız database’ i mount moda alıyoruz;

SQL> alter session set container=pdbt11;
Session altered.

SQL> shu immediate
Pluggable Database closed.

SQL> select name,dbid,open_mode from v$pdbs where name =’PDBT11′;
NAME DBID OPEN_MODE
—————————— ———- ———-
PDBT11 87534229 MOUNTED
Continue reading

12c New Fetures : Read Any Table Yetkisi Kullanımı

Oracle 12c versiyonu ile birlikte gelen read any table yetkisinin neyi ifade ettiğinden ve daha önceki versiyonlarda sıkça kullandığımız Select any table yetkisinden ne farkı olduğunu anlatmaya çalışacağım.

11g ve daha önceki versiyonlarda kullandığımız (12c versiyonu ile de kullanmaya devam ediyoruz bu arada) Select any table yetkisini bir kullanıcıya verdiğimiz de aslında o kullanıcının select attığı tabloyu LOCK edebilme yetkisini de vermiş oluyoruz. Kullanıcı aslında bunu iki şekilde sahip olmuş oluyor. Test edelim ;

Test1 adında yeni bir user create edip sadece bir tabloya select yetkisi verip neleri yapabildiğine bakalım.

===> create user test1 identified by test1
User created.
===> grant connect to test1
Grant complete.
===> grant select on kamil.test_table to test1
Grant complete.

Test tablomuzu bu user ile lock etmeye çalışalım (lock koymaya çalışalım);
Continue reading