Oracle da
database’ ini startup ile açmaya kalktığımız da instance ilk iş olarak
parametre dosyasını okumaya çalışacaktır. Dolayısıyla temel initial
parametrelerinden bahsederken bizim için çok kritik file’ lerimizden biri olan
spfileSID.ora dosyasından da kısaca bahsedeceğiz.
Parametre
dosyaları Linux’ da; $ORACLE_HOME/dbs, Windos’da
$ORACLE_HOME/database altında bulunur.
Database create edilmesiyle birlikte spfileSID.ora dosyamızda oluşur. Bunun yanısıra parametre değişikliğini
database içirisinden Alter system veya Alter database ile yapmak istemediğimiz
veya yapamadığımız durumlarda ise kullandığımız birde pfileSID.ora dosyamız
olacaktır. Bu dosya db create operasyonu sonrasında oluşmaz, bunu create etmek
için sql satırında;
Create pfile
from spfile;
Komutunu
çalıştırmamız yeterli olacaktır. Hazır yeri gelmişken bu iki dosya arasındaki
farklardan bahsedelim;
Pfile, bir
metin dosyasıdır ve edit edilebilir. Spfile direk olarak düzenlenemez.
Pfile’ de
yapılan değişikliklerin etkin hale gelmesi için database’ i restart etmek
gerekir. Spfile üzerinde yapılan değişikliklerin birçoğu hemen etkin hale
gelir.
Pfile’ den
spfile, spfile’ den pfile
oluşturulabilir. Pfile create etmek için; create pfile from spfile, spfile
create etmek içinse create spfile from pfile komutunu kullanabiliriz.
Bir farkda
dosya isimlerinde var, pfile’ in ismi init(instane_name).ora, spfile’ in ismi
ise spfile(instance_name).ora ‘ dır.
Çok
kullanılan bazı başlangıç parametrelerinin ne olduğunu açıklamaya çalışalım.
Aşağıdaki parametrelerin bazıları 11g ile yeni gelmiş olan parametrelerdir.
Dolayısıyla 10g versiyonlarında göremiyor olabilirsiniz.
(Aşağıdaki
notlarım uzun bir zaman aralığında oluşmuştur, bir çoğu oracle
dökümantasyonlarından, kişisel tecrübelerden bir kısmı ise kimi net
sayfalarından derlenmiştir.)
Cluster_database : Real Application Clusterı etkin
belirten Real Application Clusters parametresidir. Default değeri false’ dir.
True yada False olarak 2 değer alabilir. Modify edilemez.
Compatible
: Size
Oracle’ ın yeni sürümünü kullanmaya izin verir, aynı zamanda geriye doğru bir
önceki sürümü ile uyumluluk sağlar. Eğer daha önceki sürümden geri dönmek
gerekirse bu parametre gerekli ve yeterli olacaktır.
Control_files
: Database’ in yapısını veritabanı adını, create edilme
zamanını, redologların ve datafile’ lerin adını ve lokasyonunu tutan kontrol dosyaları
vardır. Control file denetim dosyaları bir veya daha fazla olabilirler,
virgülle birbirinden ayrılarak belirtilirler. Minumum 1 ile 8 tane arasında
olabilirler. Control file’ lerin lokasyonunu belirtir.
Db_create_file_destination: Data file’ lerin varsayılan konumunu
belirtir. Bu lokasyon DB_CREATE_ONLINE_LOG_DEST_n parametresi set edilmemişse
control files ve redo log larında lokasyonunu belirtir. Dizinin, Oracle kulanıcısının dosyalarını
oluşturması için gerekli izinlere sahip olması gerekir. Oracle create edilirken
file isimleri belirtilmez ise, uniqe
nameler ile dosyaları create eder.
Alter system set db_create_file_dest = ‘/u01/oradata’;
Create tablespace tbs_1;
Db_create_online_log_dest_n: DB_CREATE_ONLINE_LOG_DEST_n (burada =
1, 2, 3, ...
5)varsayılan
default konumu, control files ve redo
logların konumunu belirler.
Db_domain : Dağıtılmış bir veritabanı sisteminde,
DB_DOMAIN ağ yapısı içinde
veritabanının mantıksal konumu belirtir.
Nls_language : NLS_LANGUAGE veritabanının varsayılan
dilini belirtir. Bu dil mesajları,
gün ve ay adları, AD, BC, am, pm ve semboller için
kullanılır. Bu parametre de
parametreleri NLS_DATE_LANGUAGE ve NLS_SORT varsayılan
değerler belirler.
Open_cursors : (özel SQL alanlara) Bir defada sahip
olabilecek açık imleçler sayısını
belirtir. Size, cursors sayısının fazla oturum açmasını
engellemek için bu parametreyi
kullanabilmenize olanak sağlar. OPEN_CURSORS değeri yüksek olması,
uygulamaların out
of open cursor hatası almasını engeller.
Job_queue_processes : JOB_QUEUE_PROCESSES bu işlerin
yürütülmesi için
oluşturulabilir süreçlerinin sayısını belirtir. Bu iş
sıra sayısını belirtir örneği (her J000, J999 ...)
işler. Çoğaltma veri yeniler için iş kuyruklarını kullanır.
Gelişmiş kuyruk mesaj yayılması için
iş kuyruklarını kullanır. DBMS_JOB paketi üzerinden
kullanıcı jobları,oluşturulabilir. Bazı
iş kuyruğu kişi, otomatik olarak oluşturulur.
materialized views için örnek yenileme
desteklemektedir. Eğer materialized views otomatik olarak
güncellemek istersen, bir veya
daha yüksek bir değere JOB_QUEUE_PROCESSES ayarlamanız
gerekir.
Processes : İşletim sistemi kullanıcı sayısını
belirtir aynı anda oracle’a
bağlanabilecek sayıyı ifade eder.
Remote_listener : REMOTE_LISTENER ağ adı bir adres veya
Oracle Net uzak dinleyici
adresini listesine çözümler belirtir. Adresi veya adres
listesi sistem için yapılandırılmış olarak
TNSNAMES.ORA dosyasında belirtilir.
Rollback_segments: ROLLBACK_SEGMENTS adıyla bir veya daha
fazla rollback
segmentini allocate eder. Eğer bu parametre set edilirse,
instance rollback_segments adıyla
tüm segmentleri kazanır.
Dinamik olarak bu parametrenin değerini değiştirmek mümkün
değil, ancak değerini değiştirebilir ve sonra instance’
ı yeniden başlatabilirsiniz.
Undo_management : Alan yönetimi konusunda hangi sistemi
kullanmalıyımı belirtir.
Parametre Auto olarak set edildiğinde, instance start
olduğunda undo management modu
atomatic olarak devreye girer. Mauel olarak set
edildiğinde ise, rollback segment alanları
harici olarak tahsis edilir.
Undo_tablespace: Undo Tablespace’ i, instance start
oldukdan sonra, kullanılmak üzere
ayırır. Bu parametre, instance’ da manuel undo management
modda ise, sonrasında hata
oluşur ve startup işlemi başarısızlıkla sona erer. Kullanılabilir bir Undo Tablespace’ I yoksa,
instance undo tablespace alanı olmadan start olur. Bu gibi durumlarda, user
transactionları sistem rollback segmentini kullanarak
çalışırlar. Normal şartlar altında bu
modda çalışmakdan kaçınmalısınız. Database çalışırken undo tablespace’ ini başka bir
undo tablespace
ile replace edebilirsiniz.
Undo_guarantee : Undo tablespace içerisinde belli bir
süre mutlaka dataların tutulmasını
sağlar.
Alter tablespace undo_guarantee retention guarantee;
Alter system set undo_tablespace = undo_noguarantee ;
Alter system set undo_tablespace = undo_ guarantee ;
ALTER SYSTEM SET
UNDO_RETENTION = 3600
Db_block_size : Database create edilirken set edilir. Sonradan değiştirilemez. Database’
deki blockların size’ ını ifade eder.
Db_create_online_redo_dest_n: Redologların create ederken default
olarak nereye
oluşturulacağının bilgisi yer alır.
Control_file_record_keep_time : Control filede dosyaların saklanma
süresini belirtir.Bu
parametre 7 ile 365 arasında bir değer alabilir. (default
değeri 7’ dir)
remote_os_authent : Bu parametre FALSE ise uzaktan
password file dosyası olmadan
sysdba ile bağlanamazsın demek.
Remote_login_password_file : Uzakdan bağlanmak için gereken parametre
Default değeri EXCLUSIVE dir. Parametre dosyası kaybolduğunda bu değer NONE’ a
çekilip dosya create edilip tekrar EXCLUSIVE’ e alınması gerekmektedir.
Alter system set remote_login_password_file=EXCLUSIVE
scope=spfile;
Background_dump_dest : Alert logun pathini verir.
alter system set background_dump_dest = 'D:\orcl rman
backup\' scope=both
(alert logun adı = alert_(db_sid).log şeklinde oluşur.)
07_dictionary_accessibility : Select any table yetkisi olan userın
data dictionaryi
görmemesi için bu parametre = FALSE olmaldır.
Log_archive_dest_1 (dest) : Archive logların nerede tutulacağının
bilgisinin set edildiği
parametre.
log_archive_start : Otomatik arşivlemenin doğrudan yapılıp
yapılmayacağını gösterir. Buna
true demezseniz zaman zaman svrmgrl’ye bağlanarak log
archive start diyerek, arşiv
dosyalarını yazma işlemini elle kontrol etmeniz gerekir
ki bu genelde önerilmez. Ama tape
gibi farklı bir yere zaman zaman arşivlemek için bu
yöntemi kullanabilirsiniz. B u parametre
oracle 10g ile birlikte deprecated olmuştur.
log_archive_format : Üretilecek arşiv dosyalarının yazılma
biçimini gösteriyor.%s ile logların
sıra numarasını .arc ile de uzantısı belirlenebilir.
(%s.arc)
·
%s:
log sequence number
·
%S:
log sequence number, zero filled
·
%t:
thread number
·
%T:
thread number, zero filled
Log_archive_max_processes : Archive
process sayısı bu parametre ile set edilir.
ALTER SYSTEM SET log_archive_max_processes = 4
SCOPE=SPFILE
Db_flashback_retention_target : Veritabanını kaç dakika geriye
alabileceğinizin set edildiği
parametre.
alter system set db_flashback_retention_target=60
scope=memory;
Db_recovery_file_dest_size : Yedek işlemleri için ayrılan alanının
size’ nın set edildiği
parametre.
ALTER SYSTEM SET
Db_recovery_file_dest_size = 35G SCOPE=SPFILE
Db_recovery_file_dest : Flashback bilgisinin nerede tutulacağı
bilgisinin set edildiği
parametre. Aynı zamanda default backup dizinidir.
alter system set db_recovery_fıle_dest ='d:/orcl_backup'
scope=both;
select * from v$recovery_fıle_dest;
Db_block_checking : Db data blocklarında corruption
oluşmasını önler.(değer true yapılırsa
%10’ lar civarında memory kaybı oluşur)
Db_block_checksum : Db corruption oluşmasını engeller, veriyi
datafile’ e yazarken çift
kontrol yapar. (değer true yapılırsa I/O da %1-2
civarında artış olur.)
Db_keep_cache_size : Buffer cache’ in keep alanının size’ ı
set edilir.
alter system set
db_keep_cache_size = 50M scope=MEMORY;
Db_recycle_cache_size : Buffer
cache’ in recyclebin alanının size’ ı set edilir.
alter system set
db_recycle_cache_size= 10M scope=MEMORY;
Db_cache_size : Buffer cache’ in default alanının
size’ ı set edilir.
Shared_pool_size : Shared pool’ un size’ ı set edilir.
Large_pool_size : Large pool’ un size’ ı set edilir.
Java_pool_size : Java pool’ un size’ ı set edilir.
Streams_pool_size : Streams pool’ un size’ ı set edilir.
Sga_max_size : Sga atanmış olan kullanılabilecek
alanı ifade eder.
Sga_target : Sga’ nın kullanılabileceği alanı ifade
edebilir. Bu değer sga_max_size değerinden büyük olamaz.
ALTER SYSTEM SET
sga_max_size = 16000M SCOPE=SPFILE;
ALTER SYSTEM SET
sga_target = 15000M SCOPE=SPFILE ;
Pga_aggregate_target : Pga alanına atanan memory alanını
ifade eder.
Statistics_level : Sistem tarafından toplanan istatistiklerin nasıl
toplanacağının set edildiği
parametredir.
3 değer alabilir. BASIC; Datanın istatistiğini almaz. Dolayısıyla bu değer set
edilmişken
ADDM çalışmaz. TYPICAL; default değerdir.segment seviyesinde istatistikleri
alır.
ALL;
operating systeminde istatistiğini alır. Sisteme yük getirir.
ALTER SYSTEM SET statistics_level=all
Open_cursors : Bir sessionın aynı anda kaç tane
select çalıştırabileceğini belirtir. (default değeri 300)
Alter system set open_cursors=350;
User_dump_dest : user trace dosyalarının pathi burda
yer alır.
fast_start_mttr_target : Database’ e checkpoint attırma zamanı
(değer saniye cinsinden)
ALTER SYSTEM SET fast_start_mttr_target = 900
db_writer_processes : Databasede ki db writer
procecessinin kaç adet olduğunu bilgisini bu parametreden alır.
*.db_writer_processes=1
audit_sys_operations : Database’ in izlenmesi sürecinde Sys
userının da denetlenip
denetlenmeyeceğini gösteren parametredir. Defaultu FALSE’
dir.
audit_file_dest : sysnin auditlenmesi durumunda sys
audit kayıtlarının yerini belirtir.
Windows da windows application log’ larda, linuxda
audit_file_dest parametresine bakar.
log_archieve_start : otomatik archive alma parametresidir.
İnit.ora dosyasında değeri
log_archieve_start=true şeklinde set edilmelidir.
Noarchivelog modunda çalışan bir db
için bu parametre init.ora dosyasında olmaması
gerekmektedir.
open_links : OPEN_LINKS uzak veritabanlarına tek
oturumda aynı anda açık bağlantı
sayısını belirtir. (deafult’ u 4. static bir parametre
olduğundan değiştirildiğinde db restart
etmek gerekir.)
Statistic_level : AWR’ ın çalışmasını sağlayan
parametredir. 3 değer alabilir. Defaultu Typical’ dır. All ve Basic’ de
olaiblir. Basic olduğunda AWR devredışı kalır.
alter system set statistics_level = all;
Control_management_pack_acces : Addm’ in çalışması için gereken
parametredir. Diadnostic+ tuning default değeridir.Diagnostic veya None olarak
da set edilebilir. None olması durumunda
ADDM devredışı kalır.
remote_dependencies_mode ; İki değer alabilir. timestamp,
Clientın istediği procedure ancak serverdaki kayıt tarihi ile, localdeki şimdiki tarih ile uyuşursa
çalıştırılır. signature, oracle, bir
procedure'nin imzalarının güvenli olarak göz önüne alınmış olması durumunda
çalıştırılmasına müsade eder. Bu ayar, PLSQL uygulamalarının tekrar compile edilmeden
çalıştırılmasını sağlar.
Alter session SET REMOTE_DEPENDENCIES_MODE = ( SIGNATURE
/ TIMESTAMP )
Alter system SET REMOTE_DEPENDENCIES_MODE=( SIGNATURE /
TIMESTAMP )
Ddl_lock_timeout : Ddl işlemlerinde oluşaacak lock’
lardaki bekleme süresini ifade eder. Defaultu “0”. Bu parametre 0 ile 100.000 arasında değer alabilir. system ve
session bazında değiştirilebilir.
Alter system set ddl_lock_timeout = 10 scope = SPFILE
max_dump_file_size : Oluşan trace dosyalarının maximum ne kadar boyutta
olacağını belirtir. (bu maximum size sınırlaması alert logu kapsamaz.)
alter system set max_dump_file_size = ‘5m’;
aq_tm_processes : Parametre enable edildiğinde queue
mesajlarının monitör edilmesini
sağlar. 0 – 10 arasında değer alır. 0 olduğunda disable
olur. Eğer oracle stream
kullanılıyorsa bu parametrenin 0 olarak set edilmesi
başka problemlere yol açılacaktır. Oracle
bu değerin 0’ dan bir değer olarak set edilmesini
öneriyor.
alter system set aq_tm_processes=0
cursor_sharing : Shared pool içerisinde tutulan
sqllerin benzerleri geldiğinde aynı plan ile
diğerlerininde çalışıp çalışmayacağının set edildiği
parametredir. SIMILAR = Çalışan sql'
lerin birebir aynı olmasa da benzeyenler için (execution
planlarına da bakar) cache den
çalıştırmaya yönlendirir.
EXACT = Çalışan sqlerin cache' den çalışması için sorguların
birebir aynısı olması gerekmektedir. FORCE = Cache
de Çalışan sql lerin benzeri varsa
mevcut execeution plan kullanılmasını zorlar
ALTER SYSTEM SET
cursor_sharing = FORCE SCOPE=MEMORY
Utl_file_dir : Bu parametre bir veya daha fazla
lokasyonun, oracle tarafından PL/SQL ile
kullanılmasını sağlar. Bu parametre ile tüm userlar bu
lokasyonlardaki bütün file’ leri okuyup
azabilirler.
Alter system set url_file_dir=’/u01/file1/’, ‘/u02/file2/’,
‘/tmp’ scope =SPFILE
CREATE
DIRECTORY log_dir AS '/appl/gl/log';
GRANT
READ ON DIRECTORY log_dir TO DBA;
CREATE
DIRECTORY out_dir AS '/appl/gl/user'';
GRANT
READ ON DIRECTORY user_dir TO PUBLIC;
Hiç yorum yok:
Yorum Gönder