30
Администрирование Администрирование информационных информационных систем систем Администрирование БД Администрирование БД Системные и Системные и пользовательские БД пользовательские БД SQL SQL Server 2000 Server 2000

Администрирование информационных систем

Embed Size (px)

DESCRIPTION

Администрирование информационных систем. Администрирование БД Системные и пользовательские БД SQL Server 2000. Архитектура базы данных. На физическом уровне каждая БД SQL Server 2000 хранится как минимум в двух файлах: Файл данных ( data file) - PowerPoint PPT Presentation

Citation preview

Page 1: Администрирование информационных систем

Администрирование Администрирование информационных информационных

системсистем

Администрирование БДАдминистрирование БД

Системные и Системные и пользовательские БД пользовательские БД SQL SQL

Server 2000Server 2000

Page 2: Администрирование информационных систем

Архитектура базы данныхАрхитектура базы данных► На физическом уровне каждая БД На физическом уровне каждая БД SQL Server 2000SQL Server 2000

хранится как минимум в двух файлах:хранится как минимум в двух файлах: Файл данныхФайл данных ( (data file)data file) Файл журнала транзакций Файл журнала транзакций ((transaction log file)transaction log file)

► Каждая БД имеет один основной файл данных и может Каждая БД имеет один основной файл данных и может иметь дополнительные файлы данных, каждый из иметь дополнительные файлы данных, каждый из которых используется только этой БД. которых используется только этой БД.

► Основной файл имеет, как правило, расширение Основной файл имеет, как правило, расширение .mdf.mdf. . Основной файл содержит данные таблиц и индексов, а Основной файл содержит данные таблиц и индексов, а также служебную информацию, которая используется также служебную информацию, которая используется SQL Server SQL Server при работе. Он содержит системные таблицы, при работе. Он содержит системные таблицы, где хранится описание объектов БД, информацию о где хранится описание объектов БД, информацию о расположении дополнительных файлов БД.расположении дополнительных файлов БД.

► Дополнительные файлы имеют, как правило, Дополнительные файлы имеют, как правило, расширение расширение .ndf..ndf. Дополнительные файлы используются, Дополнительные файлы используются, например, для размещения БД на различных дисках.например, для размещения БД на различных дисках.

Page 3: Администрирование информационных систем

Архитектура БДАрхитектура БД

► SQL Server 2000SQL Server 2000 хранит информацию о хранит информацию о расположении всех файлов БД в двух расположении всех файлов БД в двух местах:местах: в системной БД в системной БД mastermaster в основном файле БДв основном файле БД

► Сервер в основном использует информацию Сервер в основном использует информацию из БД из БД mastermaster. Основной файл используется в . Основной файл используется в случае, когда информация в БДслучае, когда информация в БД master master должна быть изменена – при обновлении должна быть изменена – при обновлении сервера, при восстановлении БД сервера, при восстановлении БД mastermaster и и добавлении БД к серверу при помощи добавлении БД к серверу при помощи хранимой процедуры хранимой процедуры sp_attach_dbsp_attach_db..

Page 4: Администрирование информационных систем

Файлы БДФайлы БД

► Каждый файл данных имеет Каждый файл данных имеет логическое логическое имяимя, используемое при обработке , используемое при обработке операторов операторов Transact-SQL Transact-SQL и и физическое физическое имяимя, используемое , используемое WindowsWindows..

►Логическое имя должно быть уникально Логическое имя должно быть уникально для отдельной БД и должно для отдельной БД и должно соответствовать правилам соответствовать правилам идентификации объектов идентификации объектов SQL ServerSQL Server..

►Физическое имя должно удовлетворять Физическое имя должно удовлетворять требованиям именования файлов в требованиям именования файлов в операционной системе.операционной системе.

Page 5: Администрирование информационных систем

Файлы БДФайлы БД

