
- •Основные функции администратора баз данных
- •Основные сведения о sql 2000 Server. Ключевые характеристики и назначение Microsoft sql Server 2005. Основные компоненты.
- •Создание пользовательских баз данных. Создание базы данных из sql server management studio. Создание базы данных при помощи команды create daabase.
- •Системные базы данных.
- •Файлы база данных и журналы транзакций. Применение файловых групп. Режимы работы базы данных. Расширенные свойства баз данных
- •Выполнение служебных операций с базами данных: увеличение размера базы данных, уменьшение размера базы данных, перенос файлов баз данных, переименование, удаление базы.
- •7 Терминология и основы системы безопасности sql Server 2005
- •8 Логины sql Server 2005 Выбор типа логина
- •Создание логинов в sql Server 2005, create login, парольные политики, свойства логинов
- •Логины, создаваемые по умолчанию
- •9 Серверные роли. Разрешения на уровне сервера
- •10 Пользователь и схема
- •11 Создание, изменение и удаление пользователей базы данных
- •Встроенные пользователи базы данных
- •12 Предоставление прав на объекты в базе данных
- •13.Роли приложений. Изменение контекста выполнения. Выражение execute as.
- •14.Основы резервного копирования sql server 2005. Типы резервного копирования.
- •15.Основы восстановления баз данных. Проведение восстановления
- •16. Режимы восстановления баз данных. Оперативный режим восстановления. Восстановление отдельных страниц. Восстановление системных баз данных.
- •Восстановление базы данных в оперативном режиме
- •Восстановление отдельных страниц базы данных
- •Восстановление системных баз данных
- •17 Автоматическая доставка журналов
- •18. Зеркальное отображение баз данных.
- •19 Управление транзакциями (не совсем!!!!!)
- •21. Репликация баз данных. Планирование, реализация, мониторинг и управление репликацией. Типы репликации.(неполное)
- •22 Средства администрирования
- •23. Применение sqlcmd.
- •24 Мониторинг производительности sql Server 2005
- •Средства для мониторинга и анализа производительности
10 Пользователь и схема
В SQL Server 2000 и в более старых версиях объект пользователя базы данных нес на себе двойную нагрузку: во-первых, он использовался для предоставления разрешений в базе данных, а, во-вторых, имя пользователя базы данных использовалось для идентификации объектов. Например, обращение к таблице по полному ее имени могло выглядеть так:
SELECT * FROM MyServer.MyDatabase.User1.Table1;
Если разработчик использовал в коде приложения просто имя объекта (например, SELECT * FROM Table1), то при подключении к серверу из этого приложения от имени другого пользователя могли возникнуть проблемы, поскольку вместо User1 подставлялось текущее имя пользователя (а если объект с таким полным именем не был обнаружен, то имя специального пользователя DBO).
В SQL Server 2005 эти две функции разделены. Для предоставления разрешений в базе данных, как и раньше, используется объект пользователя, а для именования объектов в базе данных используется специальный объект схемы. Запрос с использованием полного формата имени в SQLServer 2005 теперь должен выглядеть так:
SELECT * FROM MyServer.MyDatabase.Schema1.Table1;
Схема формально определяется как набор объектов в базе данных, объединенных общим пространством имен. Проще всего представить себе схему как некий логический контейнер в базе данных, которому могут принадлежать таблицы, представления, хранимые процедуры, пользовательские функции, ограничения целостности, пользовательские типы данных и другие объекты базы данных. Этот контейнер удобно использовать как для именования объектов и их логической группировки, так и для предоставления разрешений. Например, если в базе данных есть набор таблиц с финансовой информацией, удобно поместить их в одну схему и предоставлять пользователям разрешения на эту схему (т. е. на этот набор таблиц).
Пользователю можно назначить схему по умолчанию. В эту схему SQL Server будет по умолчанию помещать объекты, которые создает этот пользователь. Кроме того, искать объекты, к которым обращается пользователь (например, в случае запроса вида SELECT * FROM Table1), SQL Serverтакже будет в первую очередь в его схеме по умолчанию.
Применение схемы дает ряд дополнительных преимуществ по сравнению со старым подходом:
- нескольким пользователям можно назначить одну и ту же схему по умолчанию, что может быть удобно при разработке приложений;
- несколько пользователей (через группы Windows или роли баз данных) могут владеть одной и той же схемой. При этом один пользователь может являться владельцем сразу нескольких схем;
- при удалении пользователя из базы данных не придется переименовывать его объекты;
- как уже говорилось, упрощается предоставление разрешений для наборов объектов в базе данных.
Создание схемы производится из контейнера Имя_базы_данных | Security | Schemas в Management Studio или при помощи команды CREATE SCHEMA.
11 Создание, изменение и удаление пользователей базы данных
Создание пользователей баз данных SQL Server 2005, CREATE USER, свойства пользователей
Создать пользователя базы данных можно:
- на графическом экране из контейнера Имя_базы_данных | Security | Users в Management Studio;
- при помощи команды CREATE USER (хранимая процедура sp_adduser, которая использовалась для этой цели в предыдущих версиях SQL Server, оставлена только для обеспечения обратной совместимости). Например, команда на создание пользователя User1, которому будет соответствовать логин SQL Server Login1 со схемой по умолчанию dbo, может выглядеть так:
CREATE USER User1 FOR LOGIN Login1 WITH DEFAULT_SCHEMA = dbo;
При создании пользователя вам нужно будет указать:
- имя пользователя (User name), к которому применяются те же правила, что и для других объектов SQL Server;
- логин (SQL Server или Windows), которой будет назначен пользователю этой базы данных. После создания пользователя назначенный ему логин изменять будет нельзя. Можно создать пользователя, которому не будет назначен никакой логин (при помощи переключателя Withoutlogin). Такому пользователю уже не получится назначить логин. Пользователи этого типа — без логинов — используются только для дополнительной настройки безопасности в Service Broker. Отметим также, что если какой-то логин уже был назначен пользователю, то другому пользователю одновременно назначить его нельзя;
- сертификат (Certificate name) или асимметричный ключ (Key name);
- схему по умолчанию (Default schema);
- для каких схем этот пользователь будет являться владельцем (Owned schemas);
- какие роли базы данных (Database roles) будут ему назначены.
Обязательных параметра всего два — имя пользователя и логин.
На вкладке Securables пользователю можно сразу же предоставить разрешения на объекты базы данных. Речь о предоставлении разрешений пойдет в следующих разделах. Вкладка Extended Properties позволяет определить дополнительные пользовательские свойства для данного объекта. Применяются они для тех же целей, что и расширенные свойства баз данных (см. разд. 4.8).
Изменение свойств пользователя и его удаление производится из того же контейнера в Management Studio, что и создание пользователя, а также при помощи команд ALTER USER/DROP USER. Удалить пользователя, владеющего какими-либо объектами в базе данных, нельзя.