ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Yeni Ba?layanlar ??in Oracle 12c
Her ne kadar yay?nlanma s¨¹resi ¨¹zerinden epey bir zaman ge?mi? olsa da Oracle 12c olarak
kullan?m?nda olan sistem say?s? pek fazla de?ildir. Bunun sebebi olarak al??kanl?klar, i?leyen sistemde
yeni bir yap?ya ge?meme iste?i, mali konular vb¡­ sebepler olsa da Oracle12c biz veritaban? y?neticileri
i?in gelen yeni ?zellikler ile kullan?ma haz?r bir ?ekilde bizleri beklemektedir.
Bu yaz?da yeni ba?layanlar i?in Oracle 12c hakk?nda temel bilgiler ve ufak ?rneklerle kafalar?ndaki soru
i?aretlerine ???k tutmaya ?al??aca??m.
Oracle 12c Nedir ?
Oracle¡¯?n bu zamana kadar olan geli?im hikayesinide Oracle 9i ile gelen RAC ?zelli?ini kendimize
ba?lang?? noktas? olarak alabiliriz. Sonras?n 10g ile gelen Grid Computing ile bize farkl? noktalardaki
hardware ve storage¡¯leri kullanarak d¨¹?¨¹k maliyet hedeflenmesi ve 11g ile bu ?zelliklerin y?netim
k?sm?nda yap?lan de?i?iklikleriyle veritaban? y?neticilerinin elinibiraz daha rahatlad?. Ancak Oracle 12c
ile Cloud yap?s?na ge?erek hem mimari hem de mant?ksal olarak yeni bir ¨¹r¨¹n olarak kar??m?za ??kt?.
Art?k kar??m?zda tek instance ¨¹zerinde birden fazla veritaban? y?netebildi?imiz ve bunlar? rahatl?kla
ta??yabildi?imiz bir yap? sunuldu.
Bu yap?n?n i?inde bize yabanc? farkl? kavramlarda yer ald?. Bunlar? inceleyecek olursak ;
CDB : Container Veritaban? (Super Database). Sistemin ?al??mas?nda en altta yer alan ana veri taban?
olarak nitelendirebiliriz.
PDB : Pluggable Veritaban? (Sub Database). Sistemde ¨¹zerinde g¨¹nl¨¹k OLTP olarak canl? veya standby
olarak kulland???m?z veritabanlar?. Ta??nabilir ?zelli?ine sahiptir.
Oracle white paperlarda bu kavramlar? anlat?rken birden fazla veritaban?n?n tek bir super database
(multitenant container database) i?inde yer almas? olarak tan?mlamakta.
NON-PDB : Oracle 12c i?inde ta??nabilir ?zellikte olmayan veri tabanlar?d?r.
PDB$SEED : Container Veritaban? ¨¹zerinde Pluggable Veritabanlar?n?n kurulum a?amas?nda ?ablon
olarak kullan?lan yap?d?r.
Container Database :
Super Database olarak adland?rd???m?z ve i?inde farkl? veritabanlar?n? bar?nd?ran sistemdir. ?lk bak??ta
bakaca??m?z temel farkl?l?klar a?a??daki gibidir.
? ROOT yap?s? alt?nda ¡®Oracle System Metada¡¯ ve i?lemlerinin yap?ld??? aland?r.
? ¡®Common Users¡¯ yani kulln?c? y?netiminin yap?ld??? aland?r.
? Instance mant???nda memory ve proses y?netiminin yap?ld??? aland?r.
? 1¡¯den 255¡¯ e kadar olan PDB¡¯leri tutabilece?imiz Ana veritaban?m?zd?r.
? PDB¡¯ler ¨¹zerinde y?netimi sa?layacak ve haklar? verebilece?imiz aland?r.
CDB$ROOT / Root Dosyalar?
Oracle Container yap?n?n alt?nda CDB$ROOT olarak adland?r?lan ve i?inde veritaban? dosyalar?n?n yer
ald??? bir yap? mevcuttur.
Buradaki en b¨¹y¨¹k yenilikler ise ;
- Oracle 12c¡¯de mevcut PDB¡¯lerin ortak CF ve REDOLOGlar? kullanmas?d?r.
- Bu alan i?inde Flashback Logs , Archive Log yer almaktad?r.
- Pluggable veritabanlar?na ait System, SYSAUX, Users, Tempfiles, Undo yer almaktad?r.
Pluggable Database (PDB)
Oracle 12c ile gelen yap? de?i?ikli?inin en temel ta??d?r diyebiliriz. Art?k veri tabanlar?m?z? ba?ka bir
yap?ya rahatl?kla ta??yabilir, iste?imiz gibi say?s?n? artt?rabiliriz. Bu yap?ya ait olan ve y?netiminde olan
bile?enler ??yledir.
- Uygulamaya ait ve TEMP (sadece kendi i?inde kullanmak i?in) Tablespaceleri
- PDB kullan?c?lar ve haklar?
- PDB Sistem Metadatas?
- ?al??an uygulaman?n verileri
- Resource Plan
Kullan?c?lar ve Roller
SYSTEM SYSAUX
Users
Temp
OBJ$
Resource
PlanLocal
Privilege
Common
Local
Common
Users
Local
Users
Oracle 12c¡¯ye ait olan kullan?c?lar? ve bu kullan?c?lara ait haklar? Container veritaban? ve Pluggable
veritaban? olarak ayr? ayr? incelemeliyiz.
- Container Veritaban? :
Yaz?n?n ba??nda da yer ald??? ¨¹zere sistemin temelinde yer alan bu yap? di?er veri tabanlar?ndaki
kullan?c? ve haklar?n? d¨¹zenlemekle de yetkilidir. Bu yap?daki kullan?c?lar ¡°Common Users¡± olarak
ge?mektedir. Bu kullan?c?lar?n ?zelliklerini inceleyecek olursak ;
? Kullan?c?lar Root Container¡¯dan y?netilir
? Her kullan?c? C## ?n ad?yla ba?lamak zorundad?r.
? Container ¨¹zerindeki her kullan?c? Pluggable i?inde ge?erlidir.
? Tekil kullan?c?lard?r.
? Komut sat?r?nda kullan?c? olu?tururken CONTAINER=ALL parametresi ile yetkilendirme
yapabiliriz.
Container veri taban? ¨¹zerinde bulunan roller ise ¡°Common Role¡± olarak adland?r?lmaktad?r. Bu yap?y?
incelersek;
? Root Container¡¯dan y?netilir
? CREATE ROLE ¨C SET CONTAINER parameteleri kullan?l?r
? C## ?n ad?yla ba?lamak zorundad?r.
- Pluggable Veritaban? :
Bu yap?y? Oracle 12c ?ncesinde yer alan veritaban? mant??? olarak d¨¹?¨¹nebiliriz. Kullan?c?lar?m?z da bu
mant?kda sadece kullan?ld??? veritaban? ¨¹zerinde yetkilendirilip olu?turulabilir. Temel olarak
?zelliklerini inceleyecek olursak;
? Pre ¨C Oracle 12c
? Pluggable kullan?c?s?d?r
? Ayn? isimde farkl? Pluggable veri tabanlar? ¨¹zerinde olabilir.
Pluggable veri taban? ¨¹zerinde bulunan roller ise ¡°Local Role¡± olarak adland?r?lmaktad?r. Bu yap?y?
incelersek;
? Pluggable veri taban?ndan y?netilir.
? CREATE ROLE syntax¡¯? kullan?r?z
? Olu?turuldu?u Pluggable veri taban? ¨¹zerinde ge?erlidir.
Yukar?daki ak??? izleyecek olursak kullan?c?lar konusu hakk?nda bizlere a??klay?c? olacakt?r. ?eklin sol
taraf?nda yer alan SYS ve C##DBA kullan?c?lar?m?z CDB$ROOT ¨¹zerinden y?netilmekte olup Container
yap? ¨¹zerinde yer alan b¨¹t¨¹n Pluggable veritabanlar?nda i?lem yapabilmektedir. Di?er taraftan
Container ¨¹zerinde bulunan pdbtst1 ve pdbts2 Pluggable veritabanlar? kendi i?erisinde HR ve NAT
kullan?c?lar? bulundurmaktad?r. Ancak ayn? isimde olan kullan?c?lar sadece kendi veri tabanlar?nda i?lem
yapabilmektedir.
Komut sat?r?nda kullan?c? olu?turma ve haklar?n? inceleyecek olursak ;
Create user c##dba identified by test1 container=ALL;
Grant create session to c##dba container=ALL;
Grant select any table to c##dba container=ALL;
Pluggable veri tabanlar?na ba?lan?rken kullan?m a?a??daki gibidir;
sqlplus sys/**@pdbtst1 as sysdba;
sqlplus sys/**@pdbtst2 as sysdba;
Pluggable Veritaban? Olu?turma
Sistemde kullanaca??m?z Pluggable veritabnalar?n? Container yap?s? ¨¹zerinde olu?tural?m. Bu olu?turma
i?leminde farkl? y?ntemlerle Pluggable veri taban? olu?turabiliriz. ??lemlerin ?ncesinde ;
- CBD$ROOT¡¯da olmam?z gerekti?inden nerede oldu?umuzu kontrol edelim
SQL> show con_name
CON_NAME
CDB$ROOT
- v$database¡¯i de sorgulayarak a??l?? modumuzu g?relim.
NOT: CDB her zaman READ-WRITE modda olur PDB$SEED her zaman READ ONLY modda yer al?r.
1. FILE_NAME_CONVERT olmadan PDB olu?turma
Bu y?ntemde mevcuttaki ?ablona ait olarak Container veri taban?n?n kendi i?inde olu?turaca?? dizin
yap?s? kullan?larak gerekli olu?turma yap?l?r.
CREATE PLUGGABLE DATABASE PDBTST1 ADMIN USER PDBTST1_ADMIN IDENTIFIED BY
oracle ROLES = (connect,resource);
*** Bu konutun ?ncesinde ba?land???m?z session i?in pdb_file_name_convert parametresini set
ederiz.
alter session set pdb_file_name_convert='pdb',' PDBTST1';
NOT: Create komutu sonras?nda alert.log¡¯da ??yle bir bilgi g?r¨¹necektir. Unusable ve NEW modunda
olu?turulmu?tur.
2. FILE_NAME_CONVERT ile PDB olu?turma
Olu?turaca??m?z veritaban?n? FILE_NAME_CONVERT parametresini kullanarak kendi belirleyece?imiz
dizin i?inde olu?turma imkan? sa?layacakt?r.
CREATE PLUGGABLE DATABASE PDBTST1
ADMIN USER PDBTST1_ADMIN IDENTIFIED BY oracle
FILE_NAME_CONVERT = ('/disk2/app/oracle/oradata/orcl/pdbseed','/disk2/dbf');
Son olarak Container veri taban? ¨¹zerinde bulunan Pluggable veri tabanlar?n?n durumuna bakal?m.
SQL> SELECT name,open_mode FROM v$pdbs;
NAME OPEN_MODE
PDB$SEED READ ONLY
PDBTST1 NEW
Veritaban? A??l?? ¨C Kapan?? Modlar?
Oracle 12c ile veri tabanlar?n?n y?netimsel olarak farkl?l?klar?ndan da bir tanesi de veri taban? a?ma
kapama i?lemlerindedir. Temel olarak Container veri taban?nda di?er Pluggable veri tabanlar?na ait
a?ma kapama i?lemlerini de yapabiliriz. Bu modlar? inceleyecek olursak ;
- Veri Taban? A?ma ??lemleri
Container Veri taban? ¨¹zerinde a?a??daki komutlarla bir veya birden fazla veri taban?n? a?abiliriz.
ALTER PLUGGABLE DATABASE pdbtst1 OPEN;
ALTER PLUGGABLE DATABASE ALL OPEN;
A??lan veri tabanlar?n?n kontrol¨¹ i?in ;
SQL> SELECT name,open_mode FROM v$pdbs;
NAME OPEN_MODE
PDB$SEED READ ONLY
PDBORCL READ WRITE
PDBTST1 READ WRITE
Container veri taban?n? a?mak istedi?imizde ise normal bir veri taban?nda yapt???m?z komutlar yeterli
olacakt?r;
SQL> ALTER DATABASE OPEN;
SQL> STARTUP
- MOUNT ¨C SHUTDOWN ??lemleri
A?ma i?lemlerinin mant??? kapatma i?lemlerinde de ge?erlidir. Container veri tabanlar? i?in ise normal
bir veri taban?nda yapt???m?z komutlar kullan?labilir.
SQL> ALTER DATABASE MOUNT;
SQL> STARTUP MOUNT
Kapatma i?leminde a?ma i?leminde oldu?u gibi Container veri taban?nda da ayn? mant?k ge?erlidir.
K?sacas? Container ¨¹zerinde i?lemler yapabiliriz.
ALTER PLUGGABLE DATABASE pdb1 CLOSE IMMEDIATE;
ALTER PLUGGABLE DATABASE ALL EXCEPT pdb1 CLOSE;
ALTER PLUGGABLE DATABASE ALL CLOSE;
ALTER PLUGGABLE DATABASE CLOSE;
SHUTDOWN IMMEDIATE ;
Son olarak yine Container ¨¹zerinde Pluggable veri tabanlar?n? sorgulayabiliriz.
SQL> SELECT name,open_mode FROM v$pdbs;
NAME OPEN_MODE
PDB$SEED READ ONLY
PDBORCL READ WRITE
PDBTST1 MOUNTED
?zg¨¹r Umut VURGUN
Ocak,2014
Ad

Recommended

Oracle database 12c sql worshop 1 student guide vol 2
Oracle database 12c sql worshop 1 student guide vol 2
Otto Paiz
?
Presentation implementing oracle asm successfully
Presentation implementing oracle asm successfully
xKinAnx
?
Ultimul adevar sau sfarsitul jocului inconstient
Ultimul adevar sau sfarsitul jocului inconstient
Mihai Corui CoachZen
?
Concepts de sauvegarde et de r¨¦cup¨¦ration
Soukaina Boujadi
?
Oracle Data Guard
Oracle Data Guard
Martin Meyer
?
Disk Performance Comparison Xen v.s. KVM
Disk Performance Comparison Xen v.s. KVM
nknytk
?
SUBCONSCIENTE: modificaci¨®n r¨¢pida de creencias limitantes
Raul Erazo
?
Oracle ASM 11g - The Evolution
Oracle ASM 11g - The Evolution
Alex Gorbachev
?
Percona Live 2022 - The Evolution of a MySQL Database System
Percona Live 2022 - The Evolution of a MySQL Database System
Frederic Descamps
?
Postgresql database administration volume 1
Postgresql database administration volume 1
Federico Campoli
?
[Modern Cloud Day Tokyo 2019] ¥ª¥é¥¯¥ë¥³¥ó¥µ¥ë¤¬ÕZ¤ë£¡ÊÂÀý¤Ç¤ß¤Æ¤¤¤¯Oracle Cloud InfrastructureÔO...
[Modern Cloud Day Tokyo 2019] ¥ª¥é¥¯¥ë¥³¥ó¥µ¥ë¤¬ÕZ¤ë£¡ÊÂÀý¤Ç¤ß¤Æ¤¤¤¯Oracle Cloud InfrastructureÔO...
¥ª¥é¥¯¥ë¥¨¥ó¥¸¥Ë¥¢Í¨ÐÅ
?
ProxySQL in the Cloud
ProxySQL in the Cloud
Ren¨¦ Canna¨°
?
PostgreSQL ???? ???? ???
PostgreSQL ???? ???? ???
PgDay.Seoul
?
LF_DPDK17_Serverless DPDK - How SmartNIC resident DPDK Accelerates Packet Pro...
LF_DPDK17_Serverless DPDK - How SmartNIC resident DPDK Accelerates Packet Pro...
LF_DPDK
?
Oracle GoldenGate and Apache Kafka A Deep Dive Into Real-Time Data Streaming
Oracle GoldenGate and Apache Kafka A Deep Dive Into Real-Time Data Streaming
Michael Rainey
?
Oracle Advanced Security Transparent Data Encryption¤Î¤´½B½é
Oracle Advanced Security Transparent Data Encryption¤Î¤´½B½é
¥ª¥é¥¯¥ë¥¨¥ó¥¸¥Ë¥¢Í¨ÐÅ
?
How Pulsar Stores Your Data - Pulsar Summit NA 2021
How Pulsar Stores Your Data - Pulsar Summit NA 2021
StreamNative
?
Oracle11g
Oracle11g
Ensar Yurt
?
Oracle ile tanisalim
Oracle ile tanisalim
Mine ?zdemir
?
Orneklere Oracle 11gR2 ve Genel Kavramlar Isimli kitabdan
Orneklere Oracle 11gR2 ve Genel Kavramlar Isimli kitabdan
Anar Godjaev
?
Oracle database architecture
Oracle database architecture
H?zlan ERPAK
?
Database Vault / Verinin G¨¹venli?i
Database Vault / Verinin G¨¹venli?i
Anar Godjaev
?
MongoDB Overview
MongoDB Overview
Cihan ?zhan
?
SQL-ETL-Raporlama
SQL-ETL-Raporlama
Deniz Alkan
?
?leri Seviye T-SQL Programlama - Chapter 08
?leri Seviye T-SQL Programlama - Chapter 08
Cihan ?zhan
?
Oracle Mimarisi "Orneklerle Oracle 11g R2 ve Genel kavramlar isimli KItabdan"
Oracle Mimarisi "Orneklerle Oracle 11g R2 ve Genel kavramlar isimli KItabdan"
Anar Godjaev
?
Oracle Cloud G in gidi?i C nin geli?i
Oracle Cloud G in gidi?i C nin geli?i
Zekeriya Besiroglu
?

More Related Content

What's hot (9)

Percona Live 2022 - The Evolution of a MySQL Database System
Percona Live 2022 - The Evolution of a MySQL Database System
Frederic Descamps
?
Postgresql database administration volume 1
Postgresql database administration volume 1
Federico Campoli
?
[Modern Cloud Day Tokyo 2019] ¥ª¥é¥¯¥ë¥³¥ó¥µ¥ë¤¬ÕZ¤ë£¡ÊÂÀý¤Ç¤ß¤Æ¤¤¤¯Oracle Cloud InfrastructureÔO...
[Modern Cloud Day Tokyo 2019] ¥ª¥é¥¯¥ë¥³¥ó¥µ¥ë¤¬ÕZ¤ë£¡ÊÂÀý¤Ç¤ß¤Æ¤¤¤¯Oracle Cloud InfrastructureÔO...
¥ª¥é¥¯¥ë¥¨¥ó¥¸¥Ë¥¢Í¨ÐÅ
?
ProxySQL in the Cloud
ProxySQL in the Cloud
Ren¨¦ Canna¨°
?
PostgreSQL ???? ???? ???
PostgreSQL ???? ???? ???
PgDay.Seoul
?
LF_DPDK17_Serverless DPDK - How SmartNIC resident DPDK Accelerates Packet Pro...
LF_DPDK17_Serverless DPDK - How SmartNIC resident DPDK Accelerates Packet Pro...
LF_DPDK
?
Oracle GoldenGate and Apache Kafka A Deep Dive Into Real-Time Data Streaming
Oracle GoldenGate and Apache Kafka A Deep Dive Into Real-Time Data Streaming
Michael Rainey
?
Oracle Advanced Security Transparent Data Encryption¤Î¤´½B½é
Oracle Advanced Security Transparent Data Encryption¤Î¤´½B½é
¥ª¥é¥¯¥ë¥¨¥ó¥¸¥Ë¥¢Í¨ÐÅ
?
How Pulsar Stores Your Data - Pulsar Summit NA 2021
How Pulsar Stores Your Data - Pulsar Summit NA 2021
StreamNative
?
Percona Live 2022 - The Evolution of a MySQL Database System
Percona Live 2022 - The Evolution of a MySQL Database System
Frederic Descamps
?
Postgresql database administration volume 1
Postgresql database administration volume 1
Federico Campoli
?
[Modern Cloud Day Tokyo 2019] ¥ª¥é¥¯¥ë¥³¥ó¥µ¥ë¤¬ÕZ¤ë£¡ÊÂÀý¤Ç¤ß¤Æ¤¤¤¯Oracle Cloud InfrastructureÔO...
[Modern Cloud Day Tokyo 2019] ¥ª¥é¥¯¥ë¥³¥ó¥µ¥ë¤¬ÕZ¤ë£¡ÊÂÀý¤Ç¤ß¤Æ¤¤¤¯Oracle Cloud InfrastructureÔO...
¥ª¥é¥¯¥ë¥¨¥ó¥¸¥Ë¥¢Í¨ÐÅ
?
PostgreSQL ???? ???? ???
PostgreSQL ???? ???? ???
PgDay.Seoul
?
LF_DPDK17_Serverless DPDK - How SmartNIC resident DPDK Accelerates Packet Pro...
LF_DPDK17_Serverless DPDK - How SmartNIC resident DPDK Accelerates Packet Pro...
LF_DPDK
?
Oracle GoldenGate and Apache Kafka A Deep Dive Into Real-Time Data Streaming
Oracle GoldenGate and Apache Kafka A Deep Dive Into Real-Time Data Streaming
Michael Rainey
?
How Pulsar Stores Your Data - Pulsar Summit NA 2021
How Pulsar Stores Your Data - Pulsar Summit NA 2021
StreamNative
?

Similar to Yeni ba?layanlar i??in Oracle 12c (20)

Oracle11g
Oracle11g
Ensar Yurt
?
Oracle ile tanisalim
Oracle ile tanisalim
Mine ?zdemir
?
Orneklere Oracle 11gR2 ve Genel Kavramlar Isimli kitabdan
Orneklere Oracle 11gR2 ve Genel Kavramlar Isimli kitabdan
Anar Godjaev
?
Oracle database architecture
Oracle database architecture
H?zlan ERPAK
?
Database Vault / Verinin G¨¹venli?i
Database Vault / Verinin G¨¹venli?i
Anar Godjaev
?
MongoDB Overview
MongoDB Overview
Cihan ?zhan
?
SQL-ETL-Raporlama
SQL-ETL-Raporlama
Deniz Alkan
?
?leri Seviye T-SQL Programlama - Chapter 08
?leri Seviye T-SQL Programlama - Chapter 08
Cihan ?zhan
?
Oracle Mimarisi "Orneklerle Oracle 11g R2 ve Genel kavramlar isimli KItabdan"
Oracle Mimarisi "Orneklerle Oracle 11g R2 ve Genel kavramlar isimli KItabdan"
Anar Godjaev
?
Oracle Cloud G in gidi?i C nin geli?i
Oracle Cloud G in gidi?i C nin geli?i
Zekeriya Besiroglu
?
Expert one-on-one Oracle / Redo ve Rollback
Expert one-on-one Oracle / Redo ve Rollback
Cansu Arslan
?
Delphi 7
Delphi 7
Cumhuriyet ?niversitesi
?
Oracle Cloud Servisleri Uygulamas?- Oracle Cloud Day 2015 Istanbul
Oracle Cloud Servisleri Uygulamas?- Oracle Cloud Day 2015 Istanbul
Garanti Teknoloji
?
?leri Seviye T-SQL Programlama - Chapter 21
?leri Seviye T-SQL Programlama - Chapter 21
Cihan ?zhan
?
Sql server 2012 gi?ri??
Sql server 2012 gi?ri??
oktaygokgol
?
Redologlar ve Y?neti?mi?
Redologlar ve Y?neti?mi?
Anar Godjaev
?
Orneklere Oracle 11gR2 ve Genel Kavramlar Isimli kitabdan
Orneklere Oracle 11gR2 ve Genel Kavramlar Isimli kitabdan
Anar Godjaev
?
Oracle database architecture
Oracle database architecture
H?zlan ERPAK
?
Database Vault / Verinin G¨¹venli?i
Database Vault / Verinin G¨¹venli?i
Anar Godjaev
?
?leri Seviye T-SQL Programlama - Chapter 08
?leri Seviye T-SQL Programlama - Chapter 08
Cihan ?zhan
?
Oracle Mimarisi "Orneklerle Oracle 11g R2 ve Genel kavramlar isimli KItabdan"
Oracle Mimarisi "Orneklerle Oracle 11g R2 ve Genel kavramlar isimli KItabdan"
Anar Godjaev
?
Oracle Cloud G in gidi?i C nin geli?i
Oracle Cloud G in gidi?i C nin geli?i
Zekeriya Besiroglu
?
Expert one-on-one Oracle / Redo ve Rollback
Expert one-on-one Oracle / Redo ve Rollback
Cansu Arslan
?
Oracle Cloud Servisleri Uygulamas?- Oracle Cloud Day 2015 Istanbul
Oracle Cloud Servisleri Uygulamas?- Oracle Cloud Day 2015 Istanbul
Garanti Teknoloji
?
?leri Seviye T-SQL Programlama - Chapter 21
?leri Seviye T-SQL Programlama - Chapter 21
Cihan ?zhan
?
Sql server 2012 gi?ri??
Sql server 2012 gi?ri??
oktaygokgol
?
Redologlar ve Y?neti?mi?
Redologlar ve Y?neti?mi?
Anar Godjaev
?
Ad

More from ?zg¨¹r Umut Vurgun (6)

Oracle Big Data MAA
Oracle Big Data MAA
?zg¨¹r Umut Vurgun
?
Exadata Performance Notes
Exadata Performance Notes
?zg¨¹r Umut Vurgun
?
Uploading certificate with oracle wallet manager and orapki utilities
Uploading certificate with oracle wallet manager and orapki utilities
?zg¨¹r Umut Vurgun
?
Oracle Cloud As Services
Oracle Cloud As Services
?zg¨¹r Umut Vurgun
?
Oracle12c flex rac flex asm
Oracle12c flex rac flex asm
?zg¨¹r Umut Vurgun
?
Oracle12c Pluggable Database Hands On - TROUG 2014
Oracle12c Pluggable Database Hands On - TROUG 2014
?zg¨¹r Umut Vurgun
?
Ad

Yeni ba?layanlar i??in Oracle 12c

  • 1. Yeni Ba?layanlar ??in Oracle 12c Her ne kadar yay?nlanma s¨¹resi ¨¹zerinden epey bir zaman ge?mi? olsa da Oracle 12c olarak kullan?m?nda olan sistem say?s? pek fazla de?ildir. Bunun sebebi olarak al??kanl?klar, i?leyen sistemde yeni bir yap?ya ge?meme iste?i, mali konular vb¡­ sebepler olsa da Oracle12c biz veritaban? y?neticileri i?in gelen yeni ?zellikler ile kullan?ma haz?r bir ?ekilde bizleri beklemektedir. Bu yaz?da yeni ba?layanlar i?in Oracle 12c hakk?nda temel bilgiler ve ufak ?rneklerle kafalar?ndaki soru i?aretlerine ???k tutmaya ?al??aca??m. Oracle 12c Nedir ? Oracle¡¯?n bu zamana kadar olan geli?im hikayesinide Oracle 9i ile gelen RAC ?zelli?ini kendimize ba?lang?? noktas? olarak alabiliriz. Sonras?n 10g ile gelen Grid Computing ile bize farkl? noktalardaki hardware ve storage¡¯leri kullanarak d¨¹?¨¹k maliyet hedeflenmesi ve 11g ile bu ?zelliklerin y?netim k?sm?nda yap?lan de?i?iklikleriyle veritaban? y?neticilerinin elinibiraz daha rahatlad?. Ancak Oracle 12c ile Cloud yap?s?na ge?erek hem mimari hem de mant?ksal olarak yeni bir ¨¹r¨¹n olarak kar??m?za ??kt?. Art?k kar??m?zda tek instance ¨¹zerinde birden fazla veritaban? y?netebildi?imiz ve bunlar? rahatl?kla ta??yabildi?imiz bir yap? sunuldu. Bu yap?n?n i?inde bize yabanc? farkl? kavramlarda yer ald?. Bunlar? inceleyecek olursak ; CDB : Container Veritaban? (Super Database). Sistemin ?al??mas?nda en altta yer alan ana veri taban? olarak nitelendirebiliriz. PDB : Pluggable Veritaban? (Sub Database). Sistemde ¨¹zerinde g¨¹nl¨¹k OLTP olarak canl? veya standby olarak kulland???m?z veritabanlar?. Ta??nabilir ?zelli?ine sahiptir. Oracle white paperlarda bu kavramlar? anlat?rken birden fazla veritaban?n?n tek bir super database (multitenant container database) i?inde yer almas? olarak tan?mlamakta. NON-PDB : Oracle 12c i?inde ta??nabilir ?zellikte olmayan veri tabanlar?d?r. PDB$SEED : Container Veritaban? ¨¹zerinde Pluggable Veritabanlar?n?n kurulum a?amas?nda ?ablon olarak kullan?lan yap?d?r. Container Database : Super Database olarak adland?rd???m?z ve i?inde farkl? veritabanlar?n? bar?nd?ran sistemdir. ?lk bak??ta bakaca??m?z temel farkl?l?klar a?a??daki gibidir. ? ROOT yap?s? alt?nda ¡®Oracle System Metada¡¯ ve i?lemlerinin yap?ld??? aland?r. ? ¡®Common Users¡¯ yani kulln?c? y?netiminin yap?ld??? aland?r. ? Instance mant???nda memory ve proses y?netiminin yap?ld??? aland?r. ? 1¡¯den 255¡¯ e kadar olan PDB¡¯leri tutabilece?imiz Ana veritaban?m?zd?r. ? PDB¡¯ler ¨¹zerinde y?netimi sa?layacak ve haklar? verebilece?imiz aland?r.
  • 2. CDB$ROOT / Root Dosyalar? Oracle Container yap?n?n alt?nda CDB$ROOT olarak adland?r?lan ve i?inde veritaban? dosyalar?n?n yer ald??? bir yap? mevcuttur. Buradaki en b¨¹y¨¹k yenilikler ise ; - Oracle 12c¡¯de mevcut PDB¡¯lerin ortak CF ve REDOLOGlar? kullanmas?d?r. - Bu alan i?inde Flashback Logs , Archive Log yer almaktad?r. - Pluggable veritabanlar?na ait System, SYSAUX, Users, Tempfiles, Undo yer almaktad?r. Pluggable Database (PDB) Oracle 12c ile gelen yap? de?i?ikli?inin en temel ta??d?r diyebiliriz. Art?k veri tabanlar?m?z? ba?ka bir yap?ya rahatl?kla ta??yabilir, iste?imiz gibi say?s?n? artt?rabiliriz. Bu yap?ya ait olan ve y?netiminde olan bile?enler ??yledir. - Uygulamaya ait ve TEMP (sadece kendi i?inde kullanmak i?in) Tablespaceleri - PDB kullan?c?lar ve haklar? - PDB Sistem Metadatas? - ?al??an uygulaman?n verileri - Resource Plan Kullan?c?lar ve Roller SYSTEM SYSAUX Users Temp OBJ$ Resource PlanLocal Privilege Common Local Common Users Local Users
  • 3. Oracle 12c¡¯ye ait olan kullan?c?lar? ve bu kullan?c?lara ait haklar? Container veritaban? ve Pluggable veritaban? olarak ayr? ayr? incelemeliyiz. - Container Veritaban? : Yaz?n?n ba??nda da yer ald??? ¨¹zere sistemin temelinde yer alan bu yap? di?er veri tabanlar?ndaki kullan?c? ve haklar?n? d¨¹zenlemekle de yetkilidir. Bu yap?daki kullan?c?lar ¡°Common Users¡± olarak ge?mektedir. Bu kullan?c?lar?n ?zelliklerini inceleyecek olursak ; ? Kullan?c?lar Root Container¡¯dan y?netilir ? Her kullan?c? C## ?n ad?yla ba?lamak zorundad?r. ? Container ¨¹zerindeki her kullan?c? Pluggable i?inde ge?erlidir. ? Tekil kullan?c?lard?r. ? Komut sat?r?nda kullan?c? olu?tururken CONTAINER=ALL parametresi ile yetkilendirme yapabiliriz. Container veri taban? ¨¹zerinde bulunan roller ise ¡°Common Role¡± olarak adland?r?lmaktad?r. Bu yap?y? incelersek; ? Root Container¡¯dan y?netilir ? CREATE ROLE ¨C SET CONTAINER parameteleri kullan?l?r ? C## ?n ad?yla ba?lamak zorundad?r. - Pluggable Veritaban? : Bu yap?y? Oracle 12c ?ncesinde yer alan veritaban? mant??? olarak d¨¹?¨¹nebiliriz. Kullan?c?lar?m?z da bu mant?kda sadece kullan?ld??? veritaban? ¨¹zerinde yetkilendirilip olu?turulabilir. Temel olarak ?zelliklerini inceleyecek olursak; ? Pre ¨C Oracle 12c ? Pluggable kullan?c?s?d?r ? Ayn? isimde farkl? Pluggable veri tabanlar? ¨¹zerinde olabilir. Pluggable veri taban? ¨¹zerinde bulunan roller ise ¡°Local Role¡± olarak adland?r?lmaktad?r. Bu yap?y? incelersek; ? Pluggable veri taban?ndan y?netilir. ? CREATE ROLE syntax¡¯? kullan?r?z ? Olu?turuldu?u Pluggable veri taban? ¨¹zerinde ge?erlidir.
  • 4. Yukar?daki ak??? izleyecek olursak kullan?c?lar konusu hakk?nda bizlere a??klay?c? olacakt?r. ?eklin sol taraf?nda yer alan SYS ve C##DBA kullan?c?lar?m?z CDB$ROOT ¨¹zerinden y?netilmekte olup Container yap? ¨¹zerinde yer alan b¨¹t¨¹n Pluggable veritabanlar?nda i?lem yapabilmektedir. Di?er taraftan Container ¨¹zerinde bulunan pdbtst1 ve pdbts2 Pluggable veritabanlar? kendi i?erisinde HR ve NAT kullan?c?lar? bulundurmaktad?r. Ancak ayn? isimde olan kullan?c?lar sadece kendi veri tabanlar?nda i?lem yapabilmektedir. Komut sat?r?nda kullan?c? olu?turma ve haklar?n? inceleyecek olursak ; Create user c##dba identified by test1 container=ALL; Grant create session to c##dba container=ALL; Grant select any table to c##dba container=ALL; Pluggable veri tabanlar?na ba?lan?rken kullan?m a?a??daki gibidir; sqlplus sys/**@pdbtst1 as sysdba; sqlplus sys/**@pdbtst2 as sysdba; Pluggable Veritaban? Olu?turma Sistemde kullanaca??m?z Pluggable veritabnalar?n? Container yap?s? ¨¹zerinde olu?tural?m. Bu olu?turma i?leminde farkl? y?ntemlerle Pluggable veri taban? olu?turabiliriz. ??lemlerin ?ncesinde ; - CBD$ROOT¡¯da olmam?z gerekti?inden nerede oldu?umuzu kontrol edelim SQL> show con_name CON_NAME CDB$ROOT - v$database¡¯i de sorgulayarak a??l?? modumuzu g?relim. NOT: CDB her zaman READ-WRITE modda olur PDB$SEED her zaman READ ONLY modda yer al?r. 1. FILE_NAME_CONVERT olmadan PDB olu?turma Bu y?ntemde mevcuttaki ?ablona ait olarak Container veri taban?n?n kendi i?inde olu?turaca?? dizin yap?s? kullan?larak gerekli olu?turma yap?l?r. CREATE PLUGGABLE DATABASE PDBTST1 ADMIN USER PDBTST1_ADMIN IDENTIFIED BY oracle ROLES = (connect,resource); *** Bu konutun ?ncesinde ba?land???m?z session i?in pdb_file_name_convert parametresini set ederiz. alter session set pdb_file_name_convert='pdb',' PDBTST1'; NOT: Create komutu sonras?nda alert.log¡¯da ??yle bir bilgi g?r¨¹necektir. Unusable ve NEW modunda olu?turulmu?tur.
  • 5. 2. FILE_NAME_CONVERT ile PDB olu?turma Olu?turaca??m?z veritaban?n? FILE_NAME_CONVERT parametresini kullanarak kendi belirleyece?imiz dizin i?inde olu?turma imkan? sa?layacakt?r. CREATE PLUGGABLE DATABASE PDBTST1 ADMIN USER PDBTST1_ADMIN IDENTIFIED BY oracle FILE_NAME_CONVERT = ('/disk2/app/oracle/oradata/orcl/pdbseed','/disk2/dbf'); Son olarak Container veri taban? ¨¹zerinde bulunan Pluggable veri tabanlar?n?n durumuna bakal?m. SQL> SELECT name,open_mode FROM v$pdbs; NAME OPEN_MODE PDB$SEED READ ONLY PDBTST1 NEW Veritaban? A??l?? ¨C Kapan?? Modlar? Oracle 12c ile veri tabanlar?n?n y?netimsel olarak farkl?l?klar?ndan da bir tanesi de veri taban? a?ma kapama i?lemlerindedir. Temel olarak Container veri taban?nda di?er Pluggable veri tabanlar?na ait a?ma kapama i?lemlerini de yapabiliriz. Bu modlar? inceleyecek olursak ; - Veri Taban? A?ma ??lemleri Container Veri taban? ¨¹zerinde a?a??daki komutlarla bir veya birden fazla veri taban?n? a?abiliriz. ALTER PLUGGABLE DATABASE pdbtst1 OPEN; ALTER PLUGGABLE DATABASE ALL OPEN; A??lan veri tabanlar?n?n kontrol¨¹ i?in ; SQL> SELECT name,open_mode FROM v$pdbs; NAME OPEN_MODE PDB$SEED READ ONLY PDBORCL READ WRITE PDBTST1 READ WRITE
  • 6. Container veri taban?n? a?mak istedi?imizde ise normal bir veri taban?nda yapt???m?z komutlar yeterli olacakt?r; SQL> ALTER DATABASE OPEN; SQL> STARTUP - MOUNT ¨C SHUTDOWN ??lemleri A?ma i?lemlerinin mant??? kapatma i?lemlerinde de ge?erlidir. Container veri tabanlar? i?in ise normal bir veri taban?nda yapt???m?z komutlar kullan?labilir. SQL> ALTER DATABASE MOUNT; SQL> STARTUP MOUNT Kapatma i?leminde a?ma i?leminde oldu?u gibi Container veri taban?nda da ayn? mant?k ge?erlidir. K?sacas? Container ¨¹zerinde i?lemler yapabiliriz. ALTER PLUGGABLE DATABASE pdb1 CLOSE IMMEDIATE; ALTER PLUGGABLE DATABASE ALL EXCEPT pdb1 CLOSE; ALTER PLUGGABLE DATABASE ALL CLOSE; ALTER PLUGGABLE DATABASE CLOSE; SHUTDOWN IMMEDIATE ; Son olarak yine Container ¨¹zerinde Pluggable veri tabanlar?n? sorgulayabiliriz. SQL> SELECT name,open_mode FROM v$pdbs; NAME OPEN_MODE PDB$SEED READ ONLY PDBORCL READ WRITE PDBTST1 MOUNTED ?zg¨¹r Umut VURGUN Ocak,2014