► Дополнительными свойствами файла Дополнительными свойствами файла являются являются идентификатор начальный идентификатор начальный размер, величина приращения при размер, величина приращения при увеличении и максимальный размерувеличении и максимальный размер..

► Эти данные хранятся на Эти данные хранятся на странице странице заголовка файлазаголовка файла, которая является первой , которая является первой страницей любого файла данных.страницей любого файла данных.

► SQL Server SQL Server уникально идентифицирует уникально идентифицирует страницы по номеру файла и номеру страницы по номеру файла и номеру страницы. Для нумерации страниц страницы. Для нумерации страниц используются последовательные номера, используются последовательные номера, начиная с 0.начиная с 0.

Page 6: Администрирование информационных систем

Выделение пространства для Выделение пространства для таблиц и индексовтаблиц и индексов

►Для обеспечения хранения информации Для обеспечения хранения информации необходимо выделить свободное место в необходимо выделить свободное место в файле данных и присовоить его файле данных и присовоить его соответствующему объекту.соответствующему объекту.

► Свободное пространство, выделяемое для Свободное пространство, выделяемое для таблиц и индексов, измеряется в таблиц и индексов, измеряется в экстентах . экстентах .

► Экстент – блок размером 64 кбайта и Экстент – блок размером 64 кбайта и состоит из 8 страниц по 8 Кб каждая.состоит из 8 страниц по 8 Кб каждая.

► Экстенты бывают однородные и смешанные.Экстенты бывают однородные и смешанные.

Page 7: Администрирование информационных систем

Выделение пространства для Выделение пространства для таблиц и индексовтаблиц и индексов

► При создании новой таблицы или индекса При создании новой таблицы или индекса SQL SQL Server Server находит смешанный экстент, содержащий находит смешанный экстент, содержащий свободную страницу и связывает ее с созданным свободную страницу и связывает ее с созданным объектом. объектом.

► Страница содержит данные, относящиеся только Страница содержит данные, относящиеся только к одному объекту. Если объекту требуется к одному объекту. Если объекту требуется дополнительное пространство, то дополнительное пространство, то SQL Server SQL Server распределяет свободное пространство из распределяет свободное пространство из смешанных экстентов, пока необходимо число смешанных экстентов, пока необходимо число страниц не достигнет 8, затем выделяется страниц не достигнет 8, затем выделяется однородный экстент для данного объекта.однородный экстент для данного объекта.

► Если в файлах данных нет свободного Если в файлах данных нет свободного пространства и разрешено их автоматическое пространства и разрешено их автоматическое увеличение, то увеличение, то SQL ServerSQL Server будет увеличивать их будет увеличивать их размер по алгоритму циклического обслуживания.размер по алгоритму циклического обслуживания.

Page 8: Администрирование информационных систем

Таблица Таблица Index Allocation Index Allocation MapMap

► При размещении страницы объекта в однородном или При размещении страницы объекта в однородном или смешанном экстенте используется таблица смешанном экстенте используется таблица IAMIAM, чтобы , чтобы отследить все страницы, выделенные таблице или индексу.отследить все страницы, выделенные таблице или индексу.

► Каждая страница Каждая страница IAMIAM может указывать на 512000 страниц. может указывать на 512000 страниц. Страницы Страницы IAMIAM расположены в файле случайным образом и расположены в файле случайным образом и связаны друг с другом: первая страница связаны друг с другом: первая страница IAMIAM указывает на указывает на вторую и т.д.вторую и т.д.

► Другие системные страницы: Другие системные страницы: PFSPFS – страница свободного пространства страниц. Если необходимо – страница свободного пространства страниц. Если необходимо

добавить данные в страницы объекта используется добавить данные в страницы объекта используется PFSPFS для для определения страниц со свободным пространством.определения страниц со свободным пространством.

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

