Oracle Database Architecture
نشر بواسطة : Obay Salah , November 18, 2024
وهو الجزء الثاني من مكونات قاعدة بيانات اوركال:
Oracle Database Server = Oracle Instance + Oracle Database
يحتوي هذا القسم على مجموعة من الملفات:
-: Control files -1
هو الملف المسئول عن المزامنة في قاعدة البيانات بالإضافة إلى احتوائه على معلومات أساسية عن قاعدة البيانات مثل اسم قاعدة البيانات وبخلافه لا تعمل قاعدة البيانات حيث يحتوي على مسارات ملفات قاعدة البيانات وإذا قمت بإضافة ملف إلى قاعدة البيانات يتم تحديث ال control file الياً.
-:Redo log files -2
يستخدم هذا الملف لاستعادة قاعدة البيانات (Recover) في حالة حدوث مشكلة، حيث يقوم بحفظ التغييرات التي تحدث في قاعدة البيانات.
-: Database files -3
هو المخزن الحقيقي للبيانات في قاعدة البيانات، أي أنه يحتوي على الجداول، Indexes & Views &Tables ، وغيرها من الكائنات.
-: Archived redo log files -4
وهو عبارة عن نسخة من الRedo log files ونحتاجه أيضاً عند عمل استرجاع لقاعدة البيانات .(Recover)
5- الملفات اخرى-:
- Parameter file:
يتم استخدامه لتهيئة ﺍلInstance Oracle في لحظة تشغيله، ويحتوي على جميع المتغيرات الخاصة بتهيئة قاعدة البيانات.
- Password file:
يسمح هذا الملف للمستخدمين بالاتصال بقاعدة البيانات عن بعد كمسؤولي قاعدة البيانات.
Tablespace and Data File: -
هنا يجب أن نلاحظ أن قاعدة البيانات يمكن تقسيمها إلى Logical & Physical
Physical: يمكن التعامل مع هذا النوع سواء كانت قاعدة البيانات مفتوحة أو مغلقة بحيث يمكن التعامل معه من خلال نظام التشغيل أو من خلال قاعدة البيانات.
Logical: لا نستطيع التعامل مع هذا النوع إلا إذا كانت قاعدة البيانات مفتوحة
- :Tablespace and Data File
تنقسم قاعدة البيانات فعليا إلى ملفات تخزين يمكن لنظام التشغيل عرضها، وهي ملفات data files. كما تنقسم قاعدة البيانات إلى وحدات تخزين منطقية (logical)، وتسمى هذه الوحدات بـ Tablespace.
يوضح الشكل التقسيم المنطقي لقاعدة البيانات، حيث يتم تقسيم قاعدة البيانات إلى مجموعة من الوحدات المنطقية. ﺍلTablespace هي وحدة منطقية تحتوي على data file واحد أو أكثر، وكل data file ينتمي فعليًا إلى Tablespace واحدة فقط. يمكن إنشاء Bigfile Tablespaces بحيث تحتوي على data file واحد، ولكنها كبيرة جدًا بحيث
إنه أكبر من GB4. تتكون ﺍلTablespace من مجموعة من الوحدات المنطقية الأصغر حجمًا والتي تسمى Segments، وهي وحدات منطقية تشكل ﺍلTablespace، بحيث تنتمي Segment إلى لTablespace واحدة فقط، والتي تتكون من مجموعة من الوحدات المنطقية الأصغر حجمًا والتي تسمى Extents، وهي أيضًا وحدات منطقية.
ينتمي كل Extent إلى Segment واحد فقط، وتتكون ﺍلExtents أيضًا من مجموعة أصغر أخرى.
هي أصغر وحدة منطقية تسمى ﺍل.Blocks، وعند إنشاء قاعدة بيانات يتم تحديد حجم ﺍلBlock لقاعدة البيانات، ويمكن أن يكون حجم الكتلة 4 كيلوبايت أو 8 كيلوبايت أو غير ذلك، ويعتمد الحجم الأكبر ﻟلBlock على نظام التشغيل، فقبل إصدار Oracle 9i كانت قاعدة البيانات تعمل على حجم ﻟلBlock واحدة، وبدءًا من إصدار Oracle 9i أصبحت قاعدة البيانات قادرة على العمل على أحجام مختلفة من ﺍل.Blocks.
لنفترض أن الشكل يمثل Tablespace تسمى Users . تحتوي ﺍلTablespace هذه على ملفين
من data files (D1 وD2). تحتوي ﺍلTablespace هذه على مجموعة من المقاطع
)3&T 2&T 1(T يتم تقسيم المقطع الأول 1T إلى مجموعة من ﺍلExtents
كل Extent يتكون بالطبع من مجموعة من ﺍل Blocks. نلاحظ هنا أن ﺍلSegment T1 يمتد على كلا الملفين (D1 وD2)، مما يعني أن جزءًا من ﺍلSegment موجود في ملف D1 والجزء الآخر موجود في ملف 2D، ولكنه في نفس الوقت ينتمي إلى لTablespace واحدة.
اتبع هذا السيناريو لأنه يشرح خطوات إنشاء قاعدة البيانات:
1- الInstance تعمل على الخادم (server)
2- في هذه المرحلة يحاول المستخدم الاتصال بقاعدة البيانات عبر ﺍلApplication أو إحدى أدوات قاعدة البيانات.
3- في هذه اللحظة تم التحقق من طلب المستخدم وتم إنشاء الاتصال وتم تكوين Process.Server.
4- هنا يطلب المستخدم تعديل صف.
5- يتلقى ﺍلProcess Server هذا الطلب ويقوم بعمل اختبار ﺍلProcess Server هل هذا الطلب
موجود في الshared sql area ؟ إذا كان موجودًا، فإنه يتحقق من أن المستخدم لديه السلطة
للوصول إلى هذه البيانات. إذا لم يكن هذا الطلب موجودًا، فإنه ينشئ shared sql area جديدة.
6- في هذه المرحلة يقوم Process Server باسترجاع البيانات المطلوبة من الdata file من الجدول او من ال Data Block المخزنة في SGA.
7- بعد جلب البيانات هنا يقوم ال server بتعديل الجدول في SGA
8- في لحظة Commit يقوم LGWR بكتابة العملية في Redo Log File .
9- يقوم DBWn بكتابة التعديلات على الdisk او ما يسمى بـ Data File.
10- واخيرا يقوم Process Server بارسال رسالة بنجاح او فشل العملية.
The Oracle Data Dictionary:
تحتوي قاعدة البيانات على آلاف الكائنات؛ وكل المعلومات عن هذه الكائنات محفوظة فيما يسمى بـ Data Dictionary وهي عبارة عن جداول تسمى Base Tables ، وهذه الجداول مملوكة للمستخدم SYS والذي يتم إنشائه أثناء إنشاء قاعدة البيانات، ولا يتم الوصول إلى هذه الجداول بشكل مباشر بل يتم تشفير أسمائها بحيث لا يستطيع المستخدم تعديلها أو حذفها، ولتسهيل الأمر، يسهل الوصول إلى Data Dictionary والحصول على معلومات عن الكائنات الموجودة في قاعدة البيانات، وهناك واجهات Views، وهذه الواجهات يتم إنشائها أثناء إنشاء قاعدة البيانات، وهناك ثلاث مستويات لهذه الواجهات:
USER_Views: تتيح هذه الواجهة للمستخدم الحصول على كافة المعلومات حول الكائنات التي يملكها.
ALL_Views: تتيح هذه الواجهة للمستخدم الحصول على كافة المعلومات حول الكائنات التي يملكها ويمكنه الوصول إليها.
DBA_Views: يستخدمها مسؤول قاعدة البيانات للحصول على معلومات حول كافة الكائنات الموجودة في قاعدة البيانات.
مهام مدير قاعدة البيانات:
1- التأكد من متطلبات قاعدة البيانات: يقوم مسؤول قاعدة البيانات بتقييم الخادم والتأكد من أنه يلبي جميع متطلبات الذاكرة والقرص الصلب والموارد الأخرى التي تحتاجها قاعدة بيانات أوراكل.
2- تثبيت أوراكل: بعد التأكد من تلبية متطلبات التثبيت، فإن إحدى أهم مهام مسؤول قاعدة البيانات هي تثبيت أوراكل وتكوينه لتلبية المتطلبات.
3- تخطيط قاعدة البيانات: بعد تثبيت أوراكل وقبل إنشاء قاعدة البيانات، يجب على مسؤول قاعدة البيانات تخطيط قاعدة البيانات، وتحديد بنيتها المادية والمنطقية، وبعبارة أخرى،
التخطيط السليم بحيث يتمكن مسؤول قاعدة البيانات من تقديم إجابة لكل سؤال بالشكل المثالي.
4- إنشاء قاعدة بيانات: هذه من أهم مهام مدير قاعدة البيانات، وسنتحدث عنها بشيء من التفصيل.
5- حماية قاعدة البيانات: وذلك من خلال وضع استراتيجية نسخ احتياطي صارمة (Backup) وإجراءات وقائية أخرى حتى لا تضيع قاعدة البيانات في ظروف مختلفة.
6- إنشاء وإدارة مستخدمي قاعدة البيانات: ومنحهم الصلاحيات المناسبة ومراقبة عملياتهم والتأكد من عدم منحهم صلاحيات زائدة (سنتحدث عن هذا الموضوع بشيء من التفصيل).
7- استرجاع قاعدة البيانات في حال وجود مشكلة: في بعض الأحيان تحدث مشاكل في قاعدة البيانات تتسبب في تلفها أو ضياعها، لذا يجب على مدير قاعدة البيانات أن يكون قادراً على استعادة قاعدة البيانات إلى الحالة التي كانت عليها قبل حدوث المشكلة.
8- مراقبة أداء قاعدة البيانات: لا يتوقف عمل مدير قاعدة البيانات عند إنشاء قاعدة البيانات ووضع استراتيجية النسخ الاحتياطي وإدارة المستخدمين، بل أيضاً متابعة تقدم قاعدة البيانات وتوفير الأداء المثالي.
Comments
لايوجد تعليق حتى الان