Решение задач администрирования СУБД MS SQL Server средствами Transact-SQL. Технологии настройки файлов и файловых групп при создании БД, страница 3

При создании файлов данных и файлов журнала их можно сконфигурировать с помощью инструкции Transact-SQL CREATE DATABASE, а чтобы изменить их конфигурацию используется инструкция ALTER DATABASE. Эти файлы также можно сконфигурировать на странице Свойства базы данных (Database Properties) в SSMS (вызывается из контекстного меню при щелчке ПКМ по имени БД).

Параметры конфигурирования файлов приведены в таблице:

Параметр

Описание

NAME

Логическое имя файла.

FILENAME

Полный путь к файлу и имя файла.

SIZE

Размер файла. Если размер первичного файла не указан, ядро БД будет использовать размер первичного файла эталонной БД (model). Если же не указан размер вторичного файла или файла журнала, то ядро БД создаст файлы размером 1 Мб.

MAXSIZE

Максимальный размер файла. Если максимальный размер не указан или выбран параметр Неограниченный рост размера файла (UNLIMITED), то максимальный размер ограничен лишь объемом жесткого диска. В SQL Server 2005 максимальный размер файла журнала равен 2 терабайтам, а максимальный размер файла данных - 16 терабайт.

FILEGROWTH

Определяет величину автоматического увеличения размера файла (в кило-, мега-, гига- или терабайтах либо в процентах от фактического размера файла). Если указано значение 0, файл не будет увеличиваться.

Рекомендуется создавать файлы БД настолько большими, насколько это возможно, исходя из максимального объема данных, которые будут храниться в БД. Это позволяет предусмотреть возможность роста БД при ее эксплуатации. Создание больших файлов позволяет избежать фрагментации файлов и повышает производительность БД. Чаще всего можно разрешить автоматическое увеличение размера файла данных. Нужно лишь ограничить его максимальным значением, чтобы оставить свободное дисковое пространство. Размещение файловых групп на разных дисках также помогает избежать физической фрагментации файлов по мере их роста.

Пример 1. Создание БД с несколькими файлами и файловыми группами с явным указанием значений для всех свойств файла.

Добавить, удалить и изменить свойства файла можно с помощью инструкции ALTER DATABASE.

Пример 2. Добавление в БД с именем Projects нового файла.

Общие рекомендации для обеспечения максимальной производительности файлов данных и файлов журнала:

·  Во избежание конфликтов доступа к диску не размещать файлы данных на одном диске с файлами операционной системы.

·  Размещать файлы журнала транзакций и файлы данных на разных дисках. Это обеспечивает максимальную производительность за счет уменьшения конфликтов доступа к дискам между файлами данных и файлами транзакций.

·  По возможности размещать БД tempdb на отдельном диске (для промышленных приложений рекомендуется использовать несколько дисков, соответствующих системе RAID 10 или RAID 5). В средах с интенсивным использованием БД tempdb при размещении этой БД на отдельном диске повышается производительность, так как тогда операции с tempdb выполняются параллельно с операциями БД.

1.4. Выполнение некоторых служебных операций с БД

1.4.1. Увеличение размера базы данных

1.4.2. Уменьшение размера базы данных

Примечание. В большинстве случаев настройку автоматического уменьшения БД при помощи параметра AUTO_SHRINK использовать не рекомендуется.

1.4.3. Перенос файлов БД

1.4.4. Переименование БД

1.4.5. Удаление БД

1.5. Технологии шифрования информации в таблицах БД

Пример.

Примечание 1. В этом примере для простоты все данные возвращаются с типом данных nvarchar(100). В реальных ситуациях может потребоваться выполнить дополнительные преобразования типов данных, чтобы вернуть расшифрованную информацию в виде значений с типами данных int, money и т. п. Для этого используются функции преобразования типов данных CAST, CONVERT (см. конспект лекций по дисциплине «Базы данных» за 5 семестр).

Примечание 2. По вопросам использования технологий шифрования данных см. также с. 880-885 книги П. Нильсена (имеется в электронном виде).

1.6. Использование DDL-триггеров для решения административных задач

(См. также конспект лекций по дисциплине «Базы данных» за 5 семестр).

MS SQL Server имеет большой набор средств администрирования (например, Activity Monitor, системные хранимые процедуры), требующих от администратора БД постоянно просматривать результаты работы этих средств. Однако часто у администратора БД имеются другие виды работ, и он не может непрерывно выполнять мониторинг работы сервера. В этой ситуации удобно иметь средства администрирования, которые бы «сами» оповещали администратора о выполнении на сервере определенных действий.