SGAM SGAM – страница дополнительной глобальной карты размещений – страница дополнительной глобальной карты размещений (используется для выделения пространства в смешанном экстенте).(используется для выделения пространства в смешанном экстенте). Каждая страница Каждая страница SGAM SGAM – это битовая карта 64000 экстентов, – это битовая карта 64000 экстентов, используемая используемая SQL Server SQL Server для определения смешанных экстентов со для определения смешанных экстентов со свободными страницами.свободными страницами.

Page 9: Администрирование информационных систем

Хранение страниц индексов и Хранение страниц индексов и страниц данныхстраниц данных

► При отсутствии индекса При отсутствии индекса SQL Server SQL Server хранит данные на хранит данные на любой незаполненной странице в любом доступном любой незаполненной странице в любом доступном экстенте, принадлежащем таблице.экстенте, принадлежащем таблице.

► Такое неорганизованное хранение данных называется Такое неорганизованное хранение данных называется кучей кучей (heap)(heap). Страницы в куче хранятся беспорядочно и . Страницы в куче хранятся беспорядочно и никак не связаны друг с другом.никак не связаны друг с другом.

► Если на таблице не определены индексы, то для поиска Если на таблице не определены индексы, то для поиска записи записи SQL Server SQL Server просматривает всю таблицу (для просматривает всю таблицу (для определения страниц таблицы используется страницы определения страниц таблицы используется страницы IAMIAM).).

► Для ускорения поиска используются Для ускорения поиска используются индексыиндексы для для быстрого поиска данных. Каждый индекс хранит быстрого поиска данных. Каждый индекс хранит значение индексированного столбца таблицы в виде значение индексированного столбца таблицы в виде BB--дерева.дерева.

► В В SQL Server 2000SQL Server 2000 используются два вида индексов: используются два вида индексов: кластерный;кластерный; некластерный.некластерный.

Page 10: Администрирование информационных систем

Кластерный индексКластерный индекс

►Для кластерного индекса сервер физически Для кластерного индекса сервер физически сортирует страницы в файле данных исходя сортирует страницы в файле данных исходя из значений ключа кластерного индекса.из значений ключа кластерного индекса.

► Самый нижний уровень кластерного уровня Самый нижний уровень кластерного уровня представляет собой уровень данных.представляет собой уровень данных.

►При размещении новой строки в таблицу При размещении новой строки в таблицу SQL SQL Server 2000Server 2000 просматривает двоичное дерево, просматривает двоичное дерево, определяя место размещение (и перемещая определяя место размещение (и перемещая существующие строки данных и индексов).существующие строки данных и индексов).

Page 11: Администрирование информационных систем

Некластерный индексНекластерный индекс

► Уровень листьев (нижний уровень) Уровень листьев (нижний уровень) некластерного индекса содержит некластерного индекса содержит указатель, с помощью которого указатель, с помощью которого SQL SQL Server Server определяет, где найти строку определяет, где найти строку данных, соответствующую значению данных, соответствующую значению ключа индекса.ключа индекса.

►При добавлении новой строки, новая При добавлении новой строки, новая строка индекса добавляется в строка индекса добавляется в B-B-дерево, дерево, а новая строка данных помещается в а новая строка данных помещается в любую страницу кучи.любую страницу кучи.

Page 12: Администрирование информационных систем

Файлы журнала Файлы журнала транзакцийтранзакций

► Каждая БД содержит хотя бы один файл журнала Каждая БД содержит хотя бы один файл журнала транзакций.транзакций.

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

► Каждый файл транзакций – отдельный файл Каждый файл транзакций – отдельный файл операционной системы, используемый только одной БД, и операционной системы, используемый только одной БД, и имеет по умолчанию расширение имеет по умолчанию расширение .ldf.ldf..

► Каждый журнал транзакций имеет логическое имя, Каждый журнал транзакций имеет логическое имя, используемое в предложениях используемое в предложениях Transact-SQLTransact-SQL, и , и физическое.физическое.

