21-й час Работа с системным каталогом
В ходе этого урока мы с вами поговорим о системном каталоге, в некоторых реализациях реляционных баз данных называемом также словарем данных (data dictionary). К концу урока вам станет ясно назначение и содержимое системного каталога и вы сможете извлекать из него необходимую информацию о базе данных с помощью команд, изученных в ходе предыдущих уроков. Системный каталог с информацией о самой базе данных в той или иной форме присутствует во всех главных реализациях реляционных баз данных. В ходе этого урока мы приводим списки наиболее важных элементов системных каталогов основных производителей реляционных баз данных.
Основными на этом уроке будут следующие темы.
• Что такое системный каталог?
• Как создается системный каталог?
• Содержимое системного каталога
• Таблицы системного каталога
• Доступ к данным системного каталога
• Обновление системного каталога
Что такое системный каталог?
Системный каталог - это набор таблиц и представлений, содержащих важную информацию о базе данных. Системный каталог имеется в любой базе данных. Информация в системном каталоге определяет структуру всей базы данных. Например, в системном каталоге хранятся операторы DDL (Data Definition Language - Язык определения данных) для всех таблиц базы данных. Схематически место системного каталога в базе данных показано на рис. 21.1.
Как видно из рис. 21.1, системный каталог фактически является частью базы данных. В базе данных имеются различные объекты, в частности, таблицы, индексы и представления. Системный каталог представляет собой группу объектов, содержащих определения других объектов базы данных и структуры самой базы данных, а также другую не менее важную информацию.
Системный каталог в зависимости от реализации может Делиться на логичные группы, чтобы обеспечить доступ к соответствующей информации не только администратору базы данных, но и другим заинтересованным пользователям. Например, пользователю может понадобиться информация о предоставленных ему привилегиях, но совсем не обязательно знать о внутренней структуре или внутренних процессах базы данных. Пользователь, как правило, обращается к системному каталогу за информацией о своих собственных объектах и привилегиях, а администратору базы данных может потребоваться информация о структуре любого объекта и информация о любом событии в базе данных. В некоторых реализациях в системном каталоге имеются такие объекты, которые оказываются доступными только для администратора базы данных. 
Рис. 21.1.Системный каталог
Системный каталог является главным источником информации о структуре и природе базы данных. Системный каталог помогает содержать базу данных в порядке не только администратору базы данных и ее пользователям, но и серверу базы данных.
В каждой реализации приняты свои соглашения по назначению имен таблицам и представлениям системного каталога. Но имена не так важны по сравнению с пониманием того, какие объекты этими именами представлены, какую информацию эти объекты содержат и как эту информацию можно извлечь
Как создается системный каталог?
Системный каталог создается либо автоматически при создании базы данных, либо администратором базы данных сразу же после ее создания. Например, в Oracle выполняется набор поставляемых производителем макросов SQL, которые атоматически создают доступные пользователям таблицы и представления системного каталога. Таблицы и представления системного каталога принадлежат системе, а не какой-нибудь отдельной схеме. Например, в Oracle владельцем системного каталога яшшется пользователь с именем SYS, имеющий права неограниченного доступа к базе данных. В Sybase системный каталог для сервера SQL размещается в базе данных MASTER.
Содержимое системного каталога
Системный каталог содержит массу информации, доступной многим пользователям и иногда используемой этими пользователями для своих собственных нужд. Системный каталог содержит информацию по следующим разделам.
• Учетные записи пользователей и установки по умолчанию.
• Привилегии и другая связанная с безопасностью информация.
• Статистика, характеризующая производительность системы.
• Размеры объектов.
Читать дальше