Professional Documents
Culture Documents
Sistem Gereksinimleri
Slayatta belirtilen gereksinimler tüm platformlar için geçerli olan minimum donan m
gereksinimleridir. Kurulum özellikle diske(yere)ihtiyaç duyabilir.Ayr ca genel bir kural olarak
sa layabildi imiz daha fazla RAM daha iyidir.
Not: 2GB yada daha fazla RAMe sahip sistemlerde swap alan RAMin bir yada 2 kat olmal d r.
Her i letim sisteminin de i ik gereksinimleri oldu undan, i letim sisteminin gereksinimleri için
i letim sistemine özel Oracle döküman n kullanmal s n z. Desteklenen i letim sistemi sürümlerini
gösterir, bunlarla bir i letim sistemi gruplar n veya kullan c lar n kurmay ve kurulum için gerekli
di er ad mlar bulunur.
1
ORACLE_BASE: OFA için Oracle klasör yap s n n temellerini belirler. Kullan m iste e ba l d ri
ancak e er kullan l rda daha sonraki kurulumlaru ve upgradeleri kolayla t r r. Klasör yoludur.
/u01/app/oracle
ORACLE_HOME: Oracle yaz l m n bulunduran klasörleri gösterir, klasör yolu örne i
$ORACLE_BASE/product/10.1.0
ORACLE_SID: lk örnek(instance) ad d r., default orcl. Harfle ba lamas gereken harf ve say
toplulu udur. En fazla 8 karakter olabilir.
NS_LANG: form üzerindeki bir oturum için ba lang ç nls ayarlar n belirtie. Form
language_territory.characterset. Örnek ayar AMERICAN_DENMARK .WE8MSWIN1252
Bu Oracle mesajlar için AMERICAN dilini kullanmay , gün adlar n ve ay adlar n ayarlamay
sa lar. Alan (territory) DENMARK zaman format n , tarih format n say sal ve parasal anla malar
sa lar. Bu, UNIX de ortam de i keniyken, Windows da registry ayar d r. Sorgulamak için
select * from nls_session_parameters;
Not: Windows kurulumunda , klavye dilinden gelen dil k sm default NLS_LANG de eridir.
Amerikan olmayan klavye(Windows kurulumunda) Amerikan olmayan NLS_LANG ayarlar n
getirir.
Önyükleme Kontrolleri
Oracle Universal Installer GUI gelemden önce minimum gereksinimlerin kar lan p kar lanmad n
anlamak için baz kontroller yap l r. Sisteminizin bir veya daha fazla minimum gereksinimleri
kar layamad durumda kurulum ba lad nda -ignoreSysPreeq flag n i aretleyerek devam
edebilir. $ sh runInstaller ignoreSysPreeq
2
seçilmelidir. Bu grubun üyeleri yazma iznine sahip olmal d r. Sadece bu gruba ait kullan c lar kurma
veya kald rma i lemini yapabilir.
OrainstRoot.sh
Unix platformuna kurulum yaparken, root olarak orainstRoot.sh çal t rmal y z. Bu script inventory
pointer file (Linuxda /etc/ora/oraInst.loc) yarat r. Inventory pointer file, ba lang ç olarak Oracle
Universal Installer n inventory yerini bulmas n sa lar. Bu dosyan n örne i:
inventory_loc = /oracle/oraInventory
inst_group = oinstall
Dosya Konumlar
Universal Installer, ürünün kurulum kitinin veya stageinin bulundu u yeri gösteren Specify File
Location sayfas nda default bir de er verir.
Oraclehome isimle tan mlan r. Oracle home ismi, belirli bir Oracle home ve ili kili home üzerine
kurulu olan Oracle servisleri ile ilgili program grubunu tan mlar. Oracle home ismi 1 ila 16 karakter
uzunlu unda olmal d r, sadece alfanümerik karakteri ve altçizgiyi kapsar, bo luk olamaz.
Oracle Universal Installer, Windows platformundaki Oracle homelarda a a daki özelliklere
sahiptir.(korur)
- Oracle Universal Installer taraf ndan yarat lm tüm Oracle homelar
- Daha önceki Oracle Universal Installer taraf ndan yarat lm Oracle homelar
- ORACLE_HOME registry giri ine kaydedilmi home
Oracle Universal Installer, Unixdeki Oracle homelar korur:
- Oracle Universal Installer taraf ndan yarat lm tüm Oracle homelar
- /var/opt/oratab kalsöründeki tüm Oracle homelar
- ORACLE_HOME ortam de i kenindeki home
E er bu homelardan hiçbiri yoksa, default home diskteki en büyük bo alana göre hesaplan r.
Kurulum Tipi
Oracle Database Enterprise Edition, hem kümelenmi hemde tekli isistem konfigürasyonlar nda
endüstri önderli inde ölçeklenebilirlek ve güvenlik sunar. Online taransaction processing ve i -
zekas için en geli mi özellikleri sunar.
Oracle Satandart edition, küçük veya orta ölçekli i ler yada tüm Enterprise özelliklerini
gerektirmeyen güç, güvenilirlik ve güvenlik tabanl departman uygulamalar içindir. A a daki
enterprise seviyesi özellikleri Standart editionda bulunmayan seçenekler:
- Oracle Data Guard: Bir veya daha fazla yedek veritaban yaratmaya, yönetmeye ve görüntülemeye
yarayan servisler kümesi
- Oracle Advanced Security, Oracle Label Security, Enterprise User Security, Virtual Private
Database, N-tier authentication, Fine Gained Auditing: Bu seçenekler, Oracle Database 10gnin
geli mi güvenlik özellikleridir.
-Oracle Partitioning, Oracle OLAP, Export Transportable Tablespace ve Enterprise Data
veriambarlar taraf ndan desteklenen di er özellikler
Custom kurulum, kurmak istedi imiz bile enleri seçebilmemizi sa lar.
Öngereksinimlerin Kontrolü
Kurulumdan önce, Oracle Universal Installer ba ar l bir kurulum için gerekli özellikleri ortam
kontrol ederek bakar. Bu sayfa tüm gereksinim kontrollerinin ad n , tipini ve durumunu gösterir.
3
E er otomatik kontroller bittikten sonra çal t raca m z seçimlik kontroller varsa Otomatik
kontroller ilk çal r.
Tüm kontroller tamamland nda, sayfan n alt nda yap lan kontrollerin bir özeti bulunur. E er
çal ma s ras nda veya seçimlik kontrol do rulanmad ysa uyar verir ve kontrolün do rulanmas
gerekir. Uyar y veya seçimlik kontrolü do rulamak için, uyar üreten kontrolün checkbox n
i aretlemek yeterlidir.
Ba lang ç Veritaban
Seçebilece imiz 3 tane örnek veritaban vard r yada custom bir ba lang ç veritaban seçebiliriz.
ablon veritabanlar nda dosyalar önceden konfigüre edilmi tir ve veritaban h zl ca yarat labilir,
ancak veritaban n kendimizde seçerek yaratabiliriz. Advanced seçene i ba lang ç veritabanunda
tam bir esneklik sa lar, ancak yarat lmas uzun sürer.
Not: E er ba lang ç veritaban yaratma seçene ini seçerseniz, bir sonra özet sayfas ç kar.
Konfigürasyon ve Yönetim
E er ba lang ç veritaban yarat seçene ini seçersek, ba lang ç veritaban n yaratmak için çe itli
sorular soran sayfalarla kar la aca z.
Database Naming: defaultu orcl olan veritaban ismi.
Database Character Set: bu karakter seti verinizi veritaban nda tutarken kullanaca n z veritaban d r.
Karakter setini daha sonra de i tirmek mümkündür, çok zaman harcayan bir i tir. E er hangi
karakter setini kullanaca n z bilmiyorsan z ve çok dil kullan yorsan z, Unicode standard olan
UTF-8AL32UTF8 iyi bir seçimdir. WE8ISO8859P1 sembolünü tan maz WEISO8859P15 tan r.
Sample Schema: Demolar ve ö renmek için kullan lan örnek emalard r.
Database Management: Grid kontrol sayesinde pek çok veritaban n bir veya daha fazla makineden
yönetebiliyoruz. Database control tekbir veritaban için kullan l r.
Parola ve Özet
Database Schema Password: Yönetici kullan c lar olan SYS,SYSTEM,SYSMAN ve DBSNMP için
parola sa lar. Tümü için ayr parolay kullanabilirsiniz.
Özet: Burada tüm ürünleri ve kurulum için seçti iniz ayarlar görebilirsiniz bir sonraki ad m
kurulumun ba lamas d r. Özeti kontrol edip Install a bas n.
Kurulum
Kurulumun ilerleyi ini izleyebilirsiniz
4
Configuration Assistants
E er ba lang ç veritaban yaratmay seçtiyseniz, configuration assistant sayfas yaz l m n
kurulmas ndan sonra ç kar.
- iSQLPlus Configuration Assistant: bu iSQLPlus ve Oracle veritaban na ba lanan di er araçlar için
kullan lan OC4J(Oracle Containers for Java) y konfigüre eder.
- Oracle Net Configuration Assistant: Bu kurulum s ras nda temel a bile enlerini konfigüre eder.
Bunlar n aras nda:
Dinleyici ad ve protokol adresleri
simlendirme metotlar
tnsnames.ora dosyas ndaki a servisleri isimleri
Klasör sunucu kullan m
- Oracle Database Configuratio n Assistant: bu seçti imiz ba lang ç veri taban n n yarat lmas n
sa lar. Seçimlerimizi veritaban n yaratmada kullan r.
Unix veya Linux i letim sistemine kurulum yaparken, root olarak bir veya daha fazla script
çal t rmam z istenir. Bu scriptin ad root.sh d r. Bu script ORACLE_HOME konumunda ve
veritaban ndaki bilgileri içeren dosyay update eder veya yarat r. Linux kurulumunda dosya ad
/etc/oratab d r.
Windows i letim sisteminde root.sh yoktur, çünkü ORACLE_HOME ve veritaban bilgileri
registryde tutulur.
Veritaban Yaratmak
DBCA ile bir veritaban yaratt m zda, daha önceden tan mlanm 3 veritaban n veya kendi
tan mlad m z kullanabiliyoruz. Veri ambarlar , genel kullan m, transaction processing için
veritabanlar mevcut. Bu ablonlar i yüküne göre ayarlanm ayarlara sahipler. Show Detail
diyerek her veritaban tipinin konfigürasyonunu görebilirsiniz. Veritaban n z n yapmas n istedi iniz
i e göre ablon seçiniz. E er emin de ilseniz genel amaçl y seçiniz.
Daha karma k ortamlar için Custom Database seçene ini seçmelisiniz. Bu daha uzun bir
sorgulama ile daha uzun süre bir veritaban yarat lmas n sa lar, çünkü veritaban yaratma scripti
çal mal d r.
5
Veritaban Tan mlama
database_name.domain_name formunda bir Global veritaban ismi girmelisiniz ve SID
belirlemelisiniz. SID default olarak veritaban ad olarak gelir ve veritaban n z çal t racak instance
unique olarak belirler. SIDnin veritaban n za ba lanacak olan instance n ad d r ve ba lanaca
veritaban ayn isimde olmak zorunda de ildir. Real Application Clusterlarda pek çok instance ayn
veritaban n açabilmektedir ve her biri için SID farkl d r.
Yönetim Seçenekleri
Her veritaban için web-tabanl yönetim araçlar n ve ayn zamanda tüm Oracle ortam n yönetmeniz
için merkezi yönetme araçlar olan Oracle Enterprise Manager bu sayfadan seçilir.
E er host bilgisayar n za Oracle Management Agent kurulmu sa, Use Grid Control seçene i ile
veritaban n z merkezi olarak yönetebilirsiniz. Bu tip bir yönetimi seçerseniz di er bir menudeki
hangi tip bir yönetim servisi istedi inizi de seçmelisiniz. Aksi taktirde veritaban n z tek ba na
yönetmek için Use Database Control for Database Management seçmelisiniz. Bu seçene i
seçti inizde email ile uyar lmay ve günlük yedekleme yap lmas n sa layabilirsiniz.
6
Initializing Parameters: S k kullan lan parametreler için 4 tab vard r. All Initializing Parameters
diyerek tüm parametreleri görebilirsiniz.
Memory: Kullan c processleri için SGA ve PGA taraf ndan kullan lacak belle i gösterir.
Sizing: Block büyüklü ünü belirleyebilirsiniz, ablon bolk büyüklü ü kullan yorsan z de i mez.
Instancea ba lanabilecek pek çok veritipi için kullan l r. NCHAR, NVARCHAR2 ve NHCLOB
Unicode veri destekler.
Connection Mode: Oracle veri taban , instancea ba lanan kullan c processlerini tutmak için server
processler yarat r. Bir server process
-Dedicated server process: bir server processi sadece bir kullan c ya servis verir.
-Shared server process: bir server processi pek çok kullan c processe servis verir.
Veritaban n z dedicated server process seçmenizi sa lar. Shared server için bir veya daha fazla
parametreyi ayarlamal y z.
Veritaban Depolama
Bu sayfada control files, data files ve online redo loglar için depolama ayarlar n görebiliriz. ablon
kulland n zda veritaban na veri dosyas eklememize gerej yokrur ancak kontrol veya online
redolog file ekleyebiliriz.
Çoklu control file DBCA taraf ndan yap l r(3 tane) sterseniz ekleyebilirsiniz.
Redo loglar group olarak çal r ve çoklanmal d rlar. DBCA online redo log dosyalar otomatik
olarak çoklayamaz.
Veritaban Mimarisi
Oracle veritaban n olu turan dosyalar a a daki gibidir:
-Control Files: Metadata olarak adland r lan veritaban n n kendisiyle ilgili verileri içerir. Bu dosyalar
veritaban için kritiktir. Bu dosyalar olmadan veritaban içindeki verilere eri ecek data file lar
açamazs n z.
-Data Files: Veritaban n n verilerini tutar.
-Online Redo Log Files: Veritaban n n geriyüklemesi için gereklidir. E er veritaban çöker veya
herhangi bir data file kaybedilirse, bu dosyalarla veritaban geriyüklenebilir.
Resmen veritaban n n parças olmasa da veritaban n n düzgün bir ekilde çal mas için önemli olan
dosyalar da vard r:
-Parameter Files: Veritaban ba lat l rken instance n nas l konfigüre edilece ini belirlemede
kullan l r.
-Password File: Kullan c lar n uzaktan veritaban na ba lanmas n ve yönetim görevlerini yapmas n
sa lar.
7
-Archive Log Files: instance taraf ndan üretilmi redolar n tarhini/geçmi in tutar. Bu dosyalar
veritaban geriyükleme için gereklidir; bu dosyalar ve veritaban n n yedeklerini kullanarak kay p bir
data file geri yükleyebilirsiniz.
Control Files
nstance n z ba latt n zda ve veritaban n mount etti inizde control filelar okunur. Control file n
içindeki bilgiler veritaban n olu turan fiziksel dosyalar gösterir.
Veritaban n za yeni dosyalar ekledi inizde, control filelar otomatik olarak güncellenir.
Control filelar n nerde tutuldu u da initialization parametrelerinde tutulur.
Veritaban n n control file kayb yüzünden bozulmas n önlemek için control filer n en az 3 farkl
fiziksel konuma yedeklemelisiniz. Bu farkl dosyalar initialization parametrelerinde belirterek,
Oracle database server n bu çoklu dosyalar kontrol etmesini sa layabilirsiniz.
Veritaban n zdaki control filelar hakk ndaki bilgiye Enterprise Manager n Administration sayfas n n
Storage k sm nda bulabiliriz. Control files genel sayfas veritaban n zdaki control filelar n isimlerini
ve yerlerini gösterir. Advanced sayfas nda control file yaratma ve veritaban tan mlama i leri
yap labilir. Record Section sayfas control dosyas n n içindeki kay tlar gösterir.
Tablespace ve Datafiles
Veritaban tablespace ad verilen mant ksal depolama birimlerine bölünmü tür. Her veritaban
mant ksal oalark bir veya daha fazla tablespace bölünmü tür. Files table spacedeki mant ksal yap y
fiziksel olarak tutmak üzere bir veya daha fazla data files olu turulur.
8
Minimum block büyüklü ü 2kd r.
Farkl block büyüklüklerine sahip tablespaceleriniz olabilir.
9
Oracle Prosesi
Bir uygulama program yada enterprise manager gibi bir Oracle arac çal t rd n zda Oracle
sunucusu uygulaman n istedi i komutlar çal t rmak için bir proses yarat r.
Oracle ayn zamanda birbiriyle ve i letim sistemiyle bellek yap s n , diske veri yazmay ve genel
kontrolleri yapmak üzere ileti im kuran arka plan prosesleri de yarat r.
En çok kullan lan arkaplan processleri:
-System Monitor(SMON): Instance ar zalanmaya ba lad nda geriyüklemeyi yapar.
-Process Monitor(PMON): kullan c prosesi ar zaland nda proses temizli ini yapar.
-Database writer(DBWn): database buffe önbelle indeki de i mi bloklar disk üzerindeki dosyalara
yazar.
-Checkpoint(CKPT): Veritaban n n belirli bir an için tüm ayarlar n ve verilerin saklanmas n sa lar.
-Log writer(LGWR): Redo log kay tlar n diske yazar
-Archiver(ARCn): Redo Log dosyalar doldu unda redo lolar archivelere kopyalar.
Veri Sözlü ü
Veri sözlü ü belirli bir veritaban hakk nda sadece okuma amaçl kullan labilen tablolar n ve view
lar n merkez kümesidir.veri sözlü ünün kapsad bilgiler:
- Veritaban n n fiziksel ve mant ksal yap s
- Veritaban n n geçerli kullan c lar
- Ba l l k k s tlar yla ilgili bilgiler
- ema nesleri taraf ndan ne kadar alan istenilidi i ve ne kadar n n kullan ld .
Veri sözlü ü veritaban yarat l rken yarat l r ve veritaban n yap s nda bir güncelleme old unda
otomatik güncellenir.
Grid Control
Database Kontrol'ün yetene i geni letilebilir ve sisteminizin Oracle Enterprise Manager's Grid
Control kullanan geri kalan k sm ile bütünle tirilebilir.
Grid control Framework mimarisi yüksek seviyede esneklik ve fonksiyonellik sa lar. htiyaç
duydu unuz ortamlar izlemek ve yönetmek için Enterprise Manager' kolayca özelle tirebilirsiniz.
Tipik Enterprise Manager Framework konfigürasyonu a a daki fonksiyonel birimlerinden olu ur:
-Yönetimsel hedefler
-Yönetim hizmetleri
-Web tabanl grid kontrol
-Veritaban kontrol
-Uygulama sunucu kontrol
10
This document was created with Win2PDF available at http://www.daneprairie.com.
The unregistered version of Win2PDF is for evaluation or non-commercial use only.
SQL Nedir?
Structured Query Language(SQL) kullan c lar n ve programlar n veritaban na eri mesini sa layan
statementlar kümesidir. SQL çe itli kategorilere bölünmü tür:
- Data definition language (DDL) / Veri tan mlama statementlar
- Data manipulation language (DML) / Veri i leme statementlar
- Transaction kontrol statementlar
- Oturum kontrol statementlar
- Sistem kontrol statementlar
- Gömülü SQL statementlar
SQL Kullanmak
SQL, komutlar az kelimeyle, olabildi ince basit olmas yla ve komutlar n sayfalar doldurabilecek kadar
karma k olmas yla oldukça zengin bir dildir. SQL komutlar n veritaban na yollayacak de i ik yollar
vard r:
-Oracle SQL Plus veOracle iSQL Plus: Bu araçlarla komut sat r arayüzüyle bait bir eri im sa lan r.
-Oracle Forms: Kullan c lar n veriyi yönetebilecek grafik tabanl ortamlar sa layarak SQLi kullan c lardan
gizler.
- Oracle Reports ve Oracle Discoverer: Bu raporlama araçlar karma k veritaban sorgular n sadece mouse
a dokunarak yapmay sa lar. Oracle Reprts, standart , sabit raporlar için kullan l r. Oracle Discoverersa
verinin yap s n yada ili kilerini bilmeden veriyi getirmeyi sa layan veri madencili i araçlar d r.
- Oracle Enterprise Manager: Veritaban nesnelerini ve yap lar n yönetmeye yarayan grafiksel araçt rç
Enterprise Manager kullanarak yönetici syntax hat rlamaktansa yap lacak i e konsantre olur.
-Third-party tools: SQL pekçok veritaban da t c s taraf ndan kullan lan standart bir dildir. Yüzlerce araç
da SQL kullanarak veritaban n görüntülemeye yarar.
iSQL*Plus Kullanmak
Workspace sayfas nda bir veya daha fazla SQL ve SQL Plus komutu girebilirsiniz. Execute butonuna
t klay nca sayfaya yazd n z tüm komutlar çal r. Sonuçlar alt k s mda görüntülenir. E er birden fazla
komut girecekseniz SQL komutlar noktal virgül veya / ile ayr l r.
History tab nda oturumla ilgili ana komutlar görülür. Bu komutlar yükleyebilir yada silebilirsiniz Default
olarak 10 komut saklan r.
Preferences iSQL*Plus penceresinin fonksiyonlar yla beraber görünümünüde de i tirebildi iniz bir aland r.
Mesela 10 yerine 100 komutun saklanmas n , ç kt lar n nas l olaca n ve i leme seçenekleri de i tirilebilir.
Veriyi Sorgulamak
Temel SELECT komutu 3 k s mdan olu ur:
-SELECT tablo veya tablolardan seçece iniz kolonlar listeler. Zorunludur.
-FROM hangi tablo veya tablolardan veri getirece ini belirtir. Zrounludur.
-WHERE, FROM ile belirtti imiz tablolardan getirilecek veriler üzerindeki k stlar gösterir. Seçimliktir;
e er olmazsa tüm sat rlar getirilir.
SQL case sensitive bir dil de ildir. Örnekte komutlar karma k olarak yaz lm t r.
Veriyi S ralamak
Ç kt y s ralamak için ORDER BY kullan l r. Default s ralama artand r. Veriyi azalan s rada s ralamak için
s ralamak istedi imiz koln ad n n ard ndan DESC kullan l r. Örnek;
ORDER BY lastname DESC
Birden fazla kolon için s ralama yapabilirsiniz. Örne in a a daki s ralamada önce lastname kolonuna göre
azalan sonra department_ d için artan s ralama yap l r.
ORDER BY lastname DESC,department_id
Tablolar Birle timek
Bazen birden fazla tablodan veri getirmek gerekir. Örnekte rapor 2 ayr tablodan verileri gösterir. Raporu
yaratmak için employee ve departments tablolar n ba lamal ve her ikisindeki verilere de ula mal y z.
Veritabn ndaki birden fazla tablodan veri gerekti inde, join durumu kullan l r. Bir tablodaki sat rlar di er
tablodaki sat rlarla ortak de erler kullan larak birle tirilir, bunlar genellikle primary ve foreign key
kolonlar d r.
2 veya daha fazla ili kili tablodan veri almk için birle tirme durumu da WHERE k sm nda yaz l r. Örnekte:
SELECT lastname, department_name
FROM employess, departments
WHERE employees.dept_id= departments.dept_id
Veriyi lemek
Data Manipulantion Language(DML) komutlar veritaban ndaki veriyi de i tirmek için kullan l r:
-INSERT veritaban ndaki tabloya veri sat rlar eklemek için kullan l r.
-UPDATE: Tabloda bulunanbir sat r de i tirmemizi sa lar. De i tirilecek sat r say s WHERE de kontrol
edilir. E er WHERE k sm yoksa tablodaki tüm sat rlar de i tirilir.
-DELETE : Tablodan sat rlar ç kar r. UPDATE komutu gibi silinecek sat r say s WHERE ile kontrol edilir.
Ço u durumda bu komutlar bir uygulaman n içinde bulunurlar. Uygulama DML komutunu olu turur ve veri
üzerindeki de i ikli i yapar.
Not: NULL anahtar kelimesi sutuna bir de er eklemez. Bu bo luk yada O de ildir, de eri yoktur.
SYSDATE ise DATE kolonuna o anki tarih ve zaman ekler.
Transactionlara Bak
Çal abilir bir SQL statement çal maya ba lad nda transaction ba lar. Oracle transaction için bir undo
segmenti de atar, undo tablespacedeki kay tlar mevcut transaction son commit durumuna döndürmek için
rollback komutunda kullan l rlar. Transactionn a a daki durumlar olu tu unda biter
-SAVEPOINT kullan lmam kullan c commit veya rollbackleri
- Kullan c CREATE, DROP,RENAME veya GRANT gibi bir DDL komutu çal t r r. E er mevcut
transaction bir DML komutu içeriyorsa ORACLE önce ilk transaction commit eder sonra DDL komutunu
içeren yeni bir transaction ba lat r.
-Kullan c Oracledan koptuysa, mevcut transaction commit edilir.
-Kullan c processi anormal biçimde biterse, mevcut transaction rollback edilir.
Bir Tarnsaction bitti inde bir sonraki SQL komutu di er transaction ba lat r.
Not: Kullan c n n ba l oldu u ayn veritaban na eri en SELECT sorgular kümesi
Transaction Control Statement
3 tane transaction control statement vard r COMMIT, ROLLBACK,SAVEPOINT
- Bir transaction commit etmek transaction içindeki SQL komutlar yla yap lm de i iklikleri kal c hale
getirmektir.
- Rollback, commit edilmemi bir transaction n yapt de i iklikleri geri almakt r. Oracle eski de erli
tutmak için undo tablespaceleri veya rollback segmentleri kullan r. Redo log de i iklilerin kay tlar n içerir.
- SAVEPOINTler uzun transactionlar daha küçük k smlara böler. Bir savepoint kurdu umuzda, bu noktaya
rollback ile dönü yapabilirsiniz. Her savepointin bir ad olmal , böylece rollback yaparken belirledi imiz
savepointe dönebiliriz.
Veriyi Kilitlemek
Oracle, transactionlar aras ndaki veri tutarl l n ve bütünlü ünü kilit mekanizmas kullanarak sa lar. Bu
mekanizma birden fazla kullan c n n ayn veriyi ayn anda güncellememesini sa lar.
Oracle 10g kullan c lar n gereksiz yere ba ka kullan c lar n verisini blaklamad ndan emin olmak için fine
grained kilti mekanizmas kullan r. Veri okuyan bir kullan c g ncellem yapan bir kullan c taraf ndan
bloklanmaml d r. Güncelleme yapan bir kullan c ayn veri sat r n güncellemeye çal an bir kullan c yla
kar la mad sürece di er kullan c lar bloklamamal d r.
Di er Statement Kategorileri
Session control statementlar Oturum kontrol statementlar kullan c oturumunun özelliklerini dinamik
olarak yönetir. Bu komutlar mevcut transaction üstü kapal bir biçimde commit etmezler. PL/SQL oturum
kontrol statementlar n desteklemez.
Oturum kontrol Statementlar :
-ALTER session
-SET Role
-System Control Statement Tek bir sistem kontrol statement mevcuttur.
ALTER SYSTEM Bu statement oracle instance n n özelliklerini dinamik olarak yönetir. Bu komut, mevcut
transaction n üstü kapal biçimde commit etmez ve PL/SQL de yoktur.
Embedded SQL statements: DDL, DML ve transaction control statementlar n bir prosedürel dil program na
yerle tirilir.????
PL/SQL Nedir?
PL/SQL blok yap l bir dildir. PL/SQL program n olu turan temel birimleri (prosedürler,fonksiyonlar ve
bloklar) pekçok içiçe geçmi altbloklardan olu an mant ksal bloklard r. Yani bir problemi yada altproblemi
çözmek için bir mant ksal blok yarat l r. PL/SQL, SQL dilini yap sal programlama teknikleri eklemi tir.
Bir PL/SQL blo u 3 k s mdan olu ur:
-DECLARE Bu k s m sabitleri ve de i kenleri tan mlayabilece iniz seçimlik bir k s md r. Daha sonra
bunlar SQL içinde ve prosedürel statementlarda kullanabilirsiniz. Sabitleri veya de i kenleri di er
statementlar n içinde kullanmadan önce tan mlamal s n z.
-BEGIN Kod blo unun ba lang c d r. Bu kod hem SQL hemde PL/SQL komutlar ndan olu ur. Zorunludur.
-EXCEPTION Bu k s m iste e ba l d r. Yerel istisnalar burada tan mlan r.
-END blo u bitirir. Zorunludur.
Örnek PL/SQL Blo u
DECLARE
qty_on_hand NUMBER(5);
BEGIN
SELECT quantity INTO qty_on_hand FROM
inventory
WHERE product = 'TENNIS RACKET'
FOR UPDATE OF quantity;
IF qty_on_hand > 0 THEN -- check quantity
UPDATE inventory SET quantity = quantity - 1
WHERE product = 'TENNIS RACKET';
INSERT INTO purchase_record
VALUES ('Tennis racket purchased', SYSDATE);
ELSE
INSERT INTO purchase_record
VALUES ('Out of tennis rackets', SYSDATE);
END IF;
COMMIT;
END;
Üstte görülen blok bir say tutacak bir yerel de i ken tan m yla ba lar. Kod blo uda BEGIN komutuyla
ba lamaktad r. lk komut tenis raketi malzemesinini miktar n n yerel de i kene al nmas d r. Bunu IF THEN
ELSE komutlar izler.
E er 0dan fazla tenis raketi varsa miktar 1 azalt rl r ve purchase records tablosuna mesaj yazd r l r. E er hiç
tenis raketi yoksa sadece purchase records tablosuna mesaj yazd r l r. COMMIT ile yap lan de i iklikler
aktif hale gelir. End ile blok bitirilir.
PL/SQL Kullanmak
PL/SQL u yap larda kullan l r:
-Anonim bloklarda: Bunlar isimlendirilmemi PL/SQL bloklar d r. Bu isimlendirilmemi blok genellikle
isimlendirilmi (fonksiyon yada prosedür) blo un içinde bulunur. Bu bloklar n içiçe olmas kodun
çal mas n n kontrolünü kolayla t r r.
- Functions/Fonksiyonlar: Fomksiyon tek bir de er döndüren(RETURN komutu kullan r) PL/SQL blo udur.
-Procedures/Prosedürler: Prosedür belirli bir i i yapan PL/SQL blo udur.
-Packages: Prosedürleri, fonksiyonlar ve anonim bloklar içeren(bunlar n mant ksal olarak ili kili olmas
gerekli) yap d r.
-Triggers: Veritaban nda belirli bir durum olu tu unda çal an PL/SQL blo udur. Bu durum tabloya ba l
olabilir; tabloya bir sat r eklemek gibi. Yada veritaban nda gerçekle ecek bir durum olabilir; bir kullan c n n
veri taban na login olmas gibi.
-Object Types: Nesne tipi bir çe it veri tipidir.
Java Nedir?
Java, Sun Microsystems taraf ndan 1995 sunulan nesne tabanl programlama dilidir. Java programlar Java
yorumlay c s (Java Virtual Machine) bulunan herhangi bir makinede çal t r labilir. Programc lar n grafik,
hareket ve ses gibi dinamik uygulamalar yapmak için Javadan faydalanabilirler. Java veritaban nda
bytekodlar eklinde derlenir ve saklan r. Bu kod makine koduyla kayna kodu aras nda. Javabyte kod
platform ba ms zd r. Böylece i letim sistemleri aras nda ta nmas n kolayla t r r. JVM bytekodlar
makinenin okuyabilece i komutlara dönü türür.
Oracle ve Java
Java stored prosedürlerini herhangi bir PL/SQL blo undan, altprogramdan veta paketten ça rabilirsiniz.
Ayn ekilde JDBC , PL/SQL stored prosedürlerini ve fonksiyonlar ça rman z sa lar.
OCI Nedir?
Oracle Call Interface, C ile yaz lm uygulamamlar n bir veya daha fazla Oracle veritaban sunucusuyla
ileti im kurmas n sa layan application programming interface(API)dir. OCI karma k ve güçlü dü ük
seviyeli bir APIdir. Sistem belle inin ve a ba lant lar n n verimli kullan lmas sa layarak performans ve
ölçeklenebilirli i artt r r. OCI, 2katmanl istemci sunucu veya daha çok katmanl ortamlarda dinamik
oturumlar ve transactionlar yönetmeyi sa lar ve N-tier yetkilendirmeye izin verir. Veritaban n n yeni
özellikleri ve yetenekleri uygulama geli tiricilerine OCI taraf ndan ula t r l r. Di er APIler OCI nin alt nda
yeral rlar.
Di er APIler
Java Database Connectivity(JDBC): Javada yaz lm programlardan ili kisel veritabanlar na ula mak için
kullan lan standart bir APIdir. Tek ba na Java uygulamalar , browserda çal an appletler, Java 2 platformu
Enterprise Edition middle tier bile enler, servletler ve Java Beanler JDBCyi kullan rlar. Java s n flar ,
Oracle veritaban n yükleyebilir ve stored prosedürler olarak kullanabilirler. Java programlar JDBCyi ve
PL/SQL stored prosedürlerini ça rmakta kullan labilirler.
Pro*C/C++ ve Pro*COBOL: Oracle veritaban n n ilk versiyonlar ndan bu yana programc lar gömülü SQL
statementlar n programlar n içine C ve COBOL gibi 3. jenerasyon programlama dilleri ile yazarlar.
Pro*C/C++ ve Pro*COBOL veritaban n n eri mesi için gömülü SQLleri çevirirler.
Oracle C++ Interface(OCCI) OCCI, OCI den daha basit ve Pro*C/C++ dan daha do ald r ve C
programc lar için bir arayüz sayesinde veritaban na nesne tabanl eri im sa lar. Ayn zamanda sü ük
seviyeli OCI ye göre daha fazla geli mi özelli e sahiptir.
Open Database Connectivity: ODBC bir uygulaman n birden fazla veri kayna na ba lanabilmesini
sa layan standart bir arayüzdür. Veritaban sürücüsü uygulamay belirli bir veri kayna na ba lar.
This document was created with Win2PDF available at http://www.daneprairie.com.
The unregistered version of Win2PDF is for evaluation or non-commercial use only.
iSQL*Plus durdurup ba latma
iSQL*Plus oturumunu açmadan önce iSQL*Plus uygulama sunucusu çal yor olmal d r.
Windowsta veya linuxtaki konsole hizmeti yard m yla bu servis ba lat l p durdurulabilir.
iSQL*Plus uygulama sunucusu Oracle veritaban kurulumunda varsay lan olarak ba lat l r.
iSQL*Plus uygulama sunucusunu ba latmak ve durdurmak için (Linux).
Ba latma komutu: isqlplusctl start
Durdurma komutu: isqlplusctl stop
iSQL*Plus uygulama sunucusunu ba latmak ve durdurmak için (Windows)
Ba lat > Programlar > Denetim Masas >Yönetimsel Araçlar>Servisler
iSQL*Plus Windows Service OracleOracleHomeNameiSQL*Plus servisini
ba latabilir veya durdurabilirsiniz.
Alternatif olarak iSQL*Plus Linuxtaki gibi konsole dan da ba latabilir veya
durdurabilirsiniz.
Management Framework
Oracle Veritaban 10g yönetim çat s n n 3 ana bile eni vard r:
Veritaban ve Instance
Veritaban na ba lant ya izin veren L STENER
Oracle Enterprise Manager Database Control.
Herbir bile enin servisleri kullanmaya ba lamadan önce sa l kl bir ekilde ba lat lm ve
veritaban sunucusunun durdurulmas ndan önce temiz bir ekilde durmu olmas
gerekmektedir.
Listenerin ismi olan Listener_name listener.ora dosyas nda tan mlanm t r. Varsay lan
olarak LISTENER olarak gelir. STATUS komutu listener hakk nda özet ve genel bilgiler
verir. (Konfigürasyonu, protokolleri, portlar hakk nda)
Ba latma ve Durdurma
Ba latma veya durdurma dü melerine t klad n zda sizden hem veritaban yöneticisi, hemde
i letim sistemi yöneticisi oturum bilgileri istenecektir.
Advanced Options dan ba latma veya durdurma modlar n gerekti i gibi de i tirebilirsiniz.
Show SQL k sm nda ise ba latma ve durdurma için gereken SQL ifadesini görebilirsiniz.
Veritaban n Ba latma
Veritaban n ba latt n zda, u ad mlardan geçer:
Instance Ba latma (NOMOUNT)
Bir Instance sadece veritaban olu turma sürecince veya control files lar n tekrar
olu turulmas nda NOMOUNT ad m nda ba lat l r.
Instance ba latma a a daki görevler ard kl ndan olu ur:
$ORACLE_HOME/dbs dan ba lang ç dosyalar u s rayla okunur:
- lk olarak spfileSID.ora
- E er bulunamaz ise spfile.ora
- E er o da bulunamaz ise initSID.ora
PFILE parametresi de i tirilirse varsay lan STARTUP davran da
de i tirilmi olur.
SGA bellek alan ayr l r.
Arka plan i lemleri ba lat l r.
alertSID.log file ve trace files lar aç l r.
Veritaban n durdurma
I letim sisteminin bütün fiziksel yap lar n n offline yedeklerini almak için ve de i tirilmi
ba lang ç parametrelerinin yeniden ba lad nda aktif olmas için veritaban durdurulur.
Bir Instance durdurmak için SYSOPER veya SYSDBA olarak ba lanmal ve u komutlar
kullanmal s n z:
SHUTDOWN [NORMAL | TRANSACTIONAL | IMMEDIATE | ABORT]
Bu komut zaten Shutdown butonuna bast n zda üretilecektir.
Durdurma seçenekleri
SHUTDOWN NORMAL
Normal varsay lan durdurma yöntemidir. Normal veritaban durdurma i lemleri a a daki
durumlar sa lar:
Yeni ba lant yap lamaz.
Oracle sunucu durmadan sistemde ba l olan bütün kullan c lar n oturum
kapatmalar n bekler.
Veritaban ve redo buffer lar diske yaz l r.
Arka plan i lemleri sonland r l r ve SGA bellekten silinir.
Oracle Instance durdurmadan önce veritaban n kapat r ve ba lant s n kopar r.
Bir sonraki yeniden ba lang ç herhangi bir Instance kurtarma gerektirmez.
SHUTDOWN TRANSACTIONAL
Transactional durdurma istemcilerin çal malar n kaybetmelerini önler. Bir transactional
durdurma i lemi a a daki durumlar sa lar:
Bu Instance üzerinde hiç bir istemci yeni bir transaction olu turamaz.
stemcinin çal maka olan transaction u bitti inde oturumu kapat l r.
Bütün transaction lar bitti inde, derhal durdurulur.
Bir sonraki yeniden ba lang ç herhangi bir Instance kurtarma gerektirmez
SHUTDOWN IMMEDIATE
Immediate veritaban durdurma i lemi a a daki durumlar sa lar:
O andaki SQL ifadelerinin Oracle taraf ndan çal t r lmas n n tamamlanmas
beklenmez.
Oracle sunucusu o anda veritaban na ba l olan kullan c lar n ba lant lar n
kesmelerini beklemez.
Oracle aktif transaction lar geri al r ve bütün ba l kullan c lar n ba lant lar n keser.
Oracle Instance durdurmadan veritaban n kapat r ve ba lant s n kopar r.
Bir sonraki yeniden ba lang ç herhangi bir Instance kurtarma gerektirmez.
SHUTDOWN ABORT
E er NORMAL ve IMMEDIATE durdurma i lemleri çal maz ise, o anki veritaban
Instance n ABORT edebilirsiniz. ABORT durdurma a a daki durumlar sa lar:
O anda Oracle taraf ndan çal t r lan SQL ifadeleri derhal sonland r l r.
Oracle veritaban na ba l mevcut kullan c lar n n ba lant lar n kesmelerini beklemez.
Veritaban ve redo buffer lar diske yaz lmaz.
Tamamlanmam (uncommited) transactionlar geri al nmaz.
Instance, data file lar kapat lmaks z n sonland r l r.
Veritaban kapat lmaz veya unmount edilmez.
Bir sonraki yeniden ba latma Instance kurtarmas gerektirir, ve bu otomatik yap l r.
Not: Veritaban tutars z bir durumda iken yedek al nmas tavsiye edilmez.
Ba lang ç Parametre file lar (Initialization Parameter Files)
Oracle bir instance ba latmak için ya ba lang ç parametre file(initialization parameter
file) lar n yada sunucu parametre file(server parameter file) lar n okumal d r. Bu dosyalar
veritaban ve instance için yap land rma parametrelerinin listesini içerir. Oracle genelde
ba lang ç parametrelerini metin olarak initialization parameter file da tutar. Ayn zamanda
bu metin dosyas n n binary halide SPFILE tutulmaktad r.
1
-Otomatik: Autoallocate olarak da adland r l r. Tablespace içindeki extenlerin büyüklükleri sistem taraf ndan
belirlenir. Extent büyüklü ünü siz belirleyemezsiniz. Temporary tablespaceler için otomatik seçene ini
kullanmamal s n z.
-Uniform: Autoallocate Extend büyüklükleri sizin belirledi iniz belirli bir büyüklükte olurlar. Default büyüklük
1mbdir. Temporary tablespacedeki tüm extentler uniform büyüklüktedir. Undo tablespaceler için uniform
uygulanmaz.
Locally managed tablespaceler için segment alan yönetimi
-Otomatik: Oracle segmentlerin bo alanlar n yönetmek için bitmap kullan l r. Bir bitmap sat r eklemek için uygun
olan bo alan miktar na ba l olarak her data blo un ve segmentin durumunu gösterir. Data blokta olu an daha az
veya daha çok alan yani yeni bir durum bitmapde gösterilir. Bitmap bo alanlar n otomatik olarak Oracle taraf ndan
yönetilmesini sa lar. Bu tip bo alan yönetimi otomatik segment yönetimi olarak adland rl r.
-Manual: Segmentler dahilinde bo alanlar yönetmek için bo listelerin kullan lmas d r. Bo listeler sat r eklemek için
uygun bo alana sahip data bloklar n n listesidir. Bu tip bo luk yönetimi manuel segment space management olarak
adland r l r. Tablespacede bulunan ema nesnelerinin PCTUSED, FREELIST ve FREELIST GROUPS depolama
parametrelerini belirmek ve ayarlamak gerekmektedir.
Locally managed tablespacelerin avantajlar :
Locally managed tablespaceler dictionary managed tablespacelere göre avantajlar vard r:
Yerel yönetim tekrarl alan yönetim operasyonlar n önler.
Yerel yönetilen tablespaceler data dictionary tablolar nda bo alanlar tutmazlar, bu tablolardaki çeki meyi
azalt r.
Extendler yerel yönetildi inde kom u bo alanlar otomatik olarak izlenir. Bo alanlar n birle tirilmesi
gereksinimini gözard eder.
Yerel yönetilen extentlerin büyüklükleri sistem taraf ndan otomatik olarak alg lan r.
Bitmaplar büyütmek için yap lan de i iklikler undo bilgisi yaratmaz, çünkü data dictioaray içindeki bilgiler
güncellenmez. (tabelspace kota bilgileri hariç)
Not: E er data dictionary managed tablespaceleriniz varsa ve locally managede döndürmek istiyorsan z.
DBMS_SPACE_ADMIN. TABLESPACE_MIGRATE_TO_LOCAL
Logging
Tablespacedeki nesnelere de i iklikler yapt n zda de i iklikler redo streame kaydedilirç bu redo stream bellekte
ba lar. Online redo log dosyalar na yaz l r.(baz durumlarda archive log dosyalar na da yaz l r) Bu prosessi
kapatabilirsiniz. Eger loggingi kapatt ysan z, tablespacedeki nesneler herhangi bir hata durumunda kurtar lamazlar.
Thresholds
Threshold tab nda mevcut ver.taban için kullan lan threshold miktar ayarlan r. Veritaban tablespaceleri için default
thresholdu seçebilirsiniz veya mevcut tablespacein Warning ve Critical sahalar n belirleyebiliriz.
2
EXAMPLE: Bu tablespace veritaban yarat l rken yüklenen örnek emalar içerir. Örnek emalar örneklerimiz için
ortak bir platform sa lar.
Tablespacei De i tirmek
Tablespacei yaratt ktan sonra, sistem de i ikliklere göre tablespaceinizi de i tirebilirsiniz.
Yeniden isimlendirmek için yeni bir isim vererek onaylar z.
Durumunu de i tirmek için : Bir tablespace 3 de i ik durumdan biri olabilir. Tablespacein tipine göre
-Read/Write: Tablespace e yaz labilir ve okunabilir.
-Read Only: Tablespace ba lant da read-only moddo olmas için read only belirtilir. Bu durumda mevcut
transactionlar bitirilir, ancak daha fazla DMl komutuna (tablespacedeki de i mi bloklar olu turan tarnsaction n
rollback hariç) izin verilmez. Tablespace read-only modda online olabilir. SYSTEM ve SYSAUX tablespaceini read-
only yapamazs n z.
-Offline: Online bir tablespacei offline yapabilirsiniz. Böylece veritaban n n bu k sm geçici olarak kullan ma kapan r.
Veritaban n n kalan aç kt r ve kullan c lar verilere eri ebilir. Offline yaparken seçenekleriniz vard r.
Normal: Tablespace e er tablespacein hiçbir datafile nda hata durumu yoksa normal biçimde offline yap l r.
Oracle tüm datafilelar için bir checkpoint al r ve offline yapar.
Temporary: :Tablespacein bir veya daha fazla dosyas nda hata durumu varsa tablespace geçici oalrak offline
yap l r. Oracle daha önceden offline olmam data filelar al r ve checkpointle i aretler. E er dosyalar offline de ilse
fakat temporary kelimesini kullan yorsan z, geri yükleme s ras nda tablespacei online yapmam za gerek yoktur.
Immediate: Table space offline durumuna hemen al nabilir ancak Oracle datafilelara checkpoint koymaz.
Immediate derseniz, geri yükleme tablespacein önce online duruma getirilmesini ister. E er veritaban n z
NOARCHIEVELOG modda çal yorsa tablespacei immediate offline yapamazs n z.
ForRecover: Bu ayar uygun görülmemektedir. Bu syntax geriye uyumluluk için bulunmaktad r.
-Change Size: Mevcut tablespacein büyüklü ünü datafile ekleyerek yada mevcut datafile n büyüklü ünü de i tirerek
de i tirebilirsiniz.
Tablespace e yeni bir datafile eklemek için Add butonuna bas n Add Datafile sayfas ndaki bilgiler doldurulur.
Mevcut datafile n büyüklü ü de i tirmek için Datafiles k sm ndaki datafile seçilir, edit denir. Edit datafile
sayfas nda datafile n büyüklü ünü de i tirebilirsiniz. Tablespacei daha büyük veya daha küçük yapabilirsiniz. E er
datafile dosyada kullan lan alandan daha küçük yaparsan z
ORA 03297 hatas n al rs n z
Storage Options: Tablespacein hatalar saklama davran n de i tirmek için Storage a t klay n
Thresholds: Tablespace için uyar ve kritik kullan lan alan miktar n de i tirebilirsiniz.
Use default Thresholds: Mevcut ayarlar kullan r.
Specify Thresholds: Belirli bir tablespace için thresholdlar ayarlayabilmemizi sa lar.
Disable Thresholds: Tablespace için alan kullan m uyar lar n kapat r.
3
-Run Segment Advisor: Segment Advisor, nesnenin alan bölümlemeye ba l olarak geri alma için uygun alanlara
sahip olup olmad n anlamada yard mc olur. Tablespace seviyesinde bu öneri tablespacedeki her segment için
üretilir.
-Take offline: E er tablespace onlinesa bu tablespacei offline yapar. Tablespace silinmez sadece eri ilmez.
Not: tüm bu i lemler tüm tablesoaceler için uygun de ildir. Seçilen tablespacein tipine göre baz i lemler yap lamaz.
Mesela SYSTEM tablespaceini offline yapamazsan z yada undo tablespacei readonly yap lamaz.
Dropping Tablespace
Tablespace ve içindekileri(segmentleri) e er tablespace ve içindekilere daha fazla gereksinim duymuyorsak yok
edebiliriz. Bir tablespacei yok edebilmek için DROP TABLESPACE sistem yetkisine sahip olmal s n z.
Bir tablespacei yok etti inizde veritaban yla ili kili control filelara olan pointerlar kald r r. sterseniz Oracle n i letim
sistemi dosyalar n (datafiles) silebilmesi için ayarlar yapabilirsiniz. E er Oracle data filelar tablespacei silerken
silmesi için ayarlamazsan z, daha sonra i letim sisteminize bu dosyalar silmesini söylemelisiniz.
çindeki aktif olan tablespacei yok edemezsiniz. Örne in eger bir tablespacede ki bir tablo bir kullan c taraf ndan
kullan l yorsa veya commit edilmemi transaction için rollback durumundaki undo verileri tablespacedeyse
tablespacei yok edemezsiniz.
4
This document was created with Win2PDF available at http://www.daneprairie.com.
The unregistered version of Win2PDF is for evaluation or non-commercial use only.
Veritaban Kullan c Hesaplar
Bir kullan c n n veritaban na eri ebilmesi için kullan c n n geçerli bir kullan c hesab n n
olmas ve ba ar l bir ekilde do rulanmas gerekmektedir.
Ço u sistemlerde, her bir veritaban kullan c s n n kendi kullan c hesab vard r. Baz lar nda
ise birçok kullan c genel bir kullan c hesab n payla maktad r.
Harici: letim sistemi taraf ndan yetkilendirmedir. Kullan c ya i letim sistemi harici
kullan c ad ve parolas belirtilmeden sistemde oturum açabilmeyi sa lar. Bu tip
yetkilendirmede oturum açmak için veritaban parolas kullan lmaz. Bu yöntemi kullan rsan z
OS_AUTHENT_PREFIX ba lang ç parametresini ayarlaman z gerekmektedir. Oracle
OS_AUTHENT_PREFIX ba lang ç parametresinin tan mlad ön eki kullan c lar n i letim
sistemi kullan c s n n hesap isminin ba na ekler. Bu parametrenin varsay lan de eri OPS$
d r.
Bir kullan c Oracle a ba lanmaya çal t nda Oracle ön ekli kullan c ad ile veritaban nda ki
kullan c ad n kar la t r r. Mesela, OS_AUTHENT_PREFIX öyle oldu unu varsayal m:
OS_AUTHENT_PREFIX=OPS$
E er tsmith ad nda ki kullan c Oracle veritaban na i letim sistemi hesab yla ba lan r ve
i letim sistemi taraf ndan yetkilendirilir ise Oracle OPS$tsmith veritaban kullan c s na
kar l k gelen kay t var m yok mu diye kontrol eder.
Yetkiler
Yetki, belirli tipteki SQL ifadelerini çal t rabilmek veya ba ka kullan c lar n nesnelerine
ula abilmektir. Yetkiler iki kategoriye ayr lmaktad r:
Sistem Yetkisi: Her bir sistem yetkisi kullan c ya veritaban üzerinde belirli i lemleri
yerine getirebilme olana verir. Mesela tablespace olu turabilme bir sistem yetkisidir.
Sistem yetkisi yönetici taraf ndan verilebilir. 100 farkl sistem yetkisi bulunmaktad r.
Nesne Yetkisi: Nesne yetkisi kullan c ya, tablo, görünüm, seri, yordam, fonksiyon
veya paket gibi belirli nesne üzerinde özel i lemler yapma izni verir. Özel bir izin
olmadan kullan c sadece kendi nesnelerine eri ebilir. Nesne yetkisi nesnenin sahibi
taraf ndan ve yönetici taraf ndan verilebilir.
Sistem Yetkileri
Sistem yetkisi vermek için, System Privileges ba lant s na t klay n, uygun yetkileri seçin ve
onaylay n. ANY ifadesi ile yetki vermek, emalar üzerinde çapraz yetki demektir. Mesela
CREATE TABLE yetkisi kullan c ya verildi inde, kullan c sadece kendi emas içinde
olu turabilir. SELECT ANY TABLE yetkisi kullan c ya di erlerinin tablolar n da
sorgulayabilme yetkisi verir.
Admin Option dü mesini seçmek bu kullan c n n bu yetkiyi yönetebilmesine ve di er
kullan c lara sistem yetkisi olarak verebilmesini sa lar.
Sistem yetkilerini vermeden önce güvenlik gereksinimlerini dü ünmek gereklidir. Baz sistem
yetkileri genelde sadece yöneticilere verilir:
KISITLI OTURUM: Bu yetki kullan c ya veritaban k s tl modda aç k olsa bile
oturum açabilme imkan verir.
SYSDBA ve SYSOPER: Bu yetkiler kullan c ya veritaban n durdurma, ba latma,
kurtarma ve di er yönetimsel görevleri yapabilme yetkisi verir.
DROP ANY object: Bu yetki kullan c n n sahibi olmad nesneleri silebilme yetkisi
verir.
CREATE, MANAGE, DROP, ALTER TABLESPACE: Yönetici olmayan kullan c lar
genellikle tablespaceleri kontrol edememelidir.
CREATE ANY DIRECTORY: Oracle geli tiricilere PL/SQL içinden harici kod (C
kütüphanesi) ça rabilmelerine izin verir. Güvenlik önlemi; kodun bulundu u i letim
sistemi dizini sanal Oracle dizinine ba lanm olmal d r. CREATE ANY
DIRECTORY yetkisi ile kullan c güvensiz kodlar ça rabilmektedir.
EXEMPT ACCESS POLICY: Bu yetki kullan c ya tabloda veya görünümlerdeki
güvenlik fonksiyonlar atlamas n sa lar.
GRANT ANY OBJECT PRIVILEGE: Bu yetki kullan c n n sahibi olmad nesne
üzerine di er kullan c lara yetki verebilmesine izin verir.
ALTER DATABASE ve ALTER SYSTEM: Yönetici olmayanlar n veritaban veya
Instance de i tirmesine izin verilmemelidir.
Nesne Yetkileri
Nesne yetkisi vermek Object Privileges ba lant s ndan yap labilir. Vermek istedi iniz
nesne yetki tipini seçiniz. Add Buton ile yetkiyi ekleyiniz. Ya da bu i i username.object ile
de verilebilir. Sonra uygun yetkiyi listeden seçiniz ve ekleyiniz
Roller
Ço u sistemde her kullan c ya gerekli yetkileri vermek çok zaman almaktad r. Ve burada hata
yapma olas l çok yüksektir. Orace roller ile yetkileri kolayca kontrol ve yönetim imkan
sunuyor. Rol birbiriyle ili kili yetkiler toplulu una verilen isimdir. Veritaban içinde
yetkilerin daha kolay yönetimi için tasarlanm t r. Dolay s yla güvenli i geli tirir.
Rol Özellikleri
Yetkiler rollere verilebilir ve rolden geri al nabilir.
Roller e er sistem yetkileri ise kullan c lara verilebilen ve onlardan geri al nabilir.
Roller hem sistem hem de nesne yetkileri içerebilir.
Bir rol kendisine verilen kullan c için aktif veya de-aktif edilebilir.
Rolün aktif edilmesi için parola gerekmektedir.
Rollerin sahibi yoktur, herhangi bir ema ya ait de ildir.
Yukar da ki örne e göre, HR_CLERK rolünün employees tablosunda SELECT ve UPDATE
yetkisi vard r. HR_MGR rolünün ise employees tablosu üzerinde ve HR_CLERK rolü
üzerinde DELETE ve INSERT yetkileri vard r. Yöneticiye HR_MGR rolü verilmi tir. Ve
art k employees tablosunda select, delete, insert ve update i lemlerini yerine getirebilir.
Rollerin Faydalar
Daha kolay yetki yönetimi
Yetkilerin yönetimini kolayla t rmak için rol kullan l r. Bir sürü yetkiyi kullan c ya
vermektense yetkileri rollere verip, daha sonra rolleri kullan c lara vermek daha iyi.
Dinamik yetki yönetimi
Bir rol ile ili kilendirilen bir yetki güncellendi inde kendisine verilen bütün kullan c lar için
derhal de i tirilmeli güncellenmelidir ve bu otomatik yap l r.
Yetki eri ilebilirli ini seçme
Roller yetkileri geçici olarak kapat p açmak için aktif veya de-aktif edilebilir. Bir rolü aktif
etme kullan c ya o rolün verilip verilmedi ini do rulamak içinde kullan labilir.
letim sistemi yoluyla yetkilendirme
Veritaban nda rollerin kullan c lara atanmas için i letim sistemi komutlar veya hizmetleri
kullan labilir.
Güvenlik rolleri
Roller varsay lan olarak genelde aktif olurlar. E er bir rol kullan c ya verilmi se kullan c bu
roldeki yetkileri kullanabilir.
Rolü non-default yapma. Rol bir kullan c ya verilmi se, DEFAULT check box
kald r l r. Art k kullan c bu yetkileri kullanmadan rolü aktif etmelidir.
Rol için ilave yetkilendirme NONE gelir. Ama istenirse ilave yetkilendirme
ayarlanabilir.
Sadece PL/SQL yordamlar do ru bir ekilde çal t r ld nda güvenli uygulama rolleri
olu turma aktif edilir. PL/SQL yordam kullan c n n network adresi, program hangi
kullan c n n çal t rd , zaman, gibi do rulu u kontrol edilmesi gereken ihtiyaçlar
kontrol eder.
This document was created with Win2PDF available at http://www.daneprairie.com.
The unregistered version of Win2PDF is for evaluation or non-commercial use only.
ema Nedir?
ema belirli bir veritaban kullan c s n n sahip oldu u veritaban nesneleridir. ema, emaya
sahip olan kullan c yla ayn ada sahiptir. ema nesneleri direct olarak veritaban verilerini
gösteren mant ksal yap lard r. ema nesneleri tablolar, viewlar, indeksler gibi yap lar
bulundururlar.
Not: tablespace ve emalar aras nda bir ili ki yoktur. Ayn emalar içindeki nesneler farkl
tablespacelerde bulunabilirler ve bir tablespace de i ik emalardan nesneleri tutabilir.
emalar
Bir veritaban yarattt n zda belirli emalar veritaban yla beraber yarat l r. Bunlardan 2 tanesi
önemlidir:
SYS emas : Veritaban n n veri sözlü ünü olu turan tüm temel tablolar ve viewlar
SYS emas n n içinde yarat l r. Veri sözlü ü Oracle veritaban n tan mlayan tablolar
toplulu udur. Veri sözlü ü veritaban yarat ld zaman SYSTEM tablespaceinde yarat l r ve
DDL komutu çal t r ld nda Oracle veritaban sunucusu taraf ndan güncellenir. Veri sözlü ü
kullan c lar ema nesneleri ve depolama yap lar hakk nda bilgileri içerir.
Veri sözlü ünü read-only kullanabilirsiniz. Enterprise Manager kulland n zda veri
sözlü üne viewlar üzerinden ula rs n z.SYS emas ndaki nesneler herhangi bir kullan c veya
veritaban taraf ndan de i tirilmemelidir ve SYS kullan c s n n emas nda hiç kimse bir tablo
yaratmamal d r.
SYSTEM emas : Yönetimsel bilgileri içeren tablolar ve viewlar ve de i ik Oracle
araçlar nca kullan lan içsel tablolar ve viewlar içerir. SYSTEM emas nda herhangi bir ek
nesne yaratmamal s n z.
Oracle veritaban n n tam bir kurulumu s ras nda, çekirdek veritaban yla beraber örnek emalar
otomatik olarak yüklenir. Örnek emalar Oracle örnekleri için ortak bir platform sa lar.
Karma kl klar na ba l olarak farkl emalar bulunur.
HR: Human Resources ana ba l klar içeren basit bir emad r.
OE: Order Entry emas orta seviyede karma kl a sahiptir. OE emas nda çok say da
veri tipi mevcuttur. OC(Online Catalog) alt emas nda OE emas nda bulunan nesne ili kisel
veritaban nesnelerinin toplulu udur.
PM: Product media emas multimedia veri tiplerine ayr lm t r.
QS: Queued Shipping emas Oracle Advanced Ouerying özelliklerini göstermek için
kullan lan emalar kümesidir.
SH: Sales History emas büyük miktarlarda veri gerektiren örnekler için kullan l r.
Tablolarla Yapabileceklerimiz
Bir tablo seçip a a daki i lmeleri yapabilirsiniz.
Create Like: Bu seçenek ile eçti iniz tablo özelliklerine sahip bir tablo yaratabilirsiniz. Tablo
ad n ve k s t isimlerini de i tirebilirsiniz. Sütun silip ekleyebilir, ba ak de i ikliklerde
yapabilirsiniz. Yarat ld nda tablo bo olacakt r.
Create Index: Tablo üzerinde indeks yaratabi lirsiniz. Indeksler sadece sütunlar üzerinde
yarat l r.
Create Synonym: Synonym tam bir tablo üzerinde bir isimdir. Synonym private veya public
olabilir.
Create Trigger : Tablo seviyesindeki trigger tablo üzerinde bir olay oldu unda çal an
PL/SQL blo udur. E er employees tablosundan silinen her veriyi ba ka bir tabloda tutmak
istenirse kullanabilir. Before delete gibi bir trigger ile bu sa lanmal d r.
Gather Statistics: Gather Statistics sihirbaz optimizer istatistiklerini üretmeye ve de i tirmeye
yarar. Veri sözlü ünde istatistikler tutul ur ve ücretli bir optimizer taraf ndan kullan l r.
Günlük istatistikler SQL sorgular m z n performans n geli tirmede kullan l r.
Generate DDL: Seçilen tabloda DDL komutu üretilir.
Grant Privileges: Default olarak tablo yaratold nda sadece sahibi üzerinde i lem yapabilir.
Tablo sahibi di er kullan c lara baz haklar vermelidir.
Reorganize: Reorg Sihirbaz sayesinde indeks veya tablolar yeniden olu turabilir, nesneleri
farkl tablespacelere ta yabilir veya belirli neslerin depolama özelliklerini iyile tirebiliriz.
Run Segment Advisor: Bu araç ile nesnelerin kullan lmayan alanlara sahip olup olamad klar
anla labilir ve gelecek için alan gereksinimi tahmininde bulunulabilir. Bu tahminler geçmi
davran lara göre yap l r.
Shrink Segment: mevcut alanalr s k t rarak yer açmaya yarar.
Show Dependencies: Bu tabloya ba l olan nesneleri ve bu tablonun ba l oldu u nesneleri
gösterir.
View Data: Tablo üzerinde bir select sorgusu çal t rabilirsiniz. Veriyi de i tiremezsiniz.
Flashback Table: Bu özellik izin bir tabloyu belirli bir andaki haline dönürebilmenizi sa lar.
Kazayla bu kullan c veya uygulam taraf ndan de i tirilmi tablolar için geri yükleme sa lar.
Tabloyu indeksler,tiriggerlar gibi tüm özellikleriyle geri yükleyebilirsiniz. Bu veritaban
online oldu unda sadece istedi imiz tablo rollback yap larak sa lan r.
Flashback by Row Versions: Flashback Versions Query metadatay ve belirli bir zaman
aral ndaki tarihsel veriyi sorgulam n z sa lar.
Indeks Yaratmak
Injdeksler tablolarla ili kili olan seçimlik yap lard r. Veri getirilirken performans n artmas
için olu turulurlar. Oracle indeksi tablo verilerine do rudan ula mak için bir yol sa lar.
Indeksler tablo üzerindeki bir veya daha fazla sütun üzerinde olu turulurlar. Bir indeks
yarat ld ktan sonra otomatik olarak Oracle sunucusu taraff ndan sürdürülür ve kullan l r.
Tablo verisindeki sat r ekleme, güncelleme, veya silme gibi bir güncelleme i lemi otomatik
olarak indekslere ayarlan r.
Administration sayfas n n Schema k sm n n alt nda Index t klan r. Indeks özelliklerini
görebilir. Veya bir indeksle ba lant lar n görmek için Actions menüsü kullan labilir.
Indeksler aç kca veya kapal olarak tablodaki k s tlara göre yarat l rlar.
View Nedir?
Viewlar bir veya daha fazla tablo veya di er viewlar n içindeki verinin düzenlenmi bir
gösterimidir. Depolanm sorgular olaraka dü ünülebilir. Viewlar gerçekte veri içermezler
ancak temel ald klar tablodan veri derlerler. Bu tablolar viewin temel tablolar olarak
adland r l rlar.
View Yaratmak
Tablolar gibi viewlarda sorgulanabilir, güncellenebilir, sat r eklenebilir ve sat r silinebilr
ancak baz k s tlar vard r. View üzerinde yapt m z bütün i lemler view n temel tablolar n
etkiler. View ile tablonun sat r ve sütunlar na eri imi k s tlayarak belirli bir güvenlik sa lar.
Ayr ca veri karma kl n gizleyerek karma k sorgular saklar.
Administration tab n n Schema k sm nda Viewsa t klayarak mevcut viewlar görebilirsiniz.
Sequence Nedir?
Sequence pekçok kullan c n n unique tamsay üretebilece i veritaban nesnesidir. Genellikle
sequenceleri primary key de eri üretmek için kullan r z.
Name: Sequence ismi
Schema: Sequencein sahibi
Type: Artan veya azalan s rada olaca n gösterir.
Maximum value: Sequencein olu turabilece i maksimum de eri belirtir. Bu tamsay de er 28
veya daha az basamakl olur. Bu minimum ve ba lang ç de erinden büyük olmal d r. Defaultu
Unlimitedir. Unlimited artan sequence için 1027 ,azalan için -1dir.
Minimum value: Sequencein minimum de erini belirtir. Bu tamsay 28 basamakl veya daha
az olabilir. Ba lang ç de erinden az veya e i, maksimum de erden az olmamal d r. Defaultu
unlimitedir. Unlimited artan için 1, azalan için -1026 d r.
Interval: Sequence numaralar aras nda bir aral k belirlemelisiniz. Tamsay de eri pozitif veya
negatif olabilir, ancak 0 olamaz. Bu de er 28 veya daha az basamak olmal d r.
Cycle values: Artan sequence maksimum de erine ula t ktan sonra, minumum de erine
döner. Azalan squence minimum de erine ula t ktan sonra maksimum de erine döner. E er
bu seçene i seçmezseniz sequence de eri bitince hata döner.
Order Values: Sequence numaralar n bir s ra ile üretilmesini sa lar. Bu seçenek sequenci
tarih bilgisi olarak kulllan yorsan z faydal d r. Sequencein s ral olmas primary key üreten
sequencelar için önemli de ildir.
Cache Options: Daha h zl eri im için kaç tane sequencein bellekte tutulaca n d eridir. Bu
tamsay ençok 28 basamak olabilir. Bu parametre için minimum de er 2 dir. Dönen
sequencelar için bu de er dönen de er miktar ndan az olmal d r.
Sequence Kullanmak
SQL komutlar nda pseudo sutunlar kullanarak sequence de erlerine ula abilirsiniz.
CURRVAL: Sequencecin o anki de erini döndürür.
NEXT VAL: Sequence artt r r ve bir sonraki de eri döndürür.
Bu 2 de eri sequence ad yla beraber kullanmal s n z.
NEXTVAL e ilk eri im sequencein ba lang ç de erini döndürür. Daha sonraki eri imlerde
NEXTVAL sequence de eri bir artt r larak yeni de er döndürülür. CURRVALe her eri im
sequencein o anki de erini döndürür.
Veri Yönetimi
1 row created.
1 row updated.
1 row deleted.
INSERT Komutu
Basit bir INSERT komutu veritaban nda ayn anda 1 sat r olu turur. INSERT komutu alt
sorgularla birlikte ça r ld nda veritaban nda 1den fazla sat r olu turur. Bu yönteme INSERT
SELECT yöntemi denir.
Bu sorgudaki dept_80 tablosu ile employees tablosu yap sal olarak ayn d r. Ama tablonun
kolon isimleri farkl olabilir. Kolonlar n de erleri birbirleriyle uyu acakt r. Bütün gereksinim
veri tiplerinin uyu mas d r. Mesela :
UPDATE Komutu
Update komutu tablo içinde sat r düzenlemek için kullan l r. WHERE art na göre 1 sat r
veya 1den fazla sat r düzenlenebilir. WHERE art koyulmazsa bütün sat rlar de i tirilir.
WHERE art na hiçbir sat r uymaz ise hiçbir sat r güncellenmez.
DELETE Komutu
DELETE komutu tablodan sat rlar silmek için kullan l r. WHERE art na göre 1 sat r veya
1den fazla sat r silinir. WHERE art koyulmazsa bütün sat rlar silinir. WHERE art yla hiçbir
sat r uyu mazsa hiçbir sat r silinemez. Hiçbir sat r silinemedi inde hata dönmez. 0 sat r silindi
diye mesaj verir.
UNIQUE kolonlar:
INSERT ve UPDATE i lemlerinde NULL hariç ayn de eri alamazlar.
CHECK kolonlar:
INSERT ve UPDATE i lemlerinde de erler k s tlama durumlar ile kar la t r lmal .
Database = Bütün veritaban n export eder. Buna full export denir. SYS, ORDSYS,
ORDPLUGINS, CTXSYS, MDSYS, LBACSYS, and XDB emalar metadata içerdi i
için export edilmez. Tabi bunu yapabilmeniz için EXP_FULL_DATABASE rolüne
sahibolmal s n z.
Schema = Bu yöntem bir veya daha fazla eman n tüm nesnelerini export etmeye yarar. E er
sizin EXP_FULL_DATABASE rolünüz yoksa sadece kendi sahip oldu unuz emay export
edebilirsiniz.
Tables = Bu yöntemde sadece belirli tablo kümeleri export edilir. Sahibi olmad n z eman n
tablolar n export etmek için EXP_FULL_DATABASE rolüne sahip olman z gerekmektedir.
Bu modda tablo tan mlamalar export edilmez. Import zaman nda tablo tan mlamas n n var
oldu u varsay l r.
2-)E er schema veya tables seçmi seniz bir sonraki pencerede schemalar veya tablolar
seçtirir.
4-) Bir sonraki sayfa files . Burada export alaca m z dizin ismi, dosya ismi ve export
dosyalar için maximum boyutu belirleyebilirsiniz. Dosyalar n s ras için %U de i keni
kullan labilir.
expa%u => expa01.dmp, expa02.dmp, expa03.dmp, expa04.dmp, diye gider.
Expb%u=> expb01dmp, expb02.dmp, expb03.dmp, expb04.dmp, diye de di er paralel
exportlar isimlendirilir.
5-) Bir sonraki sayfa schedule . Planlama sayfas i leri planlamak için kullan l r.
6-)Son sayfa Review , bütün bu ad mlarda yap lan i lemlerin PL/SQL kodunu görebilirsiniz.
Bunu kopyalayabilir ama de i tiremezsiniz.
2-)Select Objects= Bu sayfa sadece Files sayfas nda belirli nesneleri import etme seçildi inde
gözükür.
3-)Re-Mapping = Bu sayfa bir önceki sayfadaki select objects de nesne seçmi iseniz
gözükür. Bu sayfada her bir kullan c n n verilerini yine kendisinin emas na m yoksa farkl
kullan c lar n emalar na m yüklenece ini belirleyebilirsiniz.
4-)Options = Bu sayfa veri dosyalar n n tekrar kullan m n ayarlamak, nesne olu turma
hatalar ve kullan s z indexler için kullan l r.
6-)Review = Bütün bu yap lan i lerin PL/SQL kodlar n görmek için kullan l r.
DIRECTORY Objects
Data Pump program server tabanl veya temelli oldu undan dump files, log files ve SQL
files lara server temelli dizin yollar yla eri ilir. Data Pump için directory nesneleri gibi
directory yollar n da belirlemek gerekir. Dosya sistem üzerinde directory object ismini
directory yoluna haritalar.
Görsel arayüzden yapabilece iniz gibi CREATE_DIRECTORY komutuyla da directory
nesnesi olu turulabilir.
Directory olu turdu unuz zaman, otomatik olarak directory üzerinde okuma ve yazma nesne
yetkisi verilirsiniz . Ve bu yetkiyi di er kullan c lara ve rollere verebilirsiniz.
DIRECTORY nesnesi olu turabilmeniz için CREATE ANY DIRECTORY sistem yetkisine
sahip olman z gerekmektedir.
Not: Oracle sizin belirledi iniz directory gerçekten var m yok mu diye do rulamaz. Bu
nedenle .S. de geçerli bir directory belirledi inize dikkat edin. E er .S. niz büyük küçük
harfe duyarl ysa buna da dikkat edin ve do ru format kullan n. .S. i directory içindeki
dosyalar n güvenli ini kontrol edecektir.
SQL*Loader
SQL*Loader harici dosyalardan oracle veritaban na veri yükler. Çok güçlü bir çözümleme
motoruna sahiptir. Veri dosyas n n içindeki veri formatlar na baz k s tlamalar koyar.
SQL*Loader ile kullan lan baz dosyalar:
Input Data Files = SQL*Loader n içinden veri okudu u Control File içinde belirtilen 1 veya
1den fazla dosyad r. SQL*Loader perspektifinden bak ld nda dosya içinde veriler kay tlar
olarak organize olmu tur. Veri dosyalar fixed record format, variable record format olabilir.
Kay t format Control file içinde INFILE ile belirtilir. E er bir kay t format belirlenmemi se
varsay lan olarak stream record format olur.
Control File=SQL*Loader n anlayaca bir dilde yaz lm text dosyad r. Control File,
SQL*Loader a veriyi nerede bulaca n , nas l parse edip yorumlayaca n , verileri nereye
ekleyece ini anlat r. Genelde 3 bölümden olu ur.
1.Bölüm: Oturum bilgilerini tutar. Sat r say s , band boyutu, kaç kay t atlanaca , INFILE
ile verinin nerede bulundu unu söyler.
2.Bölüm: 1 veya 1den fazla INTO TABLE blo u içerir.
3.Bölüm: Seçeneklidir. Ama varsa da veri dosyas n içerir.
Log File= SQL*Loader çal maya ba lad nda log dosyas olu turur. E er dosyay (log)
olu turamaz ise çal ma sonland r l r. Log file yükleme detaylar n içerir.
Bad File = SQL*Loader veya oracle veritaban taraf ndan reddedilen kay tlar içerir. Giri
geçersiz oldu u zaman veri dosyas kay tlar SQL*Loader taraf ndan reddedilir. SQL*Loader
i leminden kabul edildikten sonra bir tabloya kay t olarak eklenmek üzere ORacle
veritaban na gönderilir. E er oracle veritaban bu sat r n geçerli oldu una karar verirse
tabloya ekler. E er sat r geçersiz kabul kabul edilirse reddedilir ve SQL*Loader onu BAD
FILE a koyar.
Discard File= Sadece ihtiyaç duyuldu unda olu turulan bir dosyad r. Ve e er bu dosyan n
olu turulmas n istiyorsan z aktif etmelisiniz. Bu dosya, Control file içindeki kriterlere
uymad için süzülerek yükleme d na al n r.
load data
infile example.dat "fix 10"
into table example
fields terminated by ,
(col1, col2)
example.dat:
0001,abcd
0002,fghi
0003,klmn
Örnekte fixed record formatl bir veri dosyas vard r. Her kay t 10 byte uzunlu undad r. Her
kay tta 9 byte karakter vard r. 10. byte ise return anlam na gelir. (Veya di er sat ra geçme
anlam na gelir.)
Variable-Record Format
Variable-Record Formatl bir dosyada her kay t ba nda o kayd n kaç bytedan olu aca
belirtilir. Bu fixed-record formata göre daha esneklik sa lar. Stream formata göre daha
performansl d r.
Bu gösterimde n kay t uzunlu u alan n gösterir. Belirtilmez ise varsay lan olarak 5 al n r.
Bu say 40 dan büyük olursa hata al n r.
load data
infile example.dat "var 3
into table example
fields terminated by , optionally enclosed by "
(col1 char(5),col2 char(7))
example.dat:
009hello,cd,
010world,im,
012my,name is,
Bu örnekte kay t uzunlu u alan 3 byte ile gösterilmi tir. Veri dosyas n n 3 fiziksel kayd var.
1.kay t = 9 bytel k, 2.kay t = 10 byte, 3.kay t = 12 byte
Stream-Record Format
Stream-Record Formatl dosyada kay t uzunluklar say ile belirlenmez. SQL*Loader kay tlar
sonundaki record terminator ile ay r r. En esnek formatt r. Ama bununda performanstan
kayb vard r.
Loading Methods
SQL*Loader 2 veri yükleme yöntemi sunar.
1-Conventional Path Load : Veri sat rlar n eklemek için dizi olu turur ve INSERT ifadesini
kullan r. Yükleme s ras nda, kay tlar alan baz nda parse edilir. Control file da belirtilen
tabloya eklemek için dizi olu turulur. Kriterlere uymayan sat rlar reddedilir.
Kümelenmi ve kümelenmemi tablolara veri eklenebilir.
2-Direct Path Load:Bellekte veri bloklar olu turulur ve bu bloklar extendler içine kaydedilir.
Veritaban ARCHIVELOG modunda olmad kça online redolog file giri leri olu maz. Direct
Path Load bütün oracle veri bloklar n olu turmak için alan özelliklerini kullan r ve bloklar
oracle veri dosyalar na direkt yazar. Direct Path Load, veritaban tampon önbelle ini bypass
geçer ve SGA ya sadece extent yönetimi için eri ir.
Loglama farklar : Conventional Path Loading herhangi bir DML ifadesine benzer redo
giri leri üretir. Direct Path Load kullan rken redo giri i üretilmedi i durumlar :
Veritaban NOARCHIVELOG modundaysa
Veritaban ARCHIVELOG modundaysa ama loglama inaktif ise loglama
NOLOGGING özelli ini ayarlamakla veya control file içinde UNRECOVERABLE
ifadesini kullanarak inaktif edilebilir.
K s tlamalar n Gerçekle tirilmesi: Conventional Path Loads s ras nda, bütün aktif k s tlamalar
gerçekle tirilir.
Direct Path Loads s ras nda k s tlamalar öyle yönetilir:
Diziler olu turuldu unda NOT NULL k s tlamalar kontrol edilir.
FOREIGN KEY ve CHECK k s tlamalar in aktif edilir ve çal man n sonunda aktif
edilir. Çünkü di er sat rlara ve tablolara referans eder. CHECK k s tlamalar in aktif
edilir, çünkü onlar SQL fonksiyonlar n kullanabilir. Sadece küçük say da sat rlar
geni tabloya yaz l yorsa conventional loads kullan l r.
PRIMARY KEY ve UNIQUE k s tlamalar çal ma s ras nda ve sonras nda kontrol
edilir ve ihlal edilmi se in aktif edilebilir.
En az yetki prensibi
En az yetki demek; kullan c n n görevlerini yerine getirebilmesi için gerekli olan minimum
yetki demektir. Bu da kullan c n n bilinçsizce veya bilinçli bir ekilde kendisini ve i ini
ilgilendirmeyen verileri görmesini, de i tirmesini engelleyecektir.
UTL_HTTP: Veritaban n n http yoluyla veri istemesine ve almas na müsaade eder. Bu paketi
PUBLIC e vermek kötü niyetli web siteleriden HTML yoluyla veri gönderilmesine izin
vermek demektir.
UTL_FILE: E er do ru yap land r lmaz ise, sunucu üzerinde duran i letim sistemi text
dosyalar na eri im izni verir. Do ru yap land rsan z dahi bu paket ça r lma uygulamas n
(nereden ça r ld n ) ay ramayabilir. Sonuç olarak herhangi bir uygulama UTL_FILE a
eri ip keyfi veriler yazabilir.
DBMS_OBFUSCATION_TOOLKIT: Verileri ifreler. Genelde, ço u kullan c ya verileri
ifreleme yetkisi verilmemelidir. Çünkü ifreleme anahtar güvenli olarak depolan p
yönetilemez ise ifrelenmi veri de ifrelenemez.
Bu paketler onlara ihtiyaç duyan uygulamalar için çok kullan l d r. Ama güvenlik için do ru
yap land r lmalar gerekmektedir. Bu nedenle gerekmedikçe, PUBLIC ten bu yetkileri geri
almal ve sadece bireysel kullan c lara gerekti inde izin vermelisiniz.
PUBLIC taraf ndan çal t r labilen nesneleri listeleme
SYS nin sahibi oldu u ve PUBLIC taraf ndan çal t rma yetkisi bulunan nesnelerin listesini
görmek için u sorguyu çal t r n:
SQL>SELECTtable_name
2 FROM dba_tab_privs
3 WHERE owner='SYS'
4 AND privilege = 'EXECUTE'
5 AND grantee='PUBLIC'
6 /
TABLE_NAME
--------------------
AGGXMLIMP
AGGXMLINPUTTYPE
...
XMLTYPEEXTRA
XMLTYPEPI
SQL>
Kullan c lar n letim sistemi dizinlerine eri imini k s tlama
UTL_FILE_DIR yap land rma parametresi i letim sisteminin hangi dosyalar n n PL/SQL
yoluyla okunup yaz labildi ini tan mlar. Varsay lan olarak hiçbir dizin eri ilemezdir.
Veritaban n ba latan kullan c için bile eri ilemez durumdad r.
Çoklu dizin belirlemek için, gerekli bütün dizinler ekilde görüldü ü gibi t rnak içinde ve
birbirinden virgül ile ayr larak listelenir. Bu parametre dinamik olmad için yap lan
de i ikliklerin aktif olmas için instance yeniden ba lat lmal d r. Dizin yolunda ortam
de i kenlerini kullanmay unutmay n. Instance bu dizin varm yokmu diye kontrol etmez,
dolay s yla daha sonra parametreyi de i tirebilir ve dizini olu turabilirsiniz.
Bütün PL/SQL kullan c lar bu parametre ile belirtilen dosyalar okuyabilir ve yazabilir, bütün
PL/SQL kullan c lar na bu dosylar için güveniliyor olmal d r.
Dizinler Oracle Instance için mutlaka eri ilebiliyor olmal d r.
Uyar : UTL_FILE_DIR = * parametresini asla böyle ayarlamay n çünkü bu bütün
dizinlere eri imi aktif eder(datafile, redo log dizinleri, ).
Sistem yetkisinin izlenmesi DROP ANY TABLE gibi herhangi bir sistem yetkisinin yapt
i leri izlemek için kullan l r. Yine kullan c ad veya ba ar l /ba ar s z oturum açmaya
odaklan labilir. Varsay lan olarak, izleme zaman her bir sistem yetkisinin yapt i izleme
kayd olarak eklenir. ki tür kay t ekleme yöntemi vard r.
- BY SESSION : Bir oturumda kullan c n n toplamda kaç kay t üzerinde i lem
yap ld kaydedilir. (Mesela kullan c kendisine ait olmayan bir tablo üzerinde
100,000 kay t güncellemi se sadece bu eklenir.)
- BY ACCESS : Varsay lan olarak bu özellik gelir. Bundan ziyade BY LIMIT i
kullanmak sistem yetkilerini izlemenin, sistem üzerindeki performans ve depolama
aln n azaltmas n en aza indirecektir.
Nesne yetkisi izleme, tablolar, görünümler, yordamlar, sequences, dizinler ve kullan c tan ml
veri tipleri üzerinde yap lan i leri izlemek için kullan l r. Bu tip izleme de yine
ba ar l /ba ar s z diye odaklanabilir ve SESSION veya ACCESS diye gruplanabilir.
Varsay lan olarak BY SESSION seçene i aktiftir. Bunun yerine izlenen nesne üzerinde
yap lan her i lemin kayd n tutmak istiyorum derseniz BY ACCESS seçene ini aktif
etmelisiniz.
AUDIT SESSION özelli i, kullan c oturumlar n n olu umunu izler. Bu izleme de yine
kullan c ad veya ba ar l /ba ar s z diye odaklanabilir. Bu özellik e sizdir. Çünkü her bir
oturum olu turuldu unda ve bir instance a ba land nda bir izleme kayd olu turur. zleme
kayd izleme tablosuna ba lanma zaman nda eklenir ve ba lant n n kesilmesi zaman
güncellenir. Oturum ile ilgili, ba lant zaman , ba lant s n kesme zaman , mant ksal ve
fiziksel G/Ç i lemleri, gibi toplu bilgiler tekbir kay t olarak eklenir. Ço u veritabanlar nda
genelde AUDIT SESSION komutu kullan l r. Hemen hemen bütün veritabanlar nda AUDIT
SESSION WHENEVER NOT SUCCESSFUL kullan lmal çünkü bu komut veritaban n za
olas sald r lar tespit etmenize yarar.
Not: Genelde izleme özelliklerini odaklanm de ildir. Çünkü ilk ba ta neyi izleyece inizi
bilemezsiniz. AUDIT ALL komutu çok geni bir aral izlemenize yarayan genel bir
ifadedir. E er nesne yetkisi izleme ile birlikte kullan ld nda:
E er AUDIT ALL özelli i kullan c ad ile kullan lm ise:
SQL> AUDIT ALL BY hr;
Bu kullan c n n bütün nesneler için kulland DDL ifadeleri izlenir.
zleme özelliklerini görme
Hangi izleme özelli ini seçti inizi görmek için slayttaki listeyi kullanmal s n z.
DBA_STMT_AUDIT_OPTS ve DBA_PRIV_AUDIT_OPTS sadece ifadelerin ve yetki izleme
kay tlar n tutar. DBA_OBJ_AUDIT_OPTS her bir izlenebilir nesne için bir kay t içerir.
Görünüm her bir izlenebilir nesne için kolonlar gösterir. Örne in, INSERT izleme özellikleri
INS kolonunda gösterilir. zleme özellikleri SUCCESSFUL/NOT SUCCESSFUL olarak 3
mümkün de er ile belirtilir:
- zlenmiyor
S Oturum ba na izleme kay tlar toplan r.
A Her eri im ba na izleme kay tlar toplan r.
Value-Based Auditing
Database auditing kay tlar , izlenen nesne üzerinde ekleme, güncelleme, silme gibi i lemleri
içerir, ama üzerinde de i iklik yap lan gerçek veriyi içermez. Value-based izleme database
auditingi geni letir ve de i tirilen gerçek verileri içerir. Value-based auditing veritaban
tetikleyicileri ile tetiklenir.
Bir kullan c ne zaman ki bir tabloya ekleme, silme, güncelleme yapar, tetikleyici izlemeyi
tetikler kullan c bu i lemleri yaparken arka planda bütün yap lanlar izlenir ve gerekli yere
yaz l r.
Value-based auditing Standard database auditing e göre sistem kaynaklar n daha az tüketir ve
performansa daha az etki eder. Çünkü sadece ekleme, silme ve güncelleme de çal r. Bu
azalma tetikleyicinin kodunun ne kadar verimli oldu una ba l d r. Value-based auditing
sadece Standard database auditing ile elde edilen bilgiler yetersiz kald nda kullan lmal d r.
Value-based auditing te anahtar tetikleyicilerdir. Örnek bir izleme tetikleyicisi:
CREATE OR REPLACE TRIGGER system.hrsalary_audit
AFTER UPDATE OF salary
ON hr.employees
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
BEGIN
IF :old.salary != :new.salary THEN
INSERT INTO system.audit_employees
VALUES (sys_context('userenv','os_user'), sysdate,
sys_context('userenv','ip_address'),
:new.employee_id ||' salary changed from '||:old.salary||
' to '||:new.salary);
END IF;
END;
/
Bu tetikleyici hr.employees tablosunun de i tirilen salary alan n izlemeye
odaklanm t r. Bir sat r güncellendi inde tetikleyici salary kolonunu kontrol eder. E er eski
salary alan yeni salary alan na e it de ilse bir izleme kayd audit_employees tablosuna
eklenir. Bir izleme kayd , kullan c ad , de i kli in yap ld IP adresi, hangi sat r n
de i tirildi i, ve gerçek salary de erini içerir.
DBMS_FGA Package
DBMS_FGA paketi fine-grained izleme fonksiyonlar için yönetim arac d r. DBMS_FGA
üzerine çal t rma yetkisi gerekmektedir. Ve sadece yöneticiye verilmelidir. Çünkü önemli ve
gizli bilgiler içerebilir.
DBA_FGA_AUDIT_TRAIL
Ad Tan mlamas
TIMESTAMP Çal ma tarihi ve zaman
DB_USER Kullan c n n çal t rd kullan c ad
OS_USER Kullan c n n çal t i letim sistemi ismi
OBJECT_SCHEMA zlenen nesnenin sahibi
OBJECT_NAME zlenen nesnenin ismi
POLICY_NAME zlemeye sebep olan kural n ismi
SCN The SCN of the transaction
SQL_TEXT zlemeye sebep olan SQL ifadesi
SQL_BIND The bind variable of the audit event, formatted as: #n(s):v:
where n is the number of the bind variable in the statement
s is the bind variable length, v is the bind variable value
COMMENT$TEXT Yorum
SQL>
FGA Rehberi
Audit Condition
FGA kural olu turulurken bu özellik null yap l rsa bunun anlam bütün ifadelerin
izlenece idir.
Policy Name Error
Veritaban nda kural ismi e siz olmal d r. Sahibi yoktur. E er varolan bir isim veriseniz u
hatay al rs n z:
ORA-28101: policy already exists
Audited Object Errors
Kural olu turdu unuzda tablo veya görünüm var olmal d r. E er yoksa u hatay al rs n z:
ORA-00942: table or view does not exist
Güvenlik Güncellemeleri
Oracle güvenlik ile ilgili duyurular , düzeltmeleri, ipuçlar n ve bilgileri sitesinde
duyurmaktad r. Oracle Technology Network Web ve OracleMetaLink (MetaLink).
Ama ç kan yama ve güncellemeleri sadece mü terileri indirebilir.
E er sizde bir güvenlik aç görür bulursan z direkt mail atabilirsiniz :
secalert_us@oracle.com.
1. Audit select on the salary column of the employees table. Because we only want to
capture audit information if someone selects the salary column we must use fine grained
auditing rather than standard database auditing.
Note: - is used to continue a statement on a new line in PL/SQL
a) Use the DBMS_FGA package to add a fine grained audit policy to HR s employees
table. Only capture audit information if someone reads the salary column.
b) Verify that only SELECT statements that include the salary column generate an audit
trail.
2. Audit changes to the salary column of the employees table. Because you want to
capture the old and new values rather than just the fact that a change happened, you must use
value-based auditing rather than standard database auditing. Remember that value-based
auditing is implemented through the use of database triggers.
a) Create a table called AUDIT_EMPLOYEES in the SYSTEM schema to hold information
captured through database auditing. Make the table a standard, heap-organized table with four
columns:
who varchar2(10)
event_date date
ipaddress varchar2(16)
what varchar2(2000)
b) Create a trigger to capture changes to the salary column.
Connect as user system
Run the script $HOME/LABS/hrsalarytrig.sql
SQL> connect system/manager@dba10g
Connected.
SQL> @$HOME/LABS/hrsalarytrig.sql
Trigger Created.
c) Verify that audit information about changes to the salary column are now captured.
Oracle A Servisleri
Oracle a servisleri istemcinin veya orta katman uygulamalar n n Oracle Veritaban sunucusuna
ba lanmas n sa lar. A oturumu kurulduktan sonra, Oracle Net istemci uygulamas yla veritaban
sunucusu aras nda verileri ta yan kurye görevi görür. Oracle Net, istemci uygulams yla veritaban
sunucusu aras nda ba lant y sa lamak ve sürdürmekle görevlidir ayn zamanda ikisi aras ndaki mesajlar
da ta r. Oracle Net veya Oracle Netin görevini taklit eden Java Database Connectivity(JDBC),
veritaban yla konu an her bilgisayarda olmal d r.
stemci makinede, Oracle Net veritaban na eri mek isteyen herhangi bir uygulama taraf ndan eri ilen
arkaplan bile enidir. Kullan c lar asla Oracle Neti görmezler, sadece yugulama kullan r.
Veritaban sunucusunda, Oracle Net listener ad verilen aktif bir process içerir. Oracle Net Listener
veritaban ve d uygulamalar aras ndaki ba lant y ayarlamakla görevlidir. Listener olmadan veritaban na
d ardan ba lanmak mümkün de ildir.
Listener Görüntülemek
Enterprise Manager ana sayfas ndan Listener linki t klanaral lsitener status page e geçilir.
Bu sayfada:
- Listener versiyonu ve ORACLE_HOME bilgisi
- Listener için ilk dinleyece i adres
- Listener ba latmakda kullan lan konfigürasyon dosyalar n n yeri
- Listener n durumu ve ne zaman ba lat ld
- Listener n cevap zaman (response time): TNS Ping (ms)
- Bir dakikada kabul edilen/rededilen ortalama ba lant say s
1
2 Create e bas l r.
3 Listener ad girilir. Bu isim sunucu için unique olmal d r.
4 Dinleyece i adres eklenir.
Dinlenen Adresler
Her listener n en az 1 tane dinledi i adres bulunmal d r.
5 A protokolü seçilir. TCP/IP en çok kullan lan ve default olan d r.
6 Listener n çal aca sunucnun ad veya IP adresi girilir, port belirtilir. Deafult port 1521 dir. E er 1521
den ba ka bir port seçerseniz listener veya instance n z için baz ayarlar yapman z gerekir.
7 Listener n çal aca sunucunun ismi veya IP adresi girilir.
8 Listener için di er tüm seçenekler seçimliktir. Adresi kaydetmek için OKe bas n.
9 Yeni listener ba latmak için Actions menüsunden Start/Stop seçilir.
Listener Kontrol
Listner control utility ile listener kontrol edersiniz. lsnrctl ile:
- Listener ba lat l r.
- Listener durdurulur.
- Listener n durumu kontrol edilir.
- Listener servislerinin durumu kontrol edilir.
- Konfigürasyon dosyas parametreleri sayesinde listener tekrar ilklenir.
- Pek çok listener dinamik olarak konfigüre edilir.
- Listener parolas de i tirilir
2
Temel komut sözdizimi:
LSNRCTL> komut [listener ad ]
Lsnrctl komutu i lendi inde listener ad belirtilmezse default listener kabul edilir.
3
LSNRCTL> STATUS
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 10.1.0.1.0 - Beta
Start Date 05-NOV-2003 15:48:08
Uptime 0 days 16 hr. 40 min. 2 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /oracle/product/ora10g/network/admin/listener.ora
Listener Log File /oracle/product/ora10g/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=rhel)(PORT=1521)))
Services Summary...
Service "dba10g" has 2 instance(s).
Instance "dba10g", status READY, has 1 handler(s) for this service...
Instance "dba10g", status UNKNOWN, has 1 handler(s) for this service...
Service "rhel" has 1 instance(s).
Instance "dba10g", status READY, has 1 handler(s) for this service...
The command completed successfully
4
- Listenerda bulunan her servis için özet bilgi. Statically registered serviceler iBa lant zaman çin
durum bilgisi UNKNOWNdur.
5
Servis Aliaslar n n Ayarlanmas
Yerel Oracle Net servis aliaslar n n olu turulmas için Administor aç l r listesinden Local Naming seçilir,
Go ve arkas ndan da Create e bas l r.
Directory Naming içinse ayn listeden Directory Naming seçene i seçilir.
Not: E er dizin isimlendirme önceden yap lm sa, Directory Naming seçene ini seçemezsiniz.
Create Net Service Name sayfas nda Net Service Name sahas na unique bir isim girin. Veritab n z n servis
ad ve SIDsini girin ve servis ad n eklemek için Add butonuna bas n.
Adresler için protokol,port ve listener taraf ndan ba lan lmak istenen servisin hostu girilir.
6
simlendirme Metotlar n n Seçimi
Default isim çözümleme metotlar yerel isimlendirme(TNSNAMES), easy connect(EZCONNECT) ve
host namingdir.
Oracle Net önce yerel isim çözümleme dosyas na bakar, Easy Connect kullanmaya çal r, directory
sunucusunu kontrol eder ve en son olarak host naming dener. E er directory namingin Easy Connectten
önce olmas n istiyorsak LDAPyi seçmeli ve Promote butonuna basmal y z.
7
Oracle Shared Servers
Ba lant Kurmak
Oracle Net isim çözümleme bittikten sonra, ba lant iste i kullan c da veya middle-tier
uygulamadan(kullan c processi) Oracle Net Listener a ula r. Listener CONNECT paketini al r
ve CONNECT paketinin geçerli bir Oracle Net Service ismini isteyip istemedi ini kontrol eder.
E er servis ismi istenmedi inde (TNSPING iste i gibi) Listener ba lant n n do rulu unu
onaylar ve ba ka bir ey yapmaz. E er geçersiz bir sevis ismi istenirse listener kullanc processine
hata mesaj döndürür.
Kullan c Oturumu
Kullan c RESEND paketini ald ktan sonra, CONNECT paketini tekrar gönderir. Server process
kullan c authentication kontrol eder ve geçerliyse user session yarat l r.
Dedicated Server process: Oturum kurulmas yla, server process sunucu üzerinde kullan c n n
ajan olarak çal maya ba lar. Server processin görevleri:
-Uygulamada bulunan SQL statementlar n parse ve çal t rma
-SQL statementlar n n çal t r lmas için gerekli database buffer cache data bloklar yaratmak
-Disk üzerindeki data filelardan gerekli data bloklar n SGA n n database buffer cache k sm na
okumak
-Tüm sort i lemlerinin yürütülmesi. Server processin PGA(Program Global Area) olarak
adland r lan k sm sort i lemlerinde kullan lmak üzere sort area denen bellek alan bulundurur.
-Uygulaman n i ledi i bilginin sonuçlar n kullan c ya döndürür.
Server processler bitmap ve hash joins gibi i lemler için ayr lm belle e sahiptir. Dedicated
server process taraf ndan kullan lan bellek miktar pekçok initialization parameter ayar na
ba l d r. Otomatik olarak PGA_AGGREGATE_TARGET ve WORKAREA_SIZE_POLICY ile
kontrol edilir.
stek Kuyru u
- Bir request queue tüm dispatcherlar taraf ndan payla l r
- Shared serverlar yeni requestler için request queue ye bakarlar.
- Requestler first-in first-out mant yla çal rlar. Priority yoktur.
SGA ve PGA
System Global Area ve Progran Global Area içerikleri dedicated server veya shared sevre
kullan m na ba l olarak de i ir:
- Text ve parse edilmi tüm SQL sorgular SGAda tutulur.
- Cursor durumu, SQL statement için run-time memory de erlerini içerir. Getirilen
sat rlar gibi
- User-session datalar güvenlik ve kaynak kullan m bilgilerini içerir.
- Stack spacede process için lokal de i kenleri içerir.
Teknik Not
SGA ve PGA daki de i imler kullan c ya effaft r. E er çoklu kullan c destekliyorsa
LARGE_POOL_SIZE in artt r lmas gerekir. Her shared server processi tüm oturumlar n
data spaceine eri melidir, böylece herhangi bir server herhangi bir oturumdan iste i
gerçekle tirebilir. SGA da bulunan space her session n data space i içindir. Bir session n
alabilece i spacei limitlendirebiliriz(PRIVATE_SGA ile)
Dispatcher
DISPATCHERS parametresi her dispatcher için de i ik özellikleri sa lar(enable).
Oracle Database 10g name value syntax destekler.
DISPATCHERS= (PROTOCOL = TCP)(DISPATCHERS=3)
Parametre Tipi String
Parametre S n f Dinamik
Dafault De er Null (hiçbir Dispatcher ba lat lmayacak
Dispatcher n tutabilece i ba lant say s i yo unlu una göre de i sede, en iyi ölçü 1
dispatcher n mevcut veritaban ba lant lar n n %50sini kullanmas d r.
Sadece gerekli dispatcher özelli i PROTOCOL dür. Di erleri seçimliktir.
Attribute Description
PROTOCOL Dispatcher n kullanaca a protakolünü
(PRO or PROT) belirler(genellikle TCP)
DISPATCHERS Ba lat lacak dispatcher say s d r (Default 1)
(DIS or DISP)
SERVICE Distapcher n Listenerla birlikte kay t oldu u Oracle Net
(SER or SERV) Service ad d r. E er verilmezse dispatcher n kay t de eri
SERVICE_NAMESdir.
LISTENER Specifies an alias name for the listeners with which the
(LIS or LIST) PMON process registers dispatcher information. Set the
alias to a name which is resolved through a naming
method.
This attribute need only be specified if the listener is a
local listener that uses a nondefault port (not 1521) and
is not specified with the LOCAL_LISTENER parameter
or the listener is on another node.
SESSIONS The maximum number of network sessions for each
(SES or SESS) dispatcher. The default is operating system specific.
Most operating systems have a default of 16 K.
CONNECTIONS Specifies the maximum number of network connections
(CON or CONN) to allow for each dispatcher. The default is operating
system specific. For example, 1024 is the default for
Sun Solaris and Windows.
Shared-Servers
SHARED_SERVERS elde bulunan minimum server process say s n belirtir. Bu
parametrenin belirlenmesi kritiktir çünkü instance Ortak stek kuyru unu gör ntüler ve
kuyru u kullanacak ba ka shared serverlar ba lat r gerekmedi inde de bunlar bitirir.
Max_Shared_Servers
MAX_SHARED_SERVERS e zamanl çal abilecek maksimum server process say s n
gösterir. Bu parametre önemlidir çünkü instance gerekti i zaman shared server process
yarat labilir.
Parametre Tipi Integer
Parametre S n f Dinamik
Dafault De er Yok (Limitsiz)
De er Aral letim sistemine ba l
Circuits
Virtual circuitler veritaban ndan dispatcher ve servera do ru kullan c ba lant lar d r. CIRCUITS
parametresi gelen ve giden network oturumunda bulunan virtual circuits say s n gösterir.
Bu parametreyi shared-server mimarisinde kullan c lar n kurabilece i ba lant say s n
s n rland rmak için set etmeliyiz. Bu parametre bir instance n toplam SGA gereksinimini
etkileyen parametrelerden biridir.
Parametre Tipi Integer
Parametre S n f Dinamik
Dafault De er E er Oracle Shared Server konfigüre edilmi se
CIRCUITS de eri SESSIONS de erine uyar. Aksi halde de er
0d r.
li kili Parametereler
- LARGE_POOL_SIZE large poolun büyüklü ü byte cinsinden belirtilir. Oracle Shared Server
dedicated server durumunda PGA da tutulan oturum bilgilerinin large pollda tutar
- SESSIONS system taraf ndan yarat labilecek maksimum session say s n gösterir.
- PROCESS server side processleri kontrol eder.
- LOCAL_LISTENER listener taraf ndan kullan lan port ve protokol belirtilir. E er listener
TCP/IP 1521. porttan dinlemiyorsa veya birden fazla listener varsa LOCAL_L STENER
konfigüre etmek gerekir.
E er LARGE_POOL_SIZE de erini set etmezseniz, Oracle, Oracle Shared Server kullan c
oturum belle i için shared pollu kullan r. Bu yüzden PL/SQL, SQL ve sahared poolu kullanan
di er servislerin performans etkilersiniz.
Oracle her oturum için shared poolun belirli bir k sm n ay r r.
V$CIRCUIT view sorgulanarak her shared server ba lant s için kay t görülür. Ayr ca gelen
ba lant lar için listener n yük dengelemesi yapt da görülebilir.
SQL>select dispatcher, circuit, server, status from v$circuit;