► К дополнительным свойствами файла транзакций К дополнительным свойствами файла транзакций относятся:относятся: Идентификатор;Идентификатор; Начальный размер;Начальный размер; Приращение, при увеличении размера;Приращение, при увеличении размера; Максимальный размер.Максимальный размер.

Page 13: Администрирование информационных систем

Структура файла Структура файла транзакцийтранзакций

► Файл журнала транзакций содержит Файл журнала транзакций содержит последовательность записей.последовательность записей.

► Каждая запись имеет Каждая запись имеет порядковый номер в порядковый номер в журнале журнале ((Log Sequence Number, LSN)Log Sequence Number, LSN). Журнал . Журнал транзакций БД транзакций БД SQL Server SQL Server рассматривает как рассматривает как единый журнал, безотносительно в скольких единый журнал, безотносительно в скольких физических файлах он располагается.физических файлах он располагается.

► SQL Server 2000 SQL Server 2000 логически делит каждый логически делит каждый физический файл журнала транзакций на физический файл журнала транзакций на несколько несколько виртуальных файлов журнала виртуальных файлов журнала (VLF)(VLF). . Количество виртуальных файлов определяется Количество виртуальных файлов определяется динамически в зависимости от размера динамически в зависимости от размера физического файла. физического файла.

Page 14: Администрирование информационных систем

Принцип работы журнала Принцип работы журнала транзакцийтранзакций

► SQL Server 2000 SQL Server 2000 использует буферный кэш – хранящуюся в использует буферный кэш – хранящуюся в оперативной памяти структуру, куда перемещаются страницы данных оперативной памяти структуру, куда перемещаются страницы данных с диска. Приложения работают с данными, расположенными в кэше.с диска. Приложения работают с данными, расположенными в кэше.

► Измененная страница в кэше, еще не записанная на диск, называется Измененная страница в кэше, еще не записанная на диск, называется затронутой страницей затронутой страницей ((dirty pagedirty page). ).

► Изменения вносятся вначале в журнал транзакций, а потом на диск. Изменения вносятся вначале в журнал транзакций, а потом на диск. За выполнением данной процедуры следят встроенные механизмы За выполнением данной процедуры следят встроенные механизмы SQL Server 2000SQL Server 2000..

► Запись затронутой страницы из кэша на диск называется Запись затронутой страницы из кэша на диск называется сбросом сбросом страниц страниц ((page flushing)page flushing)..

► Запись журнала содержит всю информацию, необходимую для Запись журнала содержит всю информацию, необходимую для отмены или повторения любого изменения БД.отмены или повторения любого изменения БД.

► SQL Server 2000 SQL Server 2000 периодически записывает затронутые страницы из периодически записывает затронутые страницы из кэша на диск. Запись данных производится в результате процесса – кэша на диск. Запись данных производится в результате процесса – контрольная точкаконтрольная точка, либо поток , либо поток отложенной записи отложенной записи просматривает просматривает затронутые страницы, записывает их на диск и освобождает затронутые страницы, записывает их на диск и освобождает пространство для новых страниц.пространство для новых страниц.

► Если транзакция отменена или не завершена, журнал транзакций Если транзакция отменена или не завершена, журнал транзакций гарантирует, что все изменения внесенные незавершенными гарантирует, что все изменения внесенные незавершенными транзакциями будут отменены.транзакциями будут отменены.

Page 15: Администрирование информационных систем

Процесс контрольной точкиПроцесс контрольной точки► Процесс контрольной точки используется для оптимизации Процесс контрольной точки используется для оптимизации

использования буферного кэша, уменьшения простоя в использования буферного кэша, уменьшения простоя в случае сбоя в работе кэша.случае сбоя в работе кэша.

► Процесс контрольной точки выполняется в следующих Процесс контрольной точки выполняется в следующих случаях:случаях: если используется оператор если используется оператор CHECKPOINTCHECKPOINT если используется оператор если используется оператор ALTER DATABASEALTER DATABASE при корректном завершении работы экземпляра при корректном завершении работы экземпляра SQL Server SQL Server при автоматическом запуске процесса контрольной точки при автоматическом запуске процесса контрольной точки

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

