Системные базы данных

Системные базы данных сервера, создаваемые при установке, и их файлы представлены в таблице:

Таблица №1

 

Название Назначение Размещение
  Master Хранит всю информацию сервера, включая учетные записи и параметры, сведения о всех базах и нахождении их первичных файлов с данными об инициализации баз данных пользователя. Master.mdb – файл данных (75.mb) Mastlog.ldf – журнал транзакций (1 mb)
  TempDB Хранит все временные системные и пользовательские объекты: таблицы, переменные, хранимые процедуры, курсоры и т.п. Temppdb.mdf – файл данных (8 mb) Templog.ldf – журнал транзакций (0.5 mb)
  Model Является шаблоном, задаваемых администратором и используемым для создания любых пользовательских баз данных. Содержит параметры по умолчанию, которые можно переопределять при создании соответствующей базы данных пользователя. Model.mdf – файл данных (0.75 mb) Model.ldf – журнал транзакций (0.75 mb)
    MSDB Хранит информацию, относящуюся к автоматизации администрирования и управления сервером. Msdbdata – файл данных (3.5 mb) Msdblog – журнал транзакций (0.75 mb)
Всего – 22.75 mb

 

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

 

Задание.Для всех системных баз данных:

1. Найти путь и проверить наличие их файлов(MSSQL\DATA\);

2. Уточнить размер и дату их создания.

3. Просмотреть содержимое файлов и выделить ключевые тексты.

4. Оценить общий объём фалов для данной установки сервера.

5. С помощью команды SELECT убедиться, что любая база данных содержит следующие таблицы и указанную информацию.

sysallocations- сведения о размещении объектов внутри базы данных

syscolumns– информация о каждом столбце всех таблиц и представлений любой базы и всех параметров хранимой процедуры.


syscomments– сведения о каждом объекте базы данных в виде отдельной записи, причем в колонке text содержатся команды SQL, с помощью которых был создан этот объект(см. хранимую процедуру sp_helptext);

sysconstrains– описание связи между ограничениями и обьектами;

sysdepends– ссылки на объекты использованные при определении других объектов;

sysfilegroups– имена групп фалов принадлежащих базе данных;

sysfiles– имена всех файлов базы данных;

sysforeignkeys– информация об ограничении FOREIGN KEY;

sysfulltextcatalogs– имена полнотекстовых каталогов присоединенных к базе данных;

sysindexes– информация об индексах таблицах базы данных; sysindexkeys– сведения о ключах и столбцах индексов; sysmembers– имена участников ролей базы данных;

sysobjects– сведения обо всех объектах, создаваемых в базе данных;

syspermissions– информация о правах доступа к объектам для пользователей групп и


ролей;


 

sysprotects– сведения о разрешениях (см. команды GRANT и REVOKE);

systypes– все типы данных, как встроенные так и пользовательские;

sysusers– все пользователи базы данных: пользователи и роли SQL Server, пользователи и


группы Windows NT;

sysreferenc– соответствия между FOREIGN KEY и столбцами;

 

 

В базе master имеется еще набор дополнительных таблиц со следующей системной информацией.

sysaltfiles– сведения о всех файлах всех баз данных;

syscacheobjects– информация об кэш-памяти;

syscharsets– все наборы символов сервера и порядок сортировки;

sysconfigures– настройки сервера перед запуском и во время работы(динамические),

производимые пользователем;

sysconfings– текущие значения параметров настройки сервера;

sysdatabases– сведения обо всех базах данных сервера;

sysdevices– сведения обо всех файлах базы данных, хранящихся на различных устройствах

(для совместимости со старыми SQL);

syslanguages– сведения о языках сервера(кроме английского);

syslockinfo– информация обо всех блокировках;

syslogins– сведения об учетной записи пользователя SQL Server;

sysmessages– сведения об ошибках и предупреждениях;

sysdeadbusers– учетные записи и пароли пользователей для связанных серверов; sysperinfo– внутренние счетчики серверов для Windows NT Performance Monitor; sysprocesses– информация о процессах запущенных на сервере (системных и клиентских); sysremotelogins– сведения о пользователях, которым разрешено вызывать удаленные

хранимые процедуры;

sysservers– информация о серверах, способных выступать в роли источника данных OLE DB для сервер.

 

База данных tempdb является глобальным ресурсом, доступным все пользователям, при этом объекты в таблице либо локальные либо глобальные. Локальные объекты существуют в пределах сеанса хранимые процедуры, триггера или пакета команд. Глобальные объекты существуют постоянно и ими могут пользоваться все приложения. Заметим, что для создания локальной таблицы надо в качестве первого символа указать #, а для глобальной два знака ##.

 

Создание новых баз данных на сервере, в том числе и системной базы tempdb, производиться путем копирования системной model, которая содержит необходимые параметры по умолчанию. Таким образом, эту базу данных можно использовать как корпоративный стандарт на формат базы данных, указывая при создании лишь имя новой базы.


База данных msbdиспользуется сервером (его службой SQL Server Agent) для планирования событий, задач и регистрации операторов. Собственные таблицы этой базы содержат следующую информацию:

Sysalerts– сведения об оповещениях;

Syscategories– категории для автоматизации администрирования;

Sysdownloaddslist– список инструкций, загружаемых всеми серверами для управления выполнением много серверных заданий;

 

Sysjobhistory – история выполнения запланированных заданий;

 

Sysjobs– информация обо всех запланированных заданиях;

Sysjobschedules– расписание выполнения всех запланированных заданий; Sysjobjservers – информация о много серверных заданиях;

Sysjobsteps– подробное описание каждого шага задания для SQL Server Agent;

Sysnotifications– сведения об извещениях оператору;

Sysoperators– сведения об операторах сервера;

Systargetservergroupmembers– сведения о серверах, задействованных в много серверных группах;

Systargetservergroups– сведения обо всех группах назначения;

Systargetservers– информация о серверах назначения, которые задействованы в выполнении много серверного задания;

Systaskids– соответствия между задачами и заданиями (для старых версий сервера).

 

Инструменты администрирования SQL Server 2000предоставляют широкие возможности для управления серверами баз данных, оптимизации запросов и разрешения возникающих проблем. Большинство операций администрирования выполняется с помощью графических утилит таких, как Enterprise Manage, Query Analyzerи других.

Помимо утилит с графическим интерфейсом для выполнения административных задач можно использовать утилиты, которые запускаются из командной строки с требуемыми параметрами и находятся в папке Binn сервера:

 

Bcp.exe– программа массивного копирования данных из таблиц и представлений базы в текстовые файлы и обратно (Bulk Copy Program API);

Console.exe– программа для просмотра сообщений при выполнении операций резервного копирования;

Dtsrun.exe– программа для запуска, удаления, просмотра и переписи пакетов DTS, хранящихся в структурированных COM-файлах, в сервере SQL 2000и в структурах службы мегаданных;