الخطوط العريضة
كان هذا الجزء قد احتياطيا أو هاجروا بنجاح على أساس البيانات التي تم القيام به في الجبهة منا قد فعلت ذلك لأكثر من مليون مستوى الهجرة مساحة الجدول الجدول، وبيانات متسقة مع الاختيار، وفيما يلي لإزالة مكتبة المصدر الرئيسي البيانات الموجودة عليها.
1، حذف مكتبة مصدر البيانات
1.1 الإجراء المخزن الحذف
لأن هناك قائمة من مئات الملايين، وإذا حذف مباشرة مساحة UNDO يخشون انفجار، لذلك كتب إجراء مخزن لحذف دورة، على النحو التالي:
إنشاء t_jindu الجدول (الباحث الهوية، واسم VARCHAR2 (60)، وخلاصة القول كثافة العمليات)؛ تعلن ط كثافة العمليات؛ - تعريف المتغيرات الباحث v_count؛ - تعريف المتغيرات v_loop كثافة العمليات. - تعريف المتغيرات بدأ تحديد عدد (*) في v_count من TAB_SP_OTMSHIPMENT حيث insert_time < = TO_DATE ( '2018063000:00:00'، 'HH24 YYYYMMDD: ميل: SS')؛ - جدول حساب حدد سقف (v_count / 5000) إلى v_loop من المزدوجة؛ - حساب عدد دورات مطلوبة الأول: = 1؛ - يتم تعيين ط بينما كنت < = V_loop حلقة - شروط خروج حلقة حذف من TAB_SP_OTMSHIPMENT حيث insert_time < = TO_DATE ( '2018063000:00:00'، 'HH24 YYYYMMDD: ميل: SS') وROWNUM < 5000؛ تضاف الى القيم t_jindu (ط، "TAB_SP_OTMSHIPMENT، v_loop)؛ - عدد من جدول السجلات المحذوفة ارتكاب؛ - تقديم الأول: = ط + 1؛ وأضاف --i بالتسلسل 1 في نهاية الحلقة. استثناء عند الآخرين THEN التراجع؛ - هناك مشاكل التراجع ينتهي. /لأن إزالة فترة طويلة نسبيا، لذلك سيتم تسجيلها في كل مرة لحذف جدول داخل، حتى تحقق مباشرة إلى الجدول لمعرفة التقدم للحذف حاليا، وهذا الأسلوب هو الأكثر أمانا، سوف الأساسية لا سبب لها تأثير كبير على النظام الحالي. ولكن في بيئة اختبار لاختبار حذف جدول من مليون حذف كامل خمسة أيام وخمس ليال لا حذف الانتهاء، لذلك أنا تخلى في نهاية المطاف ~
1.2 حذف درجة افتتاح التوازي
اتبع من الصغيرة الى كمية كبيرة من البيانات الحذف وحذف ويستمر بعد ذلك حذف مبدأ التحقق الأعمال.
مراقبة استخدام UNDO جدولية (الذي هو المثال لوحظ متصل، وبعد ذلك ننظر في UNDO المكاني المقابلة يفترض UDNOTBS1 باستخدام مساحة أكبر، فمن الضروري للاتصال سبيل المثال RFDB2، التراجع الاستفادة الكاملة من الفضاء)، حيث أرشيف الفضاء (على الرغم من أن nologging لكن لا تزال هناك أرشفة يحدث التبديل سجل، لاحظ) وتحميل خادم قاعدة البيانات والتنبيه السجلات.
الأمر delete كما يلي:
المذبح nologging الجدول TABRECEIVING_LINE. حذف / * + بالتوازي (ر 6) * / من ر TABRECEIVING_LINE حيث insert_time < = TO_DATE ( '2018063000:00:00'، 'HH24 YYYYMMDD: ميل: SS')؛ الالتزام. ألتر تسجيل الجدول TABRECEIVING_LINE.مائة مليون من 70 مليون السجلات إلى الجدول حذف
2، وإعادة التدوير ارتفاع المياه وجمع المعلومات الإحصائية
هنا، على كل طاولة كبيرة، بعد حذف كميات كبيرة من البيانات، هو مطلوب منها لتنفيذ استرداد كميات كبيرة من المياه وجمع المعلومات الإحصائية.
2.1 إعادة تدوير المياه عالية
التي تنطوي على الأمر التالي:
my_objects طاولة المذبح nologging. تمكين my_objects طاولة المذبح حركة التوالي، my_objects طاولة المذبح تقليص الفضاء؛ my_objects طاولة المذبح تسجيل.أنفق مائة مليون تقليص جدول تسع ساعات
2.2 والإحصاءات جمع
التي تنطوي على الأمر التالي:
تحليل الجدول بواسطة my_objects COMPUTE إحصائيات.3، والقائمة الانتاج
قائمة قياسية هي على النحو التالي:
قاعدة بيانات كبيرة من البيانات التاريخية لتنظيف هذا الجدول المحتويات على مقدمة هذا، وسوف تتقاسم المزيد من المحتوى وراء devops والجوانب DBA، والأصدقاء المهتمين يمكن أن تركز القادم!