ORACLE Export (exp) לעומת Datapump (expdp)
ORACLE מספקת שני כלי עזר חיצוניים להעברת אובייקטי מסד נתונים ממסד נתונים אחד למסד נתונים אחר. ייצוא מסורתי (exp /imp) מוצג לפני 10 גרם. לאחר מכן, מ-10 גרם, ORACLE הציגה משאבת נתונים (expdp / impdp) כשיפור לכלי השירות הייצוא המסורתי.
ייצוא מסורתי (exp/ imp)
זהו כלי עזר חיצוני של מסד נתונים של ORACLE, המשמש להעברת אובייקטי מסד נתונים משרת מסד נתונים אחד לשרת מסד נתונים אחר. הוא מאפשר העברת אובייקטי מסד הנתונים על פני פלטפורמות שונות, תצורות חומרה ותוכנה שונות.כאשר מופעלת פקודת ייצוא במסד נתונים, אובייקטי מסד נתונים מחולצים עם אובייקטי התלות שלהם. זה אומר שאם הוא מחלץ טבלה, התלות כמו אינדקסים, הערות ומענקים נשלפות ונכתבות לקובץ ייצוא (קובץ dump בפורמט בינארי). להלן הפקודה לייצא מסד נתונים מלא, Cmd > exp userid=username/[email protected]_tns file=export.dmp log=export.log full=y statistics=none
הפקודה שלעיל תיוצא ממסד הנתונים לקובץ dump בינארי בשם export.dmp. אז ניתן להשתמש בכלי השירות imp כדי לייבא נתונים אלה למסד נתונים אחר. להלן הפקודה לייבא, Cmd > imp userid=username/[email protected]_tns file=export.dmp log=import.log full=y statistics=none
Datapump Export (expdp/ impdp)
זהו גם כלי עזר חיצוני של מסד נתונים של ORACLE, המשמש להעברת אובייקטים בין מסדי נתונים. כלי השירות הזה מגיע ממסד הנתונים של ORACLE 10g.יש לו יותר שיפורים מאשר כלי העזר המסורתיים exp/imp. כלי זה גם מייצר קבצי dump, שהם בפורמטים בינארים עם אובייקטי מסד נתונים, מטא נתונים של אובייקטים ומידע הבקרה שלהם. ניתן לבצע את הפקודות expdp ו-impdp בשלוש דרכים,
- ממשק שורת פקודה (ציין פרמטרים של expdp/impdp בשורת הפקודה)
- ממשק קובץ פרמטר (ציין פרמטרים של expdp/impdp בקובץ נפרד)
- ממשק פקודות אינטראקטיבי (הזנת פקודות שונות בשורת הייצוא)
ישנם חמישה מצבים שונים של פריקת נתונים באמצעות expdp. הם,
- מצב ייצוא מלא (כל מסד הנתונים פרוק)
- מצב סכימה (זהו מצב ברירת המחדל, סכימות ספציפיות נפרקות)
- מצב טבלה (סט טבלאות שצוין והאובייקטים התלויים שלהן נפרקים)
- מצב Tablespace (הטבלאות במרחב השולחן שצוין לא טעון)
- מצב Tablespace נייד (רק המטא נתונים של הטבלאות והאובייקטים התלויים שלהם בתוך קבוצה מוגדרת של מרחבי טבלאות נפרקים)
להלן הדרך לייצא מסד נתונים מלא באמצעות expdp, Cmd > expdp userid=username/password dumpfile=expdp_export.dmp logfile=expdp_export.log full=y directory=export
לאחר מכן יש להשתמש בכלי השירות impdp כדי לייבא קובץ זה למסד נתונים אחר.
מה ההבדל בין ייצוא מסורתי ל-Datapump?
• Datapump פועלת על קבוצת קבצים הנקראת ערכות קבצי dump. עם זאת, ייצוא רגיל פועל על קובץ בודד.
• גישה לקבצי Datapump בשרת (באמצעות ספריות ORACLE). ייצוא מסורתי יכול לגשת לקבצים בלקוח וגם בשרת (לא באמצעות ספריות ORACLE).
• ייצוא (exp/imp) מייצג מידע מטא נתונים של מסד נתונים כ-DDL בקובץ ה-dump, אבל ב-datapump, הוא מייצג בפורמט מסמך XML.
• ל-Datapump יש ביצוע מקביל אבל בביצוע זרם יחיד של exp/imp.
• Datapump לא תומכת במדיה רציפה כמו קלטות, אבל תומך בייצוא מסורתי.