► Процесс контрольной точки записывает наименьший Процесс контрольной точки записывает наименьший LSNLSN, , необходимый для отмены невыполненной транзакции – необходимый для отмены невыполненной транзакции – минимальный минимальный LSN (minLSN)LSN (minLSN)..

► При запуске При запуске SQL Server SQL Server начинается процесс восстановления начинается процесс восстановления каждой БД. Проверяются журналы транзакций на наличие каждой БД. Проверяются журналы транзакций на наличие незавершенных транзакций. незавершенных транзакций. MinLSNMinLSN указывает наименьший указывает наименьший LSNLSN, с которого начинается просмотр., с которого начинается просмотр.

Page 16: Администрирование информационных систем

Процесс контрольной точкиПроцесс контрольной точки► Записи с номерами транзакций меньше Записи с номерами транзакций меньше minLSNminLSN не не

являются активными. Для уменьшения дискового являются активными. Для уменьшения дискового пространства занятого журналом они могут быть удалены пространства занятого журналом они могут быть удалены из файла журнала. Минимальной единицей, которая из файла журнала. Минимальной единицей, которая удаляется при усечении файла транзакций – виртуальный удаляется при усечении файла транзакций – виртуальный файл журнала.файл журнала.

► При использовании При использовании простой модели восстановления простой модели восстановления процесс контрольной точки просто удаляет неактивную процесс контрольной точки просто удаляет неактивную часть из всех виртуальных файлов и потом они часть из всех виртуальных файлов и потом они используются повторно.используются повторно.

► При использовании При использовании модели восстановления отдельных модели восстановления отдельных операций операций или или модели восстановления результатов модели восстановления результатов импорта импорта необходимо предварительно создать копию необходимо предварительно создать копию журнала транзакций, а потом удалить неактивную часть.журнала транзакций, а потом удалить неактивную часть.

► Процесс контрольной точки освобождает пространство в Процесс контрольной точки освобождает пространство в физическом файле журнала транзакций.физическом файле журнала транзакций.

Page 17: Администрирование информационных систем

Потоки операционной Потоки операционной системысистемы

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

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

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

Page 18: Администрирование информационных систем

Модели восстановленияМодели восстановления

► В В SQL Server 2000SQL Server 2000 существует три модели существует три модели восстановления:восстановления: простая (простая (Simple model)Simple model) отдельных операций отдельных операций (Full model);(Full model); результатов импорта результатов импорта (Bulk-Logged model)(Bulk-Logged model)..

► Каждая БД имеет одну из моделей. Каждая БД имеет одну из моделей. Выбор модели влияет на размер журнала Выбор модели влияет на размер журнала транзакций, а также возможности транзакций, а также возможности резервного копирования и резервного копирования и восстановления данных.восстановления данных.

Page 19: Администрирование информационных систем

Модель восстановления Модель восстановления отдельных операцийотдельных операций

► Данная модель позволяет восстановить БД до Данная модель позволяет восстановить БД до того состояния, в котором она была на момент того состояния, в котором она была на момент сбоя или на любой иной указанный момент сбоя или на любой иной указанный момент времени.времени.

► При использовании данной модели в журнал При использовании данной модели в журнал заносятся все операции (в том числе заносятся все операции (в том числе широкомасштабные – такие как, операция широкомасштабные – такие как, операция создания индекса, копирования данных). Такие создания индекса, копирования данных). Такие операции требуют значительного объема операции требуют значительного объема доступного пространства в журнале транзакций.доступного пространства в журнале транзакций.

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

Page 20: Администрирование информационных систем

Модель восстановления Модель восстановления результатов импортарезультатов импорта

