Основные настройки SQL Server. Часть I
Содержание:
1. Основные моменты (Вы читаете данный раздел);
2. Достижение целевых уровней производительности SQL Server;
3. Работа с унаследованным экземпляром SQL Server.
1. Установка AUTO_GROW и отключение AUTO_ SHRINK
Начнем с последнего. AUTO_SHRINK - это, в принципе, достаточно полезная настройка, которая представляет собой директив, предписывающую базе уменьшаться в объеме в автоматическом режиме. Как ни посмотри, идея правильная. Однако, на поверку, от нее гораздо больше вреда, чем пользы. Поскольку базы данных имеют обыкновение увеличиваться в объеме спорадически, использование команды AUTO SHRINK приводит к сокращению объема базы данных, когда определенное количество данных стерто. В результате в процессе выполнения операции сокращения объема содержимое базы данных становится временно недоступным. В дальнейшем, если вновь будет возникать необходимость в увеличении объема базы данных с последующим сокращением, может образоваться порочный круг «рост-сокращение», что отрицательно скажется на производительности и приведет к фрагментированию файлов и индексов. В наше время лучше использовать другое решение: обзаведитесь дополнительным хранилищем и отключите функцию AUTO_SHRINK. Некоторые специалисты рекомендуют отключать параметр AUTO_ GROW, но я полагаю, что лучше оставить его активированным из соображений безопасности. Если вы будете использовать это средство, лучше всего установить для него значение Megabytes option for File Growth; при этом значение должно быть достаточно большим для того, чтобы базе данных не приходилось увеличиваться в объеме слишком часто. С другой стороны, функция AUTO_GROW не должна заменять собою средства управления размером баз данных. Рекомендую использовать ALTER DATABASE MYDB SET AUTO_SHRINK OFF, а также ALTER DATABASE MyDB MODIFY FILE (NAME=MyDB_data, FILEGROWTH=1024 MB).
2. Отключите настройку AUTO_CLOSE
Настройка AUTO_CLOSE обеспечивает закрытие баз данных SQL Server и высвобождение ресурсов в тот момент, когда работу с базой данных завершает последний пользователь. В какой-то мере это правильное решение, однако дело в том, что в такой ситуации последующий запуск базы данных при обращении к ней пользователей влечет за собой значительные дополнительные расходы. Настройка AUTO CLOSE не устанавливается по умолчанию, но она может быть артефактом для обновления с уровня SQL Server Express. Возможно также, что какой-либо другой администратор указал ее по ошибке. Используйте следующую настройку: ALTER DATABASE MyDB SET AUTO_ CLOSE OFF.
3. Установите настройку AUTO_CREATE_ STATISTICS & AUTO .UPDATE„STATISTICS
Для выбора оптимального плана выполнения запроса оптимизатор запросов Query Optimizer использует статистические гистограммы. Для индексированных столбцов статистические показатели создаются автоматически, но, если вы хотите, чтобы SQL Server получал такие показатели и для других столбцов, следует установить настройку AUTO CREATE_STATISTICS. Планы использования оптимизатора запросов могут изменяться по мере того, как создаются и обновляются строки таблицы. При использовании настройки AUTO_ UPDATE_STATISTICS оптимизатор запросов обновляет статистические данные перед выполнением компиляции запроса. Используйте настройки: ALTER DATABASE MyDB SET AUTO_CREATE_STATISTICS ON и ALTER DATABASE MyDB SET AUTO_UPDATE_STATISTICS ON.
1.
2. Достижение целевых уровней производительности SQL Server;
3. Работа с унаследованным экземпляром SQL Server.
1. Установка AUTO_GROW и отключение AUTO_ SHRINK
Начнем с последнего. AUTO_SHRINK - это, в принципе, достаточно полезная настройка, которая представляет собой директив, предписывающую базе уменьшаться в объеме в автоматическом режиме. Как ни посмотри, идея правильная. Однако, на поверку, от нее гораздо больше вреда, чем пользы. Поскольку базы данных имеют обыкновение увеличиваться в объеме спорадически, использование команды AUTO SHRINK приводит к сокращению объема базы данных, когда определенное количество данных стерто. В результате в процессе выполнения операции сокращения объема содержимое базы данных становится временно недоступным. В дальнейшем, если вновь будет возникать необходимость в увеличении объема базы данных с последующим сокращением, может образоваться порочный круг «рост-сокращение», что отрицательно скажется на производительности и приведет к фрагментированию файлов и индексов. В наше время лучше использовать другое решение: обзаведитесь дополнительным хранилищем и отключите функцию AUTO_SHRINK. Некоторые специалисты рекомендуют отключать параметр AUTO_ GROW, но я полагаю, что лучше оставить его активированным из соображений безопасности. Если вы будете использовать это средство, лучше всего установить для него значение Megabytes option for File Growth; при этом значение должно быть достаточно большим для того, чтобы базе данных не приходилось увеличиваться в объеме слишком часто. С другой стороны, функция AUTO_GROW не должна заменять собою средства управления размером баз данных. Рекомендую использовать ALTER DATABASE MYDB SET AUTO_SHRINK OFF, а также ALTER DATABASE MyDB MODIFY FILE (NAME=MyDB_data, FILEGROWTH=1024 MB).
2. Отключите настройку AUTO_CLOSE
Настройка AUTO_CLOSE обеспечивает закрытие баз данных SQL Server и высвобождение ресурсов в тот момент, когда работу с базой данных завершает последний пользователь. В какой-то мере это правильное решение, однако дело в том, что в такой ситуации последующий запуск базы данных при обращении к ней пользователей влечет за собой значительные дополнительные расходы. Настройка AUTO CLOSE не устанавливается по умолчанию, но она может быть артефактом для обновления с уровня SQL Server Express. Возможно также, что какой-либо другой администратор указал ее по ошибке. Используйте следующую настройку: ALTER DATABASE MyDB SET AUTO_ CLOSE OFF.
3. Установите настройку AUTO_CREATE_ STATISTICS & AUTO .UPDATE„STATISTICS
Для выбора оптимального плана выполнения запроса оптимизатор запросов Query Optimizer использует статистические гистограммы. Для индексированных столбцов статистические показатели создаются автоматически, но, если вы хотите, чтобы SQL Server получал такие показатели и для других столбцов, следует установить настройку AUTO CREATE_STATISTICS. Планы использования оптимизатора запросов могут изменяться по мере того, как создаются и обновляются строки таблицы. При использовании настройки AUTO_ UPDATE_STATISTICS оптимизатор запросов обновляет статистические данные перед выполнением компиляции запроса. Используйте настройки: ALTER DATABASE MyDB SET AUTO_CREATE_STATISTICS ON и ALTER DATABASE MyDB SET AUTO_UPDATE_STATISTICS ON.