ماذا يحدث لتسلسل أوراكل بعد التعافي من الكوارث؟

StackOverflow https://stackoverflow.com/questions/373914

  •  22-08-2019
  •  | 
  •  

سؤال

وافترض مثيل أوراكل لابد من استردادها بعد وقوع الكارثة. هل تسلسل الحصول على إعادة تعيين إلى الحالة الأولية، أو الدولة حفظه الماضية، أو يتم مؤقتا القيم الحفاظ عليها؟

وشكرا جزيلا لكم. : -)

هل كانت مفيدة؟

المحلول

ويتم تخزين القيم sequnce في SYSTEM.SEQ $ (على ما أظن) الطاولة، ويتم الحفاظ على مخبأ في الذاكرة من القيم التالية التي سيتم استخدامها، مع حجم هذا المخبأ كونها تعتمد على قيمة CACHE لتسلسل .

وعندما يتم استنفاد ذاكرة التخزين المؤقت SEQ يتم تحديث الجدول إلى قيمة جديدة $ (بطريقة غير متناسقة - أي دون تطبيق الرقابة transacton الدورة المستخدم) ويقول بجانب 100 القيم (إذا CACHE = 100) هم قراءة من الذاكرة.

ودعونا نفترض أن كنت تستخدم التسلسل مع حجم ذاكرة التخزين المؤقت من 20. عند تحديد قيمة معينة من تسلسل، ويقول 1400، يتم تحديث الجدول SEQ $ إلى قيمة 1420. وحتى لو كنت التراجع عن معاملتك وSEQ $ لا يزال لديه تلك القيمة حتى يتم استخدام 20 قيم تسلسل المقبلة، في الوقت الذي يتم تحديثها SEQ $ إلى 1440. إذا كنت قد استخدمت بعد ذلك فقط قيمة 1423 ويحدث حادث تحطم سبيل المثال، ثم عند إعادة تشغيل النظام القيمة التالية ل أن تقرأ من sequnce سيكون 1440.

وهكذا، نعم سيتم الحفاظ على سلامة التسلسل والأرقام لن يتم "إعادة إصدارها". لاحظ أن الأمر نفسه ينطبق على اغلاق رشيقة - عند إعادة تشغيل ستحصل على قيمة جديدة من 1440 في المثال أعلاه. ليست مضمونة متواليات لتكون الفجوة الحرة في الممارسة لهذا السبب (أيضا بسبب استخدام قيمة ومن ثم التراجع لا استعادة هذه القيمة إلى ذاكرة التخزين المؤقت).

نصائح أخرى

وليس لدي أي خبرة في هذا، ولكن أفترض كثيرا في أن الانتعاش إلى تغيير نظام الدولة رقم متسقة من شأنه أيضا أن يعود تسلسل للدولة حفظها الماضية. أي شيء آخر سيكون غير مجدية إلى حد ما من حيث الانتعاش.

وأما عن القيم المخزنة مؤقتا، وتلك هي (يمكن أن يكون) فقدت حتى عند إيقاف تشغيل المثال الهبوط بطريقة منظمة (*): حالات مخبأ عدد من القيم تسلسل في الذاكرة (SGA) بدلا من الذهاب إلى قاعدة البيانات في كل مرة. تسلسل غير المستخدمة تقدر أن مثيل وقد احتفظت يمكن أن "تختفي"، ويترك لك مع وجود ثغرات في التسلسل.

و(*) الوثائق 8I يذكر أن هذا يمكن أن يحدث مع الحالات موازية (RAC)، وفي هذه الحالة التسلسل قد لا تكون حتى الصعود بدقة (ولكن لا يزال فريد)، وتقول مستندات 10G أنه يحدث في حالة فشل سبيل المثال.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top