►При использовании данной модели При использовании данной модели регистрируются все операции, кроме регистрируются все операции, кроме широкомасштабных. Хранимой информации о широкомасштабных. Хранимой информации о широкомасштабных операциях недостаточно широкомасштабных операциях недостаточно для восстановления после сбоев. Модель не для восстановления после сбоев. Модель не поддерживает восстановление на выбранный поддерживает восстановление на выбранный момент времени.момент времени.

►Данная модель позволяет сократить место Данная модель позволяет сократить место для журнала транзакций.для журнала транзакций.

►При выборе данной модели также При выборе данной модели также необходимо периодически выполнять необходимо периодически выполнять резервное копирование журнала транзакций.резервное копирование журнала транзакций.

Page 21: Администрирование информационных систем

Простая модельПростая модель► При использовании простой модели восстановления в При использовании простой модели восстановления в

журнал транзакций записываются все операции, в том журнал транзакций записываются все операции, в том числе и широкомасштабные. числе и широкомасштабные.

► Но для восстановления данных на используется Но для восстановления данных на используется резервное копирование журнала транзакций, каждый резервное копирование журнала транзакций, каждый процесс контрольной точки усекает файл журнала. Это процесс контрольной точки усекает файл журнала. Это позволяет избежать переполнения журнала транзакций, позволяет избежать переполнения журнала транзакций, но при длинных транзакциях возможно переполнение но при длинных транзакциях возможно переполнение журнала.журнала.

► При использовании простой модели БД может быть При использовании простой модели БД может быть восстановлена только до момента, когда была сделана восстановлена только до момента, когда была сделана последняя резервная копия.последняя резервная копия.

► Системная БД Системная БД tempbd tempbd всегда использует простую модель. всегда использует простую модель. Пользовательские БД используют простую модель по Пользовательские БД используют простую модель по умолчанию, однако данный режим можно изменить.умолчанию, однако данный режим можно изменить.

Page 22: Администрирование информационных систем

Выбор модели Выбор модели восстановлениявосстановления

► С помощью С помощью MS SQL MS SQL Server Enterprise Server Enterprise Manager Manager для для выбранной БД выбранной БД можно установить можно установить режим режим восстановлениявосстановления

Page 23: Администрирование информационных систем

Системные таблицы Системные таблицы SQL SQL ServerServer

► SQL Server SQL Server использует системные использует системные таблицы для управления работойтаблицы для управления работой СУБД и СУБД и связанными с ней таблицами.связанными с ней таблицами.

► Системные таблицы делятся на две Системные таблицы делятся на две группы:группы: системный каталог;системный каталог; каталог базы данных.каталог базы данных.

►Изменение или удаление системных Изменение или удаление системных таблиц повлечь за собой неполадки в таблиц повлечь за собой неполадки в работе работе SQL ServerSQL Server..

Page 24: Администрирование информационных систем

Системный каталогСистемный каталог

►Системный каталог включает в себя Системный каталог включает в себя системные таблицы, используемые системные таблицы, используемые СУБД для управления системой.СУБД для управления системой.

►Системный каталог существует Системный каталог существует только в БД только в БД mastermaster..

►Системный каталог содержит Системный каталог содержит метаданные, относящиеся ко всему метаданные, относящиеся ко всему экземпляру экземпляру SQL Server SQL Server и параметры и параметры системы.системы.

Page 25: Администрирование информационных систем

Таблицы системного Таблицы системного каталогакаталога

Системная Системная таблицатаблица

ОписаниеОписание

SysaltfilesSysaltfiles Содержит строку информации о каждом файле БДСодержит строку информации о каждом файле БД

SysconfiguresSysconfigures Содержит строку информации о системных Содержит строку информации о системных параметрах, выбранных до запуска параметрах, выбранных до запуска SQL Server SQL Server и и динамически настроенных после запускадинамически настроенных после запуска

SysdatabasesSysdatabases Содержит строку информации для каждой БДСодержит строку информации для каждой БД

