بتاريخ: 17 يونيو 200817 سنة comment_131413 السلام عليكم ورحمة الله وبركاتهلاحظت اثناء مرورى على هذا المنتدى الرائع وغيره من المنتديات كثرة الاسئلة عن النسخ الإحتياطى والإسترجاع (Backup & Recovery ) ، فأحدهم يسأل كيف يقوم بعمل نسخ إحتياطى حتى يحمى قاعدة بياناته من الفقدان ولعمرى إن هذا لهو عين العقل ، واخر يسأل كيف سيترجع قاعدة بياناته بعد عطل مفاجئ تعذر بعده فتح قاعدة البيانات ، واّخر واّخر واّخر .ولا تنتهى الاسئلة فى هذا الموضوع الهام ، لذا رأيت أن اساهم فى هذا الجانب.منهجى فى هذا الموضوع التبسيط فى طرح المادة العلمية ؛ إذ الموضوع ليس من البساطة بمكان ،وكذلك ملازمة الجانب العملى لترسخ المعلومة بأكثر من جانب.. تقديم بلاغ
بتاريخ: 17 يونيو 200817 سنة comment_131418 استاذ الباشا ماشاء الله على مواضيعك الهامة ياريت نلاقى شرح كامل لانواع النسخ الاحتياطى والاسترجاع تقديم بلاغ
بتاريخ: 17 يونيو 200817 سنة comment_131427 ربنا يزيدك علما نافع و تفيد به اخوانكنحن معك اخي تقديم بلاغ
بتاريخ: 18 يونيو 200817 سنة comment_131489 السلام عليكمهذا الموضوع هام جدا ( ممتاز )- ربنا يوفقك الى عمل الخير - يا أمة الامر بالمعروف و النهى عن المنكر - اللهم لك الحمد على نعمة الاسلام وكفى بها نعمةجزاك الله خيرا أخى الفاضل تقديم بلاغ
بتاريخ: 18 يونيو 200817 سنة comment_131490 الله يجزيك الخير اخى على ما تفعله والله فعلا موضوع مهم ويستحق التثبيتانا عن نفسى تعلمت منك الكثير بارك الله فيك تقديم بلاغ
بتاريخ: 19 يونيو 200817 سنة كاتب الموضوع comment_131574 Backup-1هو بإختصار عمل نسخة احتياطية لقاعدة البيانات كلياً او جزئياً تحسباً لعطل قد يحدث لقاعدة البيانات أو لاسباب اخرى ؛ مثلاً قد نحتاج للرجوع بقاعدة البيانات للوراء لغرض المراجعة.واوركل تدعم عدد من انواع النسخ الاحتياطى Logical Backup-1.1احسنت شركة اوركل إذ دعمت هذا النوع من النسخ الإحتياطى والإسترجاع Logical Backup & Recovery فهو اسهل الانواع واسرعها على الاطلاق .وتأتى كلمة منطقى Logical من كون أن الكائنات التى يتم تصديرها بهذه الطريقة لا يمكن التعامل معها فيزيائياً عن على مستوى نظام النشغيل فمن المستحيل التعامل مع كائنات مثل الجداول Tables والمناظير Views وغيرها من الكائنات على مستوى نظام التشغيل .سنناقش فى هذا الفصل كل من :-1- Use Export Utilities to Export Data 2- Use Import Utilities to Import Data3- Use Data Pump to Export Data4- Use Data Pump to Import Data1- Use Export Utilities to Export Data: دعم اوركل لهذا النوع من التصدير ليس حديثاً ولكن ما زال هذا النوع من النسخ الإحتياطى متاحاً فى الإصدار Oracle10g ، بحيث نستطيع من خلاله تصدير:1- بيانات مستخدم لاخر فى نفس قاعدة البيانات.2- قاعدة بيانات لاخرى.3- اصدار الى اخر.ومن الخيارات المتاحة فى هذا النوع من النسخ الإحتياطى:1- تصدير جداول معينة.2- تصدير بيانات مستخدم.3- نصدير قاعدة البيانات بأكملها مع مراعاة الاتى:- 1- لا يتم تصدير الBase Tables . 2- لا يتم تصدير الTemporary Tablespace. 3- لا يتم تصدير الUndo Segment. 4- لا يتم تصدير الPhysiacl File مثل (Control files & Redo Log Files).ومن الخيارات المتاحة ايضاً اثناء عملية التصدير:-1- Rows= [Y||N]: هذا الخيار يعنى هل تريد تصدير الجدول كهيكلة دون بيانات أم انك تريد تصدير البيانات معه ، الاصل هو الخيار Y بمعنى تصدير الهيكل والبيانات.2- Indexes= [Y||N]: هل نقوم بتصدير المراجع التابعة للجداول اثناء تصدير الجداول أم لا ، الاصل Y.3- Grants= [Y||N]: هل ترغب فى تصدير الصلاحيات ايضاً عند تصدير الكائنات والمستخدمين ، الاصل Y.4- File: لتحديد مكان إنشاء الملف الذى يحوى البيانات المصدرة.5- Log: لتحديد مكان إنشاء الملف الLog File الذى سيحوى معلومات عن عملية التصدير.6- Constraints= [Y||N]: هل ترغب فى تصدير القيود Constraints اثناء تصدير الجداول.7- Buffer=256k هنا نحدد حجم الBuffer ، الاصل 256k.8- Tables: لتحديد الجداول التى اريد تصديرها.9- Inctype=[incremental||Cumulative||Complete]: لتحديد نوع التصدير:- أ - Complete: لتصدير جميع البيانات.ب- Incremental : النسخة التزايدية وهى تعنى عمل تصدير للبيانات التى تغيرت بعد اخر عملية تصدير.ج- Cumulative : النسخة التراكمية وهى تعنى عمل تصدير للبيانات التى تغيرت بعد اخر عملية تصدير تراكمية (Cumulative) أو تكاملية (Complete).10- Owner: إسم المستخدم الذى نريد عمل تصدير لبياناته.11- Triggers= [Y||N]: هل ترغب فى تصدير الTrigger أثناء عملية التصدير ، الاصل هو الخيار Y.12- Filesize: لتحديد اقصى حجم لمف الDump File.وعموماً يمكن مراجعة خيارات التصدير بواسطة EXP HELP=Yعملية التصدير تتم من خلال Export Utilities بحيث يتم الاتصال بقاعدة البيانات عن طريق الServer Process ومن ثم عمل Select Statements للبيانات المطلوبة ومن ثم يقوم بعمل تمرير للبيانات عن طريق الServer Process إلى Export User Process.بالمناسبة يمكن تجاهل الاجراءات اعلاه بواسطة الخيار( Dirct=y (Dirct-path بحيث يتم قراءة البيانات من الديسك الى الBuffer Cach ومن ثم ارجاع البيانات الى Export Client ، هذه الطريقة تحسن الاداء. تقديم بلاغ
بتاريخ: 22 يونيو 200817 سنة كاتب الموضوع comment_131766 TABLES EXPORTيستطيع المستخدم تصدير الجداول التى يملكها وكذلك يستطيع مدير قاعدة البيانات او من يملك الصلاحية EXP_FULL_DATABASE تصدير جداول مستخدم اخر ، اما بدون هذه الصلاحية فلا يستطيع تصدير جدول لا يملكه.A- كيف يصًدر المستخدم VBS الجدول EMPLOYEE الذى يملكه.يمكن صياغة امر التصدير اعلاه بالطريقة التاليةاختلفت الصياغة ولكن النتيجة واحدة ، لذا فمن الافضل عدم كتابة الخيارات إلا إذا اردنا أن نستعملها فى غيرها وضعها الاصلى ، على سبيل المثال لو اردنا ان نصدر الجدول بما فيه القيود Constraints فمن الافضل عدم كتابة الخيار Constraints=Y وذلك لأنك إذا لم تكتبه صراحة فإن الصيغة تحتويه ضمنياً ، أما إذا لم ترغب فى تصدير القيود مع الجدول فالواجب كتابة الخيار Constraints=N فى صياغة امر التصدير. وهكذا بقية الخيارات.ولنفترض الان ان المستخدم VBS يرغب فى تصدير الجدول EMPLOYEE الذى يمتكله ولكن دون بيانات.لاحظ معى الخيار ROWS=NB- كيف يصدر مدير قاعدة البيانات او من يملك الصلاحية EXP_FULL_DATABASE الجدول Employee المملوك للمستخدم VBS.لاحظ معى اسم الجدول مسبوقاً بمن يمتلكه.ملاحـــــظة : المستخدم الذى لا يملك الصلاحية EXP_FULL_DATABASE لا يستطيع تصدير جدول لا يمتلكه.الان لو حاول المستخدم PENAT تصدير الجدول EMPLOYEE المملوك للمستخدم VBS مع العلم أن المستخدم PENTA لا يملك هذه الصلاحية. فماذا تتوقع أن تكون النتيجة؟ النتيجة هى EXP-00009: no privilege to export VBS's table EMPLOYEE ليس لديك هذه الصلاحية لذا فشلت عملية التصدير. تقديم بلاغ
بتاريخ: 22 يونيو 200817 سنة comment_131776 الله عليك يا باشا وانت رائع فعلاًلكن لدي بعض الاستفسارت على موضوعك اتمنى ان تجيبني عليهاالاول : لم اميز الفرق بين Incremental و Cumulative بالتحديدالثاني : يا ريت لو توضح النقطة (يمكن تجاهل الاجراءات اعلاه بواسطة الخيار( Dirct=y (Dirct-path بحيث يتم قراءة البيانات من الديسك الى الBuffer Cach ومن ثم ارجاع البيانات الى Export Client ، هذه الطريقة تحسن الاداء).والى الامام ان شاء الله ويارت لو تستمر بهذا الاسلوب الى النهاية. تقديم بلاغ
بتاريخ: 22 يونيو 200817 سنة كاتب الموضوع comment_131782 العزيز omar-alreyati بالنسبة لموضوع ال Incremental و Cumulative ، لحظة عمل CUMULATIVE EXOPRT يتم الرجوع لاخر EXPORT من النوع (COMPLETE OR CUMULATIVE) ثم بعد ذلك يتم تصدير التعديلات التى حدثت على الكائنات منذ ذلك التصدير.أما بالنسبة INCREMENTAL فيتم الرجوع لاخر EXPORT من النوع COMPLETE OR CUMULATIVE OR INCREMENTAL ثم يتم تصدير التعديلات التى حدثت على الكائنات منذ ذلك التصدير.Cumulative export will export all changed objects since the last complete' or 'cumulative' exportIncremental export will export all changed objects since the last'complete', 'cumulative' or 'incremental' exports.For example, here is the export scheme for a mock company: 1. Complete export on the first day of the month. 2. Cumulative exports every Sunday. 3. Incremental exports every day.أما بالنسبة لموضوع Dirct-path فان هذا الخيار يمكن استعماله لتجاهل عملية الSelect Statements التى تحدث للبيانات المطلوب تصديرها ، فيتم تجاهل عملية ال Select Statements ,فيتم جلب البيانات الى الBuffer مباشرة. تقديم بلاغ
بتاريخ: 23 يونيو 200817 سنة comment_131819 السلام عليكماخي الكريمارجو وضع الشرح في ملف ورد او pdf حيث الصور لا تظهر في المنتدى لكون الصور محملة على موقع خارجي تقديم بلاغ
بتاريخ: 23 يونيو 200817 سنة كاتب الموضوع comment_131854 مواصلة للTables Export.لنفترض الان أن المستخدم VBS يريد أن يصدر الجدول EMPLOYEE الذى يمتلكه ولكن يريد أن يصدر البيانات بشرط معين مثلاً WHERE EMP_NO=2 ، هنا نستخدم الخيار Query.SCHEMAS EXPORT: وهى تصدير لجميع الكائنات الموجودة فى schema معينة أو مجموعة schemas بحيث لا يتستطيع مستخدم تصدير schema اخرى ما لم يكن لديه الصلاحية FULL_EXP_DATABASE ، والSCHEMA هى ببساطة مجوعة الكائنات التى تنتمى لمستخدم معين.A- كيف يصدر مدير قاعدة البيانات او من يملك الصلاحية EXP_FULL_DATABASE كائنات المستخدم VBS او VBS SCHEMA.لاحظ معى أنه اثناء تصدير VBS SCHEMA تم تصدير الTriggers والIndesxs وكذلك بيانات الجداول ، ولكن يمكن تجاهل ذلك بواسطة الخيارات TRIGGERS=N & INDEXES=N & ROWS=N. وكذلك اخترنا الخيار OWNER لتحديد الSCHEMA التى نريد تصديرها ، بالطبع يمكن تحديد اكثر من SCHEMA فى العملية الواحدة.B- كيف يستطيع المستخدم VBS تصدير الVBS SCHEMA او بمعنى اخر كيف يصدر المستخدم VBS الكائنات التى يملكها.لاحظ معى هنا لا نلجأ للخيار OWNER وذلك لأن المستخدم VBS هنا يريد أن يصدر الكائنات التى يملكها.لا يستطيع اى مستخدم لا يملك الصلاحية EXP_FULL_DATABASE من تصدير اى SCHEMA اخرى. تقديم بلاغ
بتاريخ: 24 يونيو 200817 سنة كاتب الموضوع comment_131924 TABLESPACE EXPORT: هل يمكن تصدير Tablespace من قاعدة بيانات الى اخرى ؟ اللهم نعم ، ولنفترض الان أن لدينا قاعدة بيانات تسمى ORCL تحتوى على Tablespace يسمى TEST نريد أن ننقله الى قاعدة البيانات الاخرى والتى تسمى OBAY.الخطوات:-1- وضع TEST TABLESPACE فى الوضع READ ONLY 2- تصدير المعلومات الخاصة بالTEST TABLESPACE وهى (Metadata) بواسطة الخيار TRANSPORT_TABLESPACE=Y3- عن طريق نظام التشغيل نقوم بعمل نسخ لملف او ملفات الDatafiles التى تنتمى للTEST Tablespace وهى هنا ملف واحد يسمى TEST.DBF من قاعدة البيانات ORCL الى المسار الجديد لقاعدة البيانات OBAY وذلك لان عملية التصدير لا تصدر ملفات الDatafiles.4- نقوم بعمل استيراد للبيانات التى صدرناها سابقاً.5- يمكن ارجاع TEST TABLESPACE بقاعدة البيانات ORCL الى الوضع READ WRITE كما يمكن الإستعلام عن الTEST TABLESPACE فى قاعدة البيانات OBAY للتأكد من استيراده.مرحب تقديم بلاغ
بتاريخ: 26 يونيو 200817 سنة كاتب الموضوع comment_132081 DATABASE EXPORTويسمى ايضاً FULL EXPORT والمقصود به عمل تصدير لكل قاعدة البيانات ويحتاج هذا النوع من التصدير للصلاحية EXP_FULL_DATABASE. وفى هذا النوع من التصدير يمكن تطبيق الخيار INCTYPE.هكذا قمنا بعمل تصدير لقاعدة البيانات باستخدام الخيار COMPLETE ، الان يمكن اإنشاء نسخة تراكمية او تزايدية (Cumulative & Incremental) لقاعدة البيانات. ، ومتابعة ذلك بواسطة DBA_EXP_FILES.لنقم الان بعمل نسخة تراكمية لقاعدة البيانات.للاستعلام تقديم بلاغ
بتاريخ: 20 يوليو 200817 سنة كاتب الموضوع comment_133650 السلام عليكماعتذر للجميع ، ولكن سوف يُضمن هذا الموضوع فى الجزء الثانى من الكتاب العربى لإدارة قاعدة البيانات.والذى سوف يخرج قريباً إن شاء الله. تقديم بلاغ
بتاريخ: 31 أغسطس 200817 سنة comment_137661 السلام عليكماهنئك يا اخي علي الطريقة الجميلة والسهلة جدا جدا لعرض الشرحوجزاك الله خيرا ولكن بعد ان رأينا قطر علمك... فلا تحرمنا من مطرهوكان عندي استفساربعد عمل complete backup وتخزينه في ملف اسمه مثلا db.dmpعند عمل cumulative او incremental backup يتم تخزينه علي نفس الملف او علي ملف اخروماذا يحدث عند استعادة البياناتنرجو ان تكمل باقي الشرح سريعا لاننا في شوق الي شرحكشكرا............ تقديم بلاغ
بتاريخ: 2 سبتمبر 200817 سنة كاتب الموضوع comment_137791 الاخ mohammedsabry يتم التخزين فى ملفات مختلفة ، ويتم استرجاع البيانات على عدة خطوات بحيث يتم استرجاع كل ملف على حدى.عموماً سوف افصل فى الموضوع لاحقاً.لكن تقبل منى هذا المرور السريع واسألك الدعاء. تقديم بلاغ
بتاريخ: 2 سبتمبر 200817 سنة comment_137797 السلام عليكم ورحمة اللهمشكور يا اخي الباشا علي الرد ... واشكرك علي ابداعك في شرحك والي الامامولكني قرأت طريقة عمل التصدير للبيانات وعجبتني جدا وعملت فعلا نسخة كاملة ونسخة تراكمية ونسخ تزايديةانا عرفت اعمل لهم تصدير بس مش عارف اعمل لهم استيرادياريت لو الكود بس ........ اصل انا اعرف انه لازم الاول اعمل استيراد للتصدير الكامل ثم بعد ذلك التراكمي ثم التزايديانا اعرف الكلام لكن مش عارف الكودياريت الكود ...مش مشكلة الشرح بالتفصيل الكود فقط مؤقتاشكرا تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.