نشر بواسطة : Obay Salah , November 19, 2024

إذا عملية كتابة أكثر من مستخدم في حقل معين في نفس الوقت لا تسمح بها قاعدة البيانات وذلك من خلال تطبيق سياسة الLock،

لكن بعض المبرمجين والمصممين يتسببون في زيادة عمليات الLock من خلال بعض التطبيقات الخاطئة الأمر الذي ينعكس سلبًا على

أداة قاعدة البيانات، مما يتطلب ذلك إعادة هندسة العمليات لتعمل بكفاءة عالية ولكن ذلك بالطبع لا يلغي عملية الLock التي هي جزء

من سياسة قاعدة البيانات، ولكن يقلل من عملية الLock التي هي نتيجة خطأ في عملية التطوير أو التصميم، ومن تلك المشاكل:

1- العمليات التي تأخذ وقت طويل بالطبع تتسبب في خلق مشاكل الLock، بحيث يقوم بعض المستخدمين بإجراء عدد من العمليات ثم يذهبون

ليصلوا أو لقضاء بعض المهام دون تثبيت تلك العمليات أو التراجع عنها لا شك أن ذلك يسبب العديد من المشاكل التي يجب تجنبها في تصميم

البرامج، فمثل هذه الأخطاء في كتابة البرامج تسبب العديد من المشاكل لمدير قاعدة البيانات.

2- استخدام مستوى الأقفال العالي (Locking Levels) High، فبعض العمليات تحتاج مثلاً لعمل Lock لحقل معين فيتم عمل Lock لجميع الجداول الأمر

الذي يمنع بعض العمليات الأخرى التي كان يمكن تنفيذها أثناء تنفيذ العملية التي قامت بقفل جميع الجداول.

3- كتابة بعض البرامج التي تقوم بعمل مهام معينة بصورة سيئة، هذا الأمر يؤثر على الأداء بصورة واضحة.

لكن إذا قامت Session بعمل Lock لحقل أو جدول معين ثم قامت Session أخرى بطلب الكتابة على نفس الحقل لا شك أن هذه الـSession ستظل معلقة

وربما يطول الأمر نسبة لتخطيط سيء، عمومًا في الحالات الطارئة يمكن لمدير قاعدة البيانات بالتدخل لعلاج هذا الأمر عن طريق إنهاء تلك الـSession.

فلحظة إنهاء تلك الـSession التي تحجز الجدول أو الحقل وتسببت في تلك المشاكل يتم إطلاق الـLock وتُحل المشكلة.

ويمكن لمدير قاعدة البيانات حل تلك الكشكلة عن طريق الأمر ALTER SYSTEM KILL SESSION بحث تحتاج لتحديد (SERIAL# & SID) بالنسبة للـSession

ويتم ذلك عن طريق استعلام V$SESSION.


علامات : Database

يمكن ان يعجبك ايضا


Comments

لايوجد تعليق حتى الان