SysdevicesSysdevices Содержит строку о каждом созданном устройстве Содержит строку о каждом созданном устройстве резервного копирования, включая логические и резервного копирования, включая логические и физические имена файловфизические имена файлов

SyslockinfoSyslockinfo Содержит строку информации о каждом запросе на Содержит строку информации о каждом запросе на блокировку объекта БДблокировку объекта БД

SysloginsSyslogins Содержит строку информации о каждой учетной Содержит строку информации о каждой учетной записизаписи

SysmessagesSysmessages Содержит строку информации о каждой возвращаемой Содержит строку информации о каждой возвращаемой системной ошибкесистемной ошибке

SysperfinfoSysperfinfo Содержит строку информации для каждого счетчика Содержит строку информации для каждого счетчика производительностипроизводительности

Page 26: Администрирование информационных систем

Каталог базы данныхКаталог базы данных► Каталог базы данных состоит из системных таблиц, используемых для Каталог базы данных состоит из системных таблиц, используемых для

управления отдельной БД. В каждой БД имеется набор таких таблиц.управления отдельной БД. В каждой БД имеется набор таких таблиц.

Системная таблицаСистемная таблица ОписаниеОписание

SyscommentsSyscomments Содержит строку информации для каждого Содержит строку информации для каждого представления представления (view)(view), правила , правила (rules)(rules), , значения по умолчанию и др. объектов. значения по умолчанию и др. объектов. Изменять или удалять значения в полях Изменять или удалять значения в полях данной таблицы нельзя.данной таблицы нельзя.

SysindexesSysindexes Содержит строку информации о каждом Содержит строку информации о каждом индексе и таблице БДиндексе и таблице БД

SysobjectsSysobjects Содержит строку информации для каждого Содержит строку информации для каждого объекта БДобъекта БД

SysusersSysusers Содержит информацию о каждом Содержит информацию о каждом пользователе или группе пользователей БДпользователе или группе пользователей БД

Page 27: Администрирование информационных систем

Системные хранимые Системные хранимые процедурыпроцедуры

►Системные хранимые процедуры – Системные хранимые процедуры – процедуры составленные из процедуры составленные из операторов операторов T-SQLT-SQL, поставляемые , поставляемые вместе с вместе с SQL ServerSQL Server. .

►Системные процедуры работают с Системные процедуры работают с системными таблицами, позволяют системными таблицами, позволяют получить системную информацию и получить системную информацию и выполнять задачи выполнять задачи администрирования БД.администрирования БД.

Page 28: Администрирование информационных систем

Использование системных Использование системных хранимых процедурхранимых процедур

Системная хранимая Системная хранимая процедурапроцедура

ОписаниеОписание

SP_configure [‘name’,’value’]SP_configure [‘name’,’value’] Получение и изменение параметров настройки Получение и изменение параметров настройки экземпляра экземпляра SQL ServerSQL Server

SP_dboption [‘db’, ‘parameter’, SP_dboption [‘db’, ‘parameter’, ‘value’]‘value’]

Получение и изменение значений параметров БДПолучение и изменение значений параметров БД

SP_help [‘object’]SP_help [‘object’] Получение информации об отдельном объекте БДПолучение информации об отдельном объекте БД

SP_depends [‘object’]SP_depends [‘object’] Получение информации о зависимости объектов БДПолучение информации о зависимости объектов БД

SP_helpdb [‘db’]SP_helpdb [‘db’] Получение информации о заданной БД (всех БД)Получение информации о заданной БД (всех БД)

SP_helpfile [‘file name’]SP_helpfile [‘file name’] Получение физического имя и атрибутов Получение физического имя и атрибутов указанного файлауказанного файла

SP_lock [‘id1’, , ‘id2’]SP_lock [‘id1’, , ‘id2’] Вывод информации о текущих блокировкахВывод информации о текущих блокировках

SP_monitorSP_monitor Вывод информации о занятости Вывод информации о занятости SQL Server SQL Server с начала с начала его работыего работы

