
مقدمه: چرا در اوراکل دامپ و بکاپ بگیریم؟
در پایگاه داده اوراکل، دو مفهوم Backup و Dump بسیار رایج هستند، اما تفاوتهای اساسی با هم دارند.
اگر قصد بازیابی پایگاه داده، مهاجرت دادهها یا ایجاد نسخه پشتیبان را دارید، باید بدانید که از کدام روش استفاده کنید.
همچنین، ممکن است با واژه DMP نیز برخورد کنید و ندانید که تفاوت آن با Dump چیست.
در این مقاله آموزش پایگاه داده اوراکل، بهصورت جامع و کاملاً خوانا، تفاوتهای این روشها را توضیح میدهیم
اگر می خواهید در مورد نصب اوراکل روی لینوکس آشنا بشید نوشته زیر را مطالعه کنید:
در این نوشته شما می خوانید
بکاپ (Backup) در اوراکل چیست؟
تعریف بکاپ در اوراکل
بکاپ (Backup) به فرآیند گرفتن یک نسخه کپی از تمام دادههای پایگاه داده گفته میشود تا در صورت بروز خرابی، حذف تصادفی یا مشکلات دیگر، امکان بازیابی اطلاعات فراهم باشد.
روشهای بکاپگیری در اوراکل
اوراکل چندین روش برای گرفتن بکاپ ارائه میدهد که مهمترین آنها عبارتند از:
- ابزار رسمی اوراکل برای بکاپ و بازیابی
- قابلیت بازیابی نقطهای (Point-in-Time Recovery)
- امکان بکاپگیری افزایشی (Incremental Backup)
- امکان بازیابی روی سرورهای دیگر
بکاپ فیزیکی (Physical Backup)
- شامل کپی مستقیم فایلهای پایگاه داده
- برای بازیابی کل سیستم مفید است.
Archived Redo Logs
- امکان برگرداندن پایگاه داده به لحظهای خاص را فراهم میکند.
- برای سناریوهای بازیابی بسیار حیاتی است.
دامپ (Dump) در اوراکل چیست؟
تعریف دامپ در اوراکل
دامپ (Dump) فرآیند استخراج دادهها و ساختارهای جداول پایگاه داده و ذخیره آنها در یک فایل قابل انتقال است.
دامپ بیشتر برای انتقال دادهها بین سرورها استفاده میشود.
ابزارهای استخراج دامپ در اوراکل
دو ابزار رایج برای گرفتن دامپ در اوراکل وجود دارد:
Data Pump (expdp/impdp)
- روش سریعتر و پیشرفتهتر نسبت به Export/Import
- امکان استخراج دادهها و متادیتا
- قابلیت فیلتر کردن جداول خاص برای استخراج
- خروجی به فرمت .DMP
Export/Import (exp/imp)
- روش قدیمیتر برای استخراج دادهها
- نسبت به Data Pump سرعت کمتری دارد.
- همچنان در برخی موارد استفاده میشود.
تفاوت بین بکاپ و دامپ در اوراکل
ویژگی | Backup (بکاپ) | Dump (دامپ) |
---|---|---|
ابزار | RMAN | Data Pump (expdp/impdp) یا Export/Import (exp/imp) |
نوع داده | فیزیکی (Physical) | منطقی (Logical) |
استفاده | بازیابی پایگاه داده در مواقع خرابی | انتقال داده بین محیطهای مختلف |
سرعت | سریعتر (به دلیل کپی مستقیم فایلها) | کندتر (به دلیل استخراج دادهها) |
امکان بازیابی نقطهای | دارد | ندارد |
انتقال بین نسخههای مختلف اوراکل | سختتر | راحتتر |
فرق بین Dump و DMP چیست؟
Dump چیست؟
Dump به فرآیند استخراج دادهها از پایگاه داده اوراکل گفته میشود.
این فرآیند میتواند شامل دادهها، متادیتا و ساختار جداول باشد.
DMP چیست؟
DMP یک پسوند فایل است که از فرآیند Dump تولید میشود.
یعنی وقتی دادهها را از طریق Data Pump (expdp) استخراج میکنید، خروجی یک فایل DMP. خواهد بود که میتوان آن را با impdp دوباره وارد (Import) کرد.
تفاوت Dump و DMP در یک نگاه
ویژگی | Dump | DMP |
---|---|---|
مفهوم | فرآیند استخراج داده از اوراکل | فایل خروجی که از فرآیند Dump بهدست میآید |
ابزار | Data Pump (expdp/impdp) یا Export/Import | خروجی نهایی فرآیند Dump |
فرمت | عمومیتر و شامل متادیتا و دادهها | یک فایل باینری با پسوند .DMP |
کدام روش برای شما مناسبتر است؟
- اگر هدف شما بازیابی اطلاعات در مواقع خرابی است:
RMAN Backup بهترین گزینه است. - اگر میخواهید دادهها را بین دو سرور جابهجا کنید:
Data Pump (expdp/impdp) را استفاده کنید. - اگر قصد مهاجرت به نسخه جدید اوراکل دارید:
Dump (expdp/impdp) مناسبتر از بکاپ است.
سوالات متداول درباره Dump و Backup و تفاوت آن
بکاپ (Backup) نسخهای از دادهها را برای بازیابی در شرایط خرابی نگه میدارد و توسط RMAN انجام میشود، در حالی که دامپ (Dump) برای انتقال دادهها بین پایگاههای داده استفاده میشود و خروجی آن فایل DMP. است که با Data Pump (expdp/impdp) تولید میشود.
Data Pump (expdp/impdp) یک ابزار داخلی اوراکل است که برای استخراج و وارد کردن دادهها به پایگاه داده استفاده میشود.
این روش سریعتر و کارآمدتر از ابزار Export/Import (exp/imp) قدیمی است و برای مهاجرت دادهها بین سرورها ایدهآل است.
RMAN (Recovery Manager) ابزار رسمی اوراکل برای بکاپگیری و بازیابی پایگاه داده است.
RMAN بکاپهای فیزیکی و افزایشی ایجاد میکند و برای بازیابی دادهها پس از خرابی سیستم استفاده میشود.
در مقابل، Data Pump دادهها را بهصورت منطقی استخراج کرده و برای انتقال بین سرورها استفاده میشود.
Dump به فرآیند استخراج دادهها از پایگاه داده گفته میشود، اما DMP یک پسوند فایل باینری است که توسط Data Pump تولید میشود.
این فایل را میتوان با ابزار impdp (Import Data Pump) دوباره به پایگاه داده وارد کرد.
برای گرفتن بکاپ در اوراکل با RMAN، میتوانید از دستور زیر استفاده کنید:
RMAN> BACKUP DATABASE FORMAT ‘/backup/oracle_%U.bak’;
این دستور یک بکاپ کامل از پایگاه داده ایجاد میکند. همچنین میتوان بکاپهای افزایشی (Incremental Backup) را با این دستور گرفت:
RMAN> BACKUP INCREMENTAL LEVEL 1 DATABASE;
برای گرفتن دامپ از پایگاه داده اوراکل، دستور زیر را اجرا کنید:
expdp system/password directory=DATA_PUMP_DIR dumpfile=mydump.dmp logfile=mydump.log schemas=my_schema
- directory=DATA_PUMP_DIR → مسیر ذخیره فایل
- dumpfile=mydump.dmp → نام فایل دامپ
- schemas=my_schema → تعیین اسکیمای موردنظر
بله، اما باید توجه داشت که نسخه اوراکل مقصد نباید قدیمیتر از نسخهای باشد که فایل DMP در آن ایجاد شده است.
برای وارد کردن دامپ (Import) در اوراکل از دستور زیر استفاده کنید:
impdp system/password directory=DATA_PUMP_DIR dumpfile=mydump.dmp logfile=myimport.log remap_schema=old_schema:new_schema
با استفاده از remap_schema میتوان نام اسکیمای دادههای وارد شده را تغییر داد.
نتیجهگیری
- بکاپ برای بازیابی اطلاعات در شرایط خرابی استفاده میشود و شامل دادههای فیزیکی است.
- دامپ برای استخراج دادهها و انتقال به سرورهای دیگر استفاده میشود.
- Dump به فرآیند استخراج دادهها اشاره دارد، اما DMP همان فایل خروجی است.
دیدگاهتان را بنویسید