المقدمة
بسم الله الرحمن الرحيم
يعد نظام إدارة قواعد البيانات 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
وذلك لانه يجب مراعاة متطلبات المنظمة من حيث السياسات والمعايير ،ايضا متطلبات التطبيق الذي سوف يعمل على قاعدة البيانات.
في حال هناك أي أسئلة أو ملاحظات ، نرجو
التواصل معنا عن طريق التعليقات أو أحد برامج التواصل المذكورة بالمدونة.