Oracle Data Pump Export
Bu məqalədə sizlərə Oracle verilənlər bazasında istifadə edilən Oracle Data Pump Export (expdp) aləti haqqında məlumat verməyə çalışacam.
Aşağıdakı hallarda qeyd olunan alətdən istifadə edilə bilər:
- Bir schemadakı məlumatları və ya obyektləri (bir və ya bir neçə cədvəli) digər schemaya köçürtmək üçün.
- Bazanı bütünlüklə bir serverdə digərinə köçürtmək üçün.
- Oracle VBİS versiyasının dəyişdirilməsi üçün.
- Bazanın surətinin (logical backup) alınması üçün.
Oracle VBİS əvvəlki versiyalarında imp və exp alətləri geniş istifadə edilsə də expdp və impdp alətlərinin funksionallığının digərlərinə nisbətən daha genişlənmiş formada olması ondan istifadəni aktuallaşdırmışdır.
Data Pump Export alətinin aşağıdakı rejimləri mövcuddur:
- Full export – bazanı bütünlükdə ixrac etmək üçün istifadə edilir. Bu rejimdən istifadə edən şəxs DATAPUMP_EXP_FULL_DATABASE səlahiyyətinə malik olmalıdır.
- Schema – bazadan müəyyən schemaların ixrac edilməsi üçün istifadə edilir.
- Table – bir və ya bir neçə cədvəlin ixracı üçün istifadə edilir.
- Tablespaces – tablespace üzərində olan məlumatların və obyektlərin ixracı üçün istifadə edilir.
Data Pump Export vasitəsilə məlumatları ixrac edərkən susmaya görə DATA_PUMP_DIR kataloqu istifadə edilir. Lakin aşağıdakı əmrlə yeni kataloq (DMP kataloqu) yaratmaq mümkündür:
CREATE OR REPLACE DIRECTORY DMP AS ‘D:\test’;
İxrac əmrini icra edəcək istifadəçinin əmrdə göstərilmiş kataloqdan istifadə icazəsi mövcud olmalıdır. İcazə olmasa aşağıdakı əmrlə icazə vermək olar:
GRANT READ, WRITE ON DIRECTORY DMP TO HR;
İndi isə yuxarıda qeyd olunmuş rejimlərə uyğun olaraq nümunələrə baxaq.
Dumpfile – ixrac faylının adı
Logfile – ixrac logunun adı
Directory – ixrac faylının yerləşəcəyi kataloqun adı
Bütün bazanı ixrac etmək üçün FULL parametrindən istifadə edilir.
expdp ‘sys@orcl as sysdba’ FULL=Y directory=DMP dumpfile=FULLDMP.dmp logfile=FULLDMP.log
Schema üzərində olan məlumatların və obyektlərin ixrac edilməsi üçün SCHEMAS parametrindən istifadə edilir.
expdp hr@orcl schemas=HR directory=DMP dumpfile=HR.dmp logfile=HR.log
Bir neçə schema olduqda schemas=HR,SCOTT formasında qeyd edilməlidir.
İxrac əməliyyatını cədvəl üçün aparmaq məqsədilə TABLES parametri istifadə edilir.
expdp HR@ORCL tables=test directory=DMP dumpfile=test.dmp logfile=test.log
Bir neçə cədvəlin adını “,” işarəsi ilə qeyd edərək ixrac etmək mümkündür.
Bəzən ixrac əməliyyatı aparılarkən müəyyən xüsusiyyətlərə görə yalnız istədiyimiz şərtlərə uyğun olmayan cədvəl və ya sxemanın ixrac edilməsini məhdudlaşdırmağa ehtiyac ola bilər. Məsələn bazanı tam ixrac etmək istəyirik amma SYS adı ilə başlayan sxemaların ixrac edilməsini istəmirik. Belə hallarda include və exclude parametrlərindən istifadə edilir. Aşağıdakı əmrdə schema üçün exclude parametri istifadə edilib. SCHEMA burda obyektin tipini müəyyən edir və dəyişdirilə bilər. Məsələn EXCLUDE=TABLE:\”LIKE \’APEX%\’ \” like əvəzinə IN istifadə edərək qeyd edilmiş obyeykt növünə uyğun bir neçə (EXCLUDE=TABLE:\”in \(\’APEX\’,\’test\’\) \” ) obyekt adı qeyd etmək mümkündür.
expdp ‘sys@orcl as sysdba’ FULL=Y EXCLUDE=SCHEMA:\”LIKE \’SYS%\’ \” directory=DMP dumpfile=FULLDMP.dmp logfile=FULLDMP.log
Digər çox istifadə edilən parametrlərə baxaq.
CONTENT=[ALL | DATA_ONLY | METADATA_ONLY] susmaya görə ALL dəyərini qəbul edir. Bu zaman həm obyektin metadası, həm də məlumatları ixrac edilir. DATA_ONLY dəyəri yalnız obyektin içində olan məlumatları, METADATA_ONLY isə yalnız obyektin metadatasını ixrac etmək üçündür.
PARALLEL ixrac əməliyyatının paralel proseslərlə aparılması üçün nəzərdə tutulub. Susmaya görə dəyəri 1-di. İxrac əməliyyatının performansına təsir göstərən ən əsas parametrdir.
QUERY ixrac zamanı sorğuya uyğun məhdudlaşdırma üçün istifadə edilir.
QUERY=hr.employees:\”WHERE employee_id=192\”
COMPRESSION=[ALL | DATA_ONLY | METADATA_ONLY | NONE] ixrac faylının həcminin sıxışdırılması üçün istifadə edilir. Dəyərlər CONTENT parametrinin dəyərlərinə uyğundur.
FILESIZE parametri ixrac faylını bu prametrin dəyərinə uyğun olaraq müəyyən olunmuş ölçüdə fayllar şəklinə salmaq üçün istifadə edilir. Məsələn FILESIZE=100MB təyin olunursa, ixrac faylı 100 MB-lıq hissələrdən ibarət olacaq.
ESTIMATE_ONLY parametri bazanı ixrac etmədən ixrac faylının ölçüsünü müəyyənləşdirmək üçün istifadə edilir. YES və NO dəyərlərinə malikdir. YES dəyərini verdikdə ixrac üçün hesablanmış ölçünü ekranda əks etdirir.
expdp ‘sys@orcl as sysdba’ SCHEMAS=HR ESTIMATE_ONLY=YES directory=DMP
expdp help=y əmri vasitəsilə Data Pump Export aləti barədə ətraflı məlumat əldə edə bilərsiniz.
Faydalı olması diləyi ilə. Növbəti məqaləmiz Data Pump Import haqqında olacaq.
Şərhlər ( 1 )
Təşəkkürlər Kənan müəllim. Yeni məqalələri tezliklə gözləyirik.
Uğurlar.