28 Aralık 2012 Cuma

Oracle Expdp İmpdp ve Parallel komutu


Export/İmport işlemleri Datapump ile normal export/import  işleminden
daha hızlı gerçekleşiyor. Bu işlem için öncelikle işletim sisteminde bir DIRECTORY create etmek ve yetkilerini verme gerekir.

CREATE OR REPLACE DIRECTORY DATA_PUMP_DIR AS '/export';

GRANT READ, WRITE ON DIRECTORY DATA_PUMP_DIR TO MASCA;

GRANT READ, WRITE ON DIRECTORY DATA_PUMP_DIR TO EXP_FULL_DATABASE;

GRANT READ, WRITE ON DIRECTORY DATA_PUMP_DIR TO IMP_FULL_DATABASE;

   Şimdi import ve export işlemini aşağıdaki komutları kullanarak yapabiliriz.
Aşağıdaki komut full export almak için kullanılır.

expdp masca/password full=Y directory=DATA_PUMP_DIR
dumpfile=MASCA.dmp logfile=MASCA.log

impdp masca/password directory=DATA_PUMP_DIR dumpfile=MASCA.dmp logfile=IMP_MASCA.log
   
   Burada işlem hızını arttırmak için "parallel" komutu kullanılabilir. Komutun kullanımını aşağıdaki örnekte  inceleyelim. Bu komut için verilecek değer direkt işlemcinin core(çekirdek) sayısı ile alakalı. Örneğin 12 core işlemcisi olan bir serverde parallel=10 komutunu kullanıp, hızın 2 katına çıktığı bizzat görülmüştür.             Burada dikkat edilmesi gereken noktalardan birisi de, dumpfile parametresidir ki, file adının sonuna %U parametresi eklenince komut, paralel sayısı kadar dumpfile üretecek ve işlemin daha da hızlanması sağlayacaktır. Aşağıdaki komutun sonucunda TEST_01.dmp, TEST_02.dmp, TEST_03.dmp... TEST_10.dmp adında 10 dumpfile oluşacaktır. Export işlemi sırasında 10 farklı dosyaya paralel olarak yazacak, import sırasında da 10 ayrı dosyadan paralel okuma işlemi yaparak işlemi çok daha kısa sürede, performanslı bir şekilde yapmamızı sağlayacaktır. 

 İmpdp deki remap komutu ise, datayı bir schema dan başka schema ya taşımamız gerektiğinde kullanılır.

expdp masca/password schemas=masca directory=DATA_PUMP_DIR
parallel=10 dumpfile=TEST_%U.dmp logfile=TEST.log
impdp masca/password schemas=masca remap_schema=masca:masca2
directory=DATA_PUMP_DIR parallel=10 dumpfile=TEST_01.dmp, TEST_02.dmp,
TEST_03.dmp, TEST_04.dmp, TEST_05.dmp, TEST_06.dmp, TEST_07.dmp,
TEST_08.dmp, TEST_09.dmp, TEST_10.dmp logfile=TEST_IMP.log


  Aşağıdaki örneklerde de paralel özelliğini yanında "EXCLUDE","INCLUDE"özellikleri
kullanılmıştır.Bu özellik, export-import işleminde dahil edilecek veya edilmeyecek objeleri
belirtmemize yarar.  

expdp masca/password schemas=masca directory=DATA_PUMP_DIR parallel=10
dumpfile=masca_01012012.dmp logfile=masca_01012012.dmp.log 
EXCLUDE=STATISTICS 
EXCLUDE=TABLE:\"IN \(\'RESIM_TABLOSU\',\'LOGLAR\'\)\";


impdp masca/password schemas=kaynak remap_schema=kaynak:hedef 
directory=DATA_PUMP_DIR parallel=10 dumpfile=masca_01.dmp,masca_02.dmp, 
masca_03.dmp,masca_04.dmp,masca_05.dmp, masca_06.dmp,masca_07.dmp,
masca_08.dmp,masca_09.dmp,masca_10.dmp logfile=masca_imp.log 
INCLUDE=INDEXES;


26 Aralık 2012 Çarşamba

Oracle SGA-PGA arttırma işlemi


Oracle de zaman zaman performans sorunu yaşayabiliriz. Bu sorunu aşmanın bir yolu da
ram kaynağını arttırmaktır. Ram kaynağı arttırmaya aşağıda bir örnek verelim;

Sistemin kaynağını aşağıdaki gibi optimize etmek için;


sga_max_size                  15G
sga_target                       13G
pga_aggregate_target        6G

Toplam:21


Şu komutlar kullanılır;

ALTER SYSTEM SET sga_max_size=15G SCOPE=SPFILE;
ALTER SYSTEM SET sga_target=13G SCOPE=SPFILE;
ALTER SYSTEM SET pga_aggregate_target=6G SCOPE=SPFILE;
SHUTDOWN IMMEDIATE;
STARTUP OPEN;