المقدمة
بسم الله الرحمن الرحيم
يعد نظام إدارة قواعد البيانات SQLServer من أشهر قواعد البيانات المستخدمة من قبل تطبيقات كثيرة في المنظمات المتوسطة والكبيرة وخصوصا التطبيقات المبنية على تقنيات مايكروسوفت.
ومن المهم جدا تثبيت نظام إدارة قواعد البيانات بشكل صحيح وذلك لتفادي حصول المشاكل التي من ممكن أن تؤثر على أداء التطبيقات وتوفرها وبالتالي يؤثر على المستخدمين للنظام وقد يجعل المنظمة تخسر مبالغ مالية أو سمعتها في السوق .
ملاحظة مهمة
من الأخطاء الشائعة هو تركيب قواعد البيانات من غير دراسة متطلبات التطبيقات التي سوف تعمل عليها حيث كل تطبيق قد يكون له احتياج خاص. فيجب دراسة متطلبات التطبيق ثم القيام بالتركيب بناءً على المتطلبات.
تركيب قاعدة البيانات بالإعدادت الافتراضية في الغالب يكفي في حال كان التطبيق بسيط وغير معقد لكن يجب تغير الاعدادات على حسب الاحتياج حيث أداء قاعدة البيانات سوف يتأثر بناءً على الإعدادت.
أفضل الممارسات قبل البدء بالتثبيت
قبل البدء بالتثبيت هناك بعض الممارسات التي ينصح بعملها وذلك لحصول أفضل أداء من نظام إدارة قواعد البيانات ومنها مايلي:
- التأكد من إستخدام الموارد المناسبة من
CPUzوRAMبناء على احتياج التطبيقات المستخدمة ويفضل مراقبة الموارد بشكل دوري والتعديل عليها حسب الحاجة. - استخدام التخزين المناسب بناء على احتياج التطبيقات ومراقبة حجم قواعد البيانات والتاكد من توفر على الاقل
25%من المساحة الفارغة في القرص الصلبHardDisk. - عمل تهيئة
Formatللأقراص المستخدمة من ملفات قواعد البياناتData files,logfiles and tempdb filesوذلك بإختيار64kbكAllocation unit.
-
يفضل إستخدام
RAID 10لملفات قواعد البياناتData files, transcation logfilesوRAID 5للملفات النسخ الاحتياطية وLocal Fast Disksللملفات قواعد البيانات المؤقته. -
إستخدام أقراص مختلفة لكل من الملفات التالية:
- نظام قواعد البيانات
SQLServer Binaries. - ملفات قواعد البيانات
DataFiles. - ملفات قواعد البيانات
Transaction LogFiles. - ملفات قواعد البيانات المؤقتة
TempDB Files. - ملفات النسخ الإحتياطية
Backup Files. - ملفات نظام التشغيل
OS Drive.
- نظام قواعد البيانات
-
كلما أمكن إستخدام أقراص سريعة في القراءة والكتابة كلما كان أداء قواعد البيانات أفضل والحرص على استخدام أقراص سريعة لملفات قواعد البيانات المؤقتة
TempDBلأنها قد تؤثر على أداء نظام قواعد البيانات بشكل عام. -
بالنسبة للإصدار المختار يختلف الإختيار بناء على المميزات المطلوبة والدعم المطلوب من قبل التطبيقات التي سوف يتم تثبيتها ولكن بشكل عام يفضل إستخدام الإصدار قبل الأخير وذلك للتأكد من إستقرار النظام.
-
استخدام أدوات لقياس سرعة الأقراص والتأكد من سرعتها مثل DiskSpd ويفضل أن يكون
latencyأقل من10ms. -
استخدام الطرق المتعددة
Multi Pathلكل من وسائل التخزين والشبكات وذلك للحصول على توفر أعلي في حال كان هناك مشكلة في أحد الطرق الموصلة بين الخادم والشبكة أو مكان التخزين. -
تثبيت نظام إدارة قواعد البيانات في خادم مستقل وذلك لمنع أي تطبيق أخر من التأثير على قواعد البيانات ولتطبيق أفضل الممارسات الأمنية حيث يمكن منح الوصول لخوادم قواعد البيانات لمدراء قواعد البيانات و مدراء النظام فقط.
-
معرفة الاصدار الذي سوف يتم استخدامة والتأكد من الإصدار المدعوم لنظام التشغيل المستخدم ومراجعة المتطلبات حسب نظام التشغيل ويمكنك مراجعة الصفحة الرسمية من موقع مايكروسوفت من هنا دليل تثبيت نظام قواعد البيانات SQLServer.
-
يفضل منح صلاحية للحساب المستخدم في تشغيل خدمة
SQL Server Serviceوهي خاصية لعمل حفظ للبيانات في الذاكرةLock pages in memoryوذلك عن طريق السياسات المحليةLocal Policy.
- ينصح بتغيير إعدادت توفير الطاقة للخادم وذلك عن طريق خيارات الطاقة واختيار خيار الأداء العالي
High Performance Mode.
- ينصح بالعمل مع فريق الأمن السيبراني لعمل تجاوز
Excludeبعض الملفات الخاصة بإدارة قواعد البيانات من برنامج مكافحة الفيروساتAntivirus. ومن الملفات المهمة التي يجب تجاوز عنها ملفات قواعد البيانات والعمليات الخاصة بهاSQL Servers files (MDF,LDF,NDF) and Processes. ولإطلاع على كافة التفاصيل من الممكن مراجعة الموقع الرسمي لمايكروسوفت من هنا الملفات التي ينصح بعد فحصها من برنامج مكافح الفايروسات مع SQL Server
- في المنظمة التي يوجد بها نطاق
Active Directory Domainينصح بإنشاء حساب لتشغيل الخدمات الخاصةManaged Service AccountبSQLServer. أما إذا كان لايوجد نطاق بالمنظمة فيفضل إستخدام الحسابات الإفتراضيةSQLServer Virtual Accountsوالتي يتم إختيارها بشكل إفتراضي.
خطوات التثبيت
-
تحميل الإصدار المراد تثبيتها من موقع مايكروسفت الرسمي تحميل الإصدار من موقع مايكروسفت
-
اختيار تحميل ملفات التنصيب
- ثم فتح الملف الذي تم تحميله بيصيغه
ISO, والضغط علىSetup.
-
هناك أكثر من خيار لتثبيت
SQLServerبناء على نوع الحل الذي نود أن نبنيه، في هذا المقال سوف نقوم بتثبيت نسخة واحده مستقلهstandalone instance. -
نختار خيار
New SQLServer standalone installation.
- بعد ذلك إختيار الإصدار المناسب ووضع رقم المنتج الذي تم شراءة ، سوف نقوم بإختيار النسخة المجانية للمطورين. يجب شراء رخصة لبيئة الإنتاج
Productionللنسخة القياسية و المؤسسةStandard & Enterprise License. للتفاصيل من الممكن مراجعة الرخص من موقع مايكروسفت الرخص SQL Server
-
بعد ذلك الموافقة على الشروط ومن الممكن إختيار تحميل التحديث من موقع مايكروسوفت
-
إختيار المميزات يكون بناء على المميزات لذلك يفضل دراسة جميع التطبيقات التي سوف يتم إستخدامها من قبل قواعد بيانات
SQLServerإن أمكن ذلك. ومن الممكن تثبيت المميزات الأساسية فقط ثم إضافة المزيد في المستقبل.
- من الممكن إستخدام
Default Instanceفي حال سوف يتم تثبيت نسخة واحدةOne Instanceأما إذا كان هناك أكثر من نسخة فينصح بإستخدامNamed Instance.
- في حال كان الخادم ضمن نطاق
Domainيفضل بإستخدام الحسابات المدارةManaged Service AccountمنActive Directory. أما في حال لايوجد نطاق فيتم إستخدام الحسابات الإقتراضيةVirtual Accountsالتي يتم إختيارها بشكل إفتراضي في نافذة التنصيب. سوف يتم الحديث عن كيفة إنشاء حساب مدار في مقال مستقل إن شاء الله.
- يفضل إستخدام المصادقة بإستخدام
Windows Authenticationومع التأكد من إعداداتKerberos Protocol.
- وضع ملفات قواعد البيانات في أقراص مختلفة كما تم ذكره سابقا
- بالنسبة لقواعد البيانات المؤقته ٫ ينصح بوضعها على أقراص مستقلة وبعدد
coresللخادم وبحد أقصى ٨ ملفات. مع العلم أن الإصدارات الحديثة من ٢٠١٩ و أعلى تقوم بوضع أفضل الممارسات بشكل إفتراضي في نافذة التثبيت.
- إعدادات
MaxDOPهو أحد الإعدادات الخاصة بالإستفادة من عدد المعالجات الموجودة في الخادم حيث يساعد في إستغلال الموارد لتشغيل الإستفساراتQueriesبشكل أسرع. يفضل دراسة التطبيق وقراءة متطلباته حيث بعض التطبيقات ينصح بوضع قيمة معينة لهذه الإعدادات. بشكل عام وخصوصا في الإصدارات الحديثة يتم وضع أفضل قيمة كبداية بشكل إفتراضي ولا يتطلب تغيرها الإ بعد دراسة ومراقبة الأداء.
- بالنسبة لإعدادت الـذاكرة من الأفضل دراسة الإحتياج ووضع الأحد الأعلى في حال معرفة كم المساحة المطلوبة وفي حال عدم معرفة الإحتياج من الممكن مراقبة الأداء ثم وضع الحد الأعلى خصوصا إذا كان هناك أكثر من
Instanceعلى نفس الخادم.
- بعض التطبيقات تتطلب وضع بعض الملفات كالصور وغيرها خارج قاعدة البيانات والبعض يستخدم هذه الميزة عن طريق مايعرف ب
FileSteram. بشكل عام ينصح عدم تفعيله الا عند الحاجة وحسب متطلبات التطبيقات.
- الخطوة الأخيرة مراجعة الإعدادات التي تم عملها ثم البدء بعميلة التثبيت. من المهم ذكر ان جميع الاعدادات التي تم عملها يتم حفظها في ملف بصيغة و بإسم
ConfigurationFile.ini. من الممكن الإستفادة من هذا الملف في عمل أتمتة او عمل نفس الاعدادات في خادم اخر عن طريق مايعرف بالتثبيت الصامتSilent Installation.
أفضل الممارسات بعد التثبيت
بعد الانتهاء من التثبيت هناك بعض الممارسات التي ينصح بها بعد التثبيت ومنها مايلي:
-
تثبيت أخر تحديث
Cumulative Updateومن الممكن الإستفادة من الموقع الرسمي لمعرفة أخر تحديث للنسخة المثبتة أخر التحدثيات لنظام قواعد البيانات SQLServer. -
تعطيل الخدمات الغير مستخدمة في حال عدم الحاجة اليها مثل
SQLServer Browser Service. -
تغيير اعدادات بعض الخدمات للتشغيل التلقائي في حال إستخدامها مثل خدمة
SQLServer Agent Service. -
تفعيل النسخ الاحتياطي وجدولتة عن طريق إستخدام أحد الحلول النسخ الاحتياطية بالمنظمة أو بإستخدام المهام المجدولة في
SQLServer Maintenance Jobs. ومن الممكن الإستعانة ببعضScriptsالمقدمة من موقعola.hallengren.com. ومن الممكن تحميلها من هنا Ola SQL Server Maintenance Scripts. -
كـذلك ينصح بتفعيل وجدولة مهام لصيانة قواعد البيانات مثل
Database IntegrityوIndex Optimization.
بعض الإعدادت المهمة
بعد تركيب قاعدة البيانات ، هناك بعض الإعدادت التي سوف تحتاج غالبا لتفعيلها وهي كالتالي:
- تفعيل إعدادات
TCP/IPالخاصة بالشبكة لقواعد البياناتSQLServerحيث تفعيلها سوف يتلطب إعادة خدمةSQLServer Serviceوذلك للتمكن من التواصل مع نظام إدارة قواعد البيانات بTCP/IP Protocol.
الخاتمة
تم عمل شرح مختصر لتركيب نظام إدارة قواعد البيانات وفق أفضل الممارساتSQLServer. كما تم ذكر ان عملية التركيب بالإعدادت الافتراضية قد تكون غير مناسبة لبيئة الانتاج Production Environment وذلك لانه يجب مراعاة متطلبات المنظمة من حيث السياسات والمعايير ،ايضا متطلبات التطبيق الذي سوف يعمل على قاعدة البيانات.
في حال هناك أي أسئلة أو ملاحظات ، نرجو
التواصل معنا عن طريق التعليقات أو أحد برامج التواصل المذكورة بالمدونة.