SP_spaceused [‘object’, SP_spaceused [‘object’, ‘updateusage’]‘updateusage’]

Вывод информации о числе записей, дисковом Вывод информации о числе записей, дисковом пространстве и т.д.пространстве и т.д.

SP_statistics [‘table’, ‘owner’, ‘id’, SP_statistics [‘table’, ‘owner’, ‘id’, ‘index’]‘index’]

Вывод данных обо всех индексах и информацию о Вывод данных обо всех индексах и информацию о таблицахтаблицах

SP_who [‘user’]SP_who [‘user’] Вывод информации обо всех пользователях и Вывод информации обо всех пользователях и процессахпроцессах

Page 29: Администрирование информационных систем

Системные функцииСистемные функции► Системные функции – набор встроенных функций, позволяющих обращаться к Системные функции – набор встроенных функций, позволяющих обращаться к

системным таблицам при помощи операторов системным таблицам при помощи операторов T-SQLT-SQL и получать специфические и получать специфические данные о значениях параметров, объектах и настройках.данные о значениях параметров, объектах и настройках.

Системная функцияСистемная функция ОписаниеОписание

DATABASEPROPERTYEX DATABASEPROPERTYEX (‘db’,’property’)(‘db’,’property’)

Возвращает значения свойства БДВозвращает значения свойства БД

DB_ID(‘db’)DB_ID(‘db’) Возвращает идентификатор БДВозвращает идентификатор БД

DB_NAME(id_bd)DB_NAME(id_bd) Возвращает имя БДВозвращает имя БД

FILE_ID(‘file name’)FILE_ID(‘file name’) Возвращает идентификатор файлаВозвращает идентификатор файла

FILE_NAME(id_file)FILE_NAME(id_file) Возвращает логическое имя файлаВозвращает логическое имя файла

FILEPROPERTY(‘file’,’property’)FILEPROPERTY(‘file’,’property’) Возвращает значение свойства файлаВозвращает значение свойства файла

GET DATE()GET DATE() Возвращает текущую системную датуВозвращает текущую системную дату

HOST_NAME()HOST_NAME() Возвращает имя хостаВозвращает имя хоста

STATS_DATE(id_table,id_ind)STATS_DATE(id_table,id_ind) Возвращает дату обновления Возвращает дату обновления информации для индексаинформации для индекса

USER_ID(‘user_name’)USER_ID(‘user_name’) Возвращает идентификатор Возвращает идентификатор пользователяпользователя

USER_NAME(id_user)USER_NAME(id_user) Возвращает имя пользователя БДВозвращает имя пользователя БД

Page 30: Администрирование информационных систем

Представление Представление информационной схемыинформационной схемы

► Представления информационной схемы – сведения системного каталога и Представления информационной схемы – сведения системного каталога и каталога БД в соответствии со стандартами каталога БД в соответствии со стандартами ANSI SQL-92ANSI SQL-92..

Представление Представление информационной схемыинформационной схемы

ОписаниеОписание

Information_schema.columnsInformation_schema.columns Возвращает список полей, доступных Возвращает список полей, доступных текущему пользователютекущему пользователю

Information_schema.schemataInformation_schema.schemata Возвращает список БД, доступных Возвращает список БД, доступных текущему пользователютекущему пользователю

Information_schema.tablesInformation_schema.tables Возвращает список таблиц текущей БД, Возвращает список таблиц текущей БД, доступных текущему пользователюдоступных текущему пользователю

Information_schema.table_privilegInformation_schema.table_privilegeses

Возвращает список привилегий, Возвращает список привилегий, предоставленных текущему предоставленных текущему пользоватлеюпользоватлею

Information_schema.view_table_usInformation_schema.view_table_usageage

Возвращает список таблиц текущей БД, Возвращает список таблиц текущей БД, используемых в проекцияхиспользуемых в проекциях