10.6. Пример администрирования базы данных в среде MicroSoftSQLServer

 

В среде SQLServer существует три способа создания базы данных:

-                    припомощимастера Create Database Wizard

-                    средствами Enterprise Manager

-                    командами языка SQL, которые сохраняются в файлах сценарий.

 

Рассмотрим функции EnterpriseManager создания, резервного копирования и восстановления БД на примере базы данных «Сессия», спроектированной в главе 6.

 

Создание БД «Сессия»

Для создания базы данных после запуска EnterpriseManager необходимо выполнить следующую последовательность действий.

1. Выбрать сервер, на котором создается БД. Выбор сервера осуществляется в левой панели открывшегося окна «ConsoleRoot». Раскрыв группу «SQL Server», пользователь получает доступ к зарегистрированным серверам и может выбрать имя сервера, на котором будем создаваться база данных.

2. Создать БД и спланировать местоположение файлов. Для создания новой БД необходимо раскрыть папку «Databases» и с помощью контекстного меню или общего меню среды инициировать команду <NewDatabase>. После вызова команды откроется диалоговое окно «DatabaseProperties» с тремя вкладками: «General», «DataFiles» и «TransactionLog». На первой вкладке необходимо ввести имя базы данных – «Сессия». На двух следующих – определить имена и местоположение файлов базы данных. По умолчанию все файлы располагаются в каталоге \MSSQL\DATA. Для изменения предлагаемого местоположения файлов БД необходимо в столбце Location ввести новый путь (рис. 10.3).

 

 

Рис. 10.3. Вкладка Data Files окна Database Properties

 

Аналогично настраивается файл журнала транзакций на вкладке TransactionLog. После настройки параметров необходимо закрыть диалоговое окно (кнопка <OK>). При этом имя новой базы данных добавится в список баз данных, отображаемый в окне «ConsoleRoot» (Рис. 10.4).

 

 

Рис. 10.4. Окно ConsoleRoot после создания базы данных «Сессия»

 

3. Создать таблицы БД. Порядок создания таблиц проиллюстрируем на примере таблицы «Студенты» в составе базы данных «Сессия». Раскрыв базу данных «Сессия» в окне ConsoleRoot, пользователь получает доступ к объектам БД. Далее, открыв папку «Tables», пользователь имеет возможность инициировать команду контекстного меню или главного меню среды <NewTable>. После вызова команды откроется диалоговое окно «NewTable», в котором задаются имена полей, их типы и другие параметры. При необходимости вставить новое поле между двумя уже существующими необходимо инициировать команду контекстного меню <InsertColumn>. Удалить поле можно с помощью команды <DeleteColumn>.

Поле ID_Студент в таблице является первичным ключом. Для присвоения полю (или совокупности полей) статуса первичного ключа служит пиктограмма с изображением ключа на панели инструментов (необходимо выделить поле или группу полей и активизировать пиктограмму).

Чтобы построить индекс для поля необходимо в контекстном меню выбрать команду <Indexes/Keys>. Откроется диалоговое окно «Properties» (Рис. 10.5). Окно имеет четыре вкладки, с помощью которых задаются различные свойства таблицы. Так, например, на вкладке «Relationships» определяются связи между текущей таблицей и остальными таблицами базы данных. Вкладка «Indexes/Keys» позволяет получить информацию о существующих индексах и построить новый.

Для создания индекса служит управляющая кнопка <New>. Чтобы построить, например, индекс для поля «Фамилия», необходимо активизировать кнопку и выбрать в колонке «Columnname» поле «Фамилия». Строка ввода «Indexname» служит для задания имени нового индекса. Остальные интерфейсные элементы служат для определения параметров создаваемого индекса.

После задания всех полей таблицы необходимо закрыть окно «NewTable» и в открывшемся диалоговом окне «ChooseName» указать ее имя (Рис. 10.6).

 

 

Рис. 10.5. Окно «Свойства поля»

 

 

Рис. 10.6. Окно «NewTable». Определение полей и имени таблицы

 

4. Ввести в таблицы данные. Чтобы ввести данные в таблицу (например, в созданную на предыдущем шаге таблицу «Студенты»), неодходимо:

-                    в окне ConsoleRoot на левой панели раскрыть папку базы данных «Сессия»;

-                    выбрать объект «Tables» в открывшемся списке, чтобы просмотреть весь список таблиц на правой панели окна

-                    выделить таблицу «Студенты» на правой панели и активизировать команду контекстного меню Open table->Retun all rows.

 

Откроется окно для ввода и отображения содержимого выбранной таблицы. Строка таблицы соответствует отдельной записи, столбец – полю. В этом режиме с помощью клавиатуры в ячейки таблицы можно вводить значения, соответствующие (по типу, длине и другим ограничениям) заданным для полей.

