كيف تعيد تنظيم وإعادة بناء الفهارس في MS SQL؟

الفهارس هي كائنات من ملفات قاعدة بيانات MS SQL. تعمل هذه الكائنات المخططة مثل جدول محتويات قاعدة البيانات. تُستخدم هذه الفهارس لتحسين عمليات استرجاع البيانات على جدول قاعدة بيانات MS SQL.

ومع مرور الوقت، يمكن أن يتعرض الجدول للتجزئة بسبب عمليات INSERT وUPDATE المستمرة. أيضًا، مثل الكائنات الأخرى، فإن الفهارس معرضة أيضًا للفساد. إذا تعرضت الفهارس للفساد، يمكنك تلقي أخطاء مثل:

Plain Text

 

لحل الأخطاء المرتبطة بالفساد في الفهارس أو عندما يرتفع مستوى التجزئة في الفهارس، يمكنك إعادة بناء الفهارس أو إعادة تنظيمها. في هذه المقالة، سنناقش كيفية إعادة تنظيم وإعادة بناء الفهارس في MS SQL Server. سنذكر أيضًا أداة متقدمة لإصلاح قاعدة بيانات MS SQL يمكنها استعادة الفهارس وكائنات أخرى من ملفات قاعدة بيانات SQL الفاسدة بسرعة وبدقة كاملة.

تحقق من نسبة التجزئة للفهارس

قبل إعادة تنظيم الفهارس، تحتاج إلى معرفة نسبة التجزئة. يمكنك استخدام الأمر أدناه للتحقق من نسبة تجزئة الفهرس:

SQL

 

إعادة تنظيم الفهارس في SQL Server

إذا كان مستوى التجزئة للفهرس بين 10 و30، يُوصى بإعادة تنظيم الفهرس. يمكنك استخدام الكود التالي في T-SQL لإعادة تنظيم الفهرس:

SQL

 

بالإمكان استخدام SQL Server Management Studio (SSMS) لإعادة تنظيم الفهارس. اتبع الخطوات التالية:

  • في SSMS، قم بالاتصال بمثيل الـ SQL Server الخاص بك.
  • في مستكشف الكائنات، قم بتوسيع قاعدة البيانات.
  • قم بتوسيع مجلد الجداول ثم مجلد الفهارس.
  • انقر بزر الماوس الأيمن على الفهرس الذي تحتاج إلى إعادة تنظيمه، ثم انقر على إعادة تنظيم.

إعادة بناء الفهارس في MS SQL

إذا كان التشتت أعلى، فيمكنك إعادة بناء الفهارس. بإمكانك استخدام أمر DBCC DBREINDEX لإعادة بناء فهرس. إليك كيفية تنفيذ هذا الأمر:

SQL

 

هذا الأمر لا يدعم الفهارس المكانية وفهارس عمود التخزين المحسن للذاكرة.

بالإمكان أيضًا استخدام أمر ALTER INDEX:

SQL

 

بالإمكان أيضًا إعادة بناء الفهارس باستخدام واجهة المستخدم الرسومية في SSMS. فيما يلي الخطوات:

  • في SSMS، في مستكشف الكائنات، قم بتوسيع قاعدة البيانات التي تحتوي على الجدول الذي تحتاج إلى إعادة بناء فهرس عليه.
  • قم بتوسيع مجلد الجداول ثم الجدول الذي تحتاج إلى إعادة بناء فهرس عليه.
  • قم بتوسيع مجلد الفهارس، انقر بزر الماوس الأيمن على الفهرس الذي تحتاج إلى إعادة بنائه، واختر إعادة بناء.

إصلاح قاعدة بيانات SQL Server

إذا لم ينجح إعادة تنظيم أو إعادة بناء الفهارس، يمكنك تجربة أمر DBCC CHECKDB مع الخيار REPAIR_ALLOW_DATA_LOSS لإصلاح قاعدة البيانات. إليك كيفية استخدام هذا الأمر:

أولاً، قم بتغيير وضع قاعدة البيانات إلى SINGLE_USER باستخدام الأمر التالي:

SQL

 

ثم، قم بتشغيل أمر DBCC CHECKDB كما هو موضح أدناه لإصلاح قاعدة البيانات:

SQL

 

بعد الإصلاح، قم بضبط وضع قاعدة البيانات إلى MULTI_USER عن طريق تنفيذ الأمر التالي:

SQL

 

يمكن أن يساعد أمر DBCC CHECKDB المذكور أعلاه في حل جميع الأخطاء المتعلقة بالفساد في الفهارس. يمكنه إصلاح كل من الفهارس المتجمعة وغير المتجمعة في قواعد بيانات SQL. ومع ذلك، لا يضمن استعادة البيانات بالكامل وقد يؤدي إلى فقدان بيانات. لتجنب فقدان البيانات، يمكنك استخدام أدوات إصلاح MS SQL المهنية. إنها مصممة بخوارزميات متقدمة لاستعادة جميع الكائنات، بما في ذلك الفهارس المتجمعة وغير المتجمعة، الإجراءات المخزنة، المشغلات، إلخ، من قاعدة البيانات التالفة.

الاستنتاج

يمكنك تقليل تشتت الفهارس عن طريق إعادة تنظيم أو إعادة بناء الفهرس. في هذه المقالة، شرحنا كيفية التحقق من نسبة التشتت في الفهارس وكيفية إعادة بناء الفهارس.

Source:
https://dzone.com/articles/reorganize-and-rebuild-indexes-in-ms-sql