Обслуживание баз данных
Last updated
Last updated
Компонент SQL Server Database Engine автоматически поддерживает состояние индексов при выполнении операций вставки, обновления или удаления в отношении базовых данных. Со временем эти изменения могут привести к тому, что данные в индексе окажутся "разбросанными" по базе данных (фрагментированными). Фрагментация индексов негативно сказывается на скорость обработки данных.
Для дефрагментации данных, обновления статистики и оптимизации лога предлагаем воспользоваться готовыми скриптами, которые вы можете включить в ежедневный план обслуживания вашего сервера баз данных.
При необходимости создайте регламентное задание в SQL Server Configuration Manager и произведите настройки его расписания, например, ежедневное в 03:00:00.
Скачайте три файла и запустите их в окне SQL Management Studio в следующем порядке:
IndexOptimize.sql
CommandExecute.sql
LogOptimize.sql
В базе данных [master] в разделе пользовательских хранимых процедур появятся соответствующие процедуры.
Для дефрагментации и обновления статистики в нужной базе данных выполните следующий код в SQL Management Studio
или
для всех баз, размещенных на сервере.
В процессе выполнения в логе будет доступна информация о состоянии дефрагментируемых индексов и обновленных статистиках.
Для сжатия файла .log воспользуйтесь процедурой LogOptimize