Данные в записях таблицы хранятся в последовательности, задаваемой порядком следования полей.

 

Резервное копирование базы данных

 

Важным этапом ведения баз данных являются операции (backup) и восстановления (restore) БД.

Для того, чтобы выполнить функцию резервного копирования базы данных «Сессия», необходимо:

-                    в окне «ConsoleRoot» на левой панели открыть папку базы данных «Сессия»;

-                    в строке главного меню инициировать команду Tools->BackupDatabase;

-                    задать параметры копирования в диалоговом окне SQLServerBackup (Рис. 10.7).

 

 

Рис. 10.7. Окно резервного копирования БД

 

Имя архива (строка ввода «Name») по умолчанию генерируется автоматически на основе имени базы данных и при желании может быть изменено.

Описание архива (строка ввода «Description») является необязательным параметром.

В области «Backup» расположены переключатели режимов архивирования:

-                    DatabaseComplete – полное архивирование;

-                    DatabaseDifferential – копируются данные только измененные с момента создания последней резервной копии.

 

В области «Destination» необходимо указать расположение архивной копии. Кнопка <Add> позволяет открыть окно «SelectBackupDestination» (Рис. 10.8). Далее необходимо либо ввести в строку «FileName» идентификатор файла, либо выбрать устройство резервного копирования из списка «BackupDevice». Кнопка <OK> возвращает в окно «SQLServerBackup».

 

 

Рис. 10.8. Диалоговое окно выбора расположения архивной копии

 

В области «Overwrite» предлагается записать резервную копию на свободное место (Appendtomedia) или вместо других копий (OverwriteExistingmedia).

В области «Schedule» предлагается выполнить архивирование немедленно или спланировать его на другое время. Для того, чтобы создать расписание архивирования, необходимо пометить флажок «Schedule» и раскрыть диалоговое окно «EditSchedule» (Рис. 10.9) с помощью кнопки «…» (Browse).

 

 

Рис. 10.9. Диалоговое окно создания расписания

 

Для каждого расписания задается имя (строка ввода «Name»). В области «ScheduleType» можно указать, следует делать архивную копию автоматически при запуске SQLServerAgent или отложить до тех пор, пока не снизится нагрузка на процессор. Здесь же настраивается частота резервного копирования. Дата и время копирования устанавливается с помощью счетчиков «OnDate» и «AtTime» соответственно.

Для настройки регулярного архивирования необходимо активизировать кнопку «Change». Откроется окно «EditRecurringJobSchedule» (Рис. 10.10), с помощью которого создается расписание регулярного архивирования

 

 

Рис. 10.10. Диалоговое окно создания расписания регулярного архивирования

 

Восстановление базы данных

 

Чтобы восстановить базу данных из резервной копии необходимо:

-                    в окне ConsoleRoot на левой панели открыть папку базы данных «Сессия»;

-                    в строке главного меню выбрать команду Tools->RestoreDatabase. Откроется диалоговое окно c таким же именем (Рис. 10.11);

-                    в списке «RestoreasDatabase» диалогового окна «RestoreDatabase» выбрать имя восстанавливаемой базы данных (в нашем примере - «Сессия»);

-                    в секции «Restore» установить переключатель режимов, определяющий тип операции восстановления. Режим «Database» применяется для восстановления всей базы данных, режим «FilegroupsOrFiles»  - для восстановления файлов и групп файлов, режим «FromDevice» – для восстановления архива с конкретного устройства.

 

Рис. 10.11. Окно восстановления базы данных

 

В области «Parameters» можно отобразить архивы указанных баз и просмотреть их свойства, выбрав архив в списке и активизировав кнопку «Properties» (Рис. 10.12).

Чтобы начать восстановление, следует нажать кнопку OK на окне RestoreDatabase. В итоге появиться сообщение об успешном завершении операции или возникшей ошибке.

 

 

Рис. 10.12. Окно просмотра свойств архива

Контрольные вопросы

 

1.    Определите понятие «база данных» в рамках СУБД

2.    В чем состоит сходство и различие кластеризованного и некластеризованного индексов.

3.    Какие компоненты включает в себя модель безопасности

4.    Когда нужно использовать систему аутентификации WindowsNT и SQLServer

5.    Дайте сравнительный анализ типов ролей уровня сервера, уровня базы данных, уровня приложений

6.    Назначение и типы «ролей»

7.    Назначение хранимых процедур и триггеров. В чем состоит сходство и различие хранимых процедур и триггеров.

8.    Использование «представлений» для управления доступом

9.    Назначение и обобщенная схема репликации баз данных

10.                       Назначение и использование «контрольных точек» для восстановления БД

11.                       Назначение и основные способы резервного копирования

 

 

 

К оглавлению

Назад к разделу "10.5. Резервное копирование и восстановление"

Вперед к разделу "Глава 11. Направления развития концепций и систем обработки данных"