SQL Server 2000
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: задачи курсовой работы, культурология как наука
| Добавил(а) на сайт: Цуканов.
Предыдущая страница реферата | 14 15 16 17 18 19 20 21 22 23 24 | Следующая страница реферата
Для журнала транзакций или его файлов сжатие происходит не сразу, а при последующем выполнении операции усечения (truncate) или резервного копирования.
Управление свойствами базы данных
Помимо перечисленных выше физических параметров (описывающих в основном имена, размеры, положение и другие характеристики файлов) база данных имеет еще и логические параметры. К этим параметрам относятся выполнение автоматического усечения журнала транзакций, автоматическое создание и обновление статистики, возможность выполнения вложенных триггеров и другие. Управление этими параметрами конфигурации базы данных сводится к их разрешению или запрещению и осуществляется с помощью системной хранимой процедуры sp_dboption. Назначение основной части параметров было рассмотрено в главе 11. Синтаксис хранимой процедуры sp_dboption следующий: sp_dboption [[@dbname =] "database"] [. [@optname =] "optionjiame"] [.
[@optva"lue =] "value"]
Аргумент "database" содержит имя базы данных, в которой необходимо выполнить изменение конфигурации. Аргумент "value" определяет значение параметра. Возможны два варианта: значение ON или TRUE (параметра задан) и значение OFF или FALSE (параметра не задан). Аргумент "option_name" определяет имя параметра, который необходимо изменить. Возможные значения этого аргумента приведены в табл. с кратким указанием назначения каждого параметра.
Таблица. Параметры конфигурации базы данных
Параметр
Назначение'
a uto create statistics auto update statistics autoclose autoshrink ANSI null default ANSI nulls ANSI warning concat null yields null
cursor close on commit dbo use only default to local cursor merge publish offline published quoted identifier
read only recursive triggers select into/bulk copy
Автоматическое создание статистики
Автоматическое обновление статистики
Автоматическое закрытие базы данных
Автоматическое сжатие базы данных
Разрешение значения NULL по умолчанию для столбца
Управление сравнением величин NULL
Появление сообщений об ошибке
Значение ON означает, что результатом объединения величин NULL будет
значение NULL
Закрытие курсора при завершении транзакции
Использование базы данных только владельцем
Создание по умолчанию локального курсора
База данных может публиковаться для репликации сведением
Отключение базы данных
Разрешение публикации базы данных
Разрешение использования двойных кавучек для указания идентификаторов
Использование базы данных только для чтения Разрешение выполнения вложенных
триггеров
Разрешение выполнения команд копирования, не регистрируемых
в журнале транзакций___________________________
продолжение А
данных
Таблица (продолжение)
Параметр Назначение
subscribed Разрешение подписки на публикацию
single user Использование базы данных в режиме поддержки одного
пользователя torn page detection Обнаружение поврежденных страниц trunc. log on chkpt____Усечение журнала транзакций при выполнении контрольной точки
Например, для переключения базы данных pubs в однопользовательский режим
нужно выполнить следующую команду: ЕХЕС sp_dboption "pubs", "single user",
"true"
Часть установленных администратором параметров конфигурации базы данных
может быть изменена пользователем с помощью команды SET на уровне
соединения, транзакции, хранимой процедуры, пакета команд и т. д. Эти
изменения действуют только в пределах соединения (транзакции, хранимой
процедуры и т. д.) и будут потеряны сразу же после отсоединения
пользователя. При последующем соединении снова будут использоваться
параметры, установленные администратором.
Использование системной хранимой процедуры sp_dboption для управления
свойствами базы данных было единственным вариантом в предыдущих версиях.
Даже при работе с SQL Server 7.0 администратор имел в своем распоряжении
только эту процедуру. В SQL Server 2000 изменение параметров базы данных
также может выполняться с помощью команды ALTER DATABASE с аргументом SET
. Как нетрудно догадаться, свойства базы данных, которые
предполагается изменить, указываются с помощью конструкции , имеющей следующий синтаксис:
::=
< state_option >
[ < cursor_option >
|
| < sql_option >
| < recovery_option >
< state_option > .- .- =
SINGLEJJSER
| OFFLINE
| READJ3NLY
< termination >
ROLLBACK AFTER integer [ SECONDS ]
| ROLLBACK IMMEDIATE
| NO WAIT
< cursor_option > : : =
CURSOR_CLOSE_ON_COMMIT OFF
| (CURSOR_DEFAULT LOCAL
OFF
| OFF
| AUTO_SHRINK ON
| OFF
< sql_option > ::=
ANSI_NULL_DEFAULT ON
| ANSI_NULLS ON j ANSI_PADDING OFF j ANSIJIARNINGS ON
| ARITHABORT ON
| CONCAT_NULL_YIELDS_NULL OFF
| NUMERIC_ROUNDABORT OFF
| QUOTEDJDENTIFIER { ON J OFF }
| RECURSIVEJRIGGERS OFF
< recovery_option > ::=
RECOVERY BULK_LOGGED
| TORN_PAGE_DETECTION ON
Практически все перечисленные аргументы были рассмотрены либо в этой главе, либо в главе 11. Поэтому мы не будет лишний раз на них останавливаться.
Присоединение и отсоединение базы данных
SQL Server 2000 позволяет отсоединять (detach) базы данных от сервера.
Пользователи не могут обращаться к отсоединенным базам данных. Описание отсоединенной базы данных, включая описание файлов журнала транзакций и самой базы данных, удаляется из системных таблиц SQL Server и, таким образом, сервер перестает ее воспринимать. Позже эту базу данных можно присоединить (attach) на этом же или другом сервере.
Отсоединение и присоединение в основном используются для переноса баз данных с одного диска или сервера на другой. Если требуется скопировать базу данных на один или несколько удаленных серверов, можно выполнить резервное копирование базы данных и разослать копии. Другой способ — выполнить отсоединение базы данных и разослать пользователям все ее файлы. У себя на сервере пользователи смогут выполнить присоединение базы данных и сразу же начать работать с ней. Процедура отсоединения и присоединения занимает гораздо меньше времени, чем создание и восстановление резервной копии. Кроме того, отсоединенную базу данных можно записать на компакт-диски и разослать пользователям. Пользователи смогут работать с базой данных непосредственно с компакт-диска в режиме
«только для чтения». Такой подход особенно эффективен при рассылке каталогов, которые не должны изменяться.
Если планируется скопировать базу данных на компакт-диск, предварительно необходимо установить все ее группы файлов в режим «только для чтения». Для этого используется команда ALTER DATABASE MODIFY
FILEGROUP filegroup_name READONLY.
Выполнять операции присоединения и отсоединения базы данных могут только члены фиксированной роли сервера sysadmin. Эти права не могут быть переданы никаким другим способом, кроме как включением пользователей в эту фиксированную роль сервера.
Для отсоединения базы данных используется следующая хранимая процедура: sp_detach_db [@dbname =] "dbname" [, [@skipchecks =] "skipchecks"]
Аргумент "dbname" указывает имя базы данных, которую необходимо отсоединить. Аргумент "skipchecks" управляет обновлением статистики при отсоедине- нии. Если значение этого аргумента равно TRUE, то обновление статистики пропускается, если же указывается FALSE, то обновление статистики будет выполнено. Для отсоединения базы данных pubs нужно использовать следующую команду:
ЕХЕС sp_detach_db "pubs"
После отсоединения базы данных вы получаете в свое распоряжение набор обычных файлов, с которыми можно выполнять обычные операции, в том числе и архивирование с использованием утилиты NT Backup.
Для присоединения отсоединенной базы данных используется системная хранимая процедура sp_attach_db: sp_attach_db [@dbname =] "dbname", [(Pfilenamel =] "filenameji"
[,...16]
Аргумент "filename_n" должен содержать полный путь к первичному файлу присоединяемой базы данных. Описание остальных файлов базы данных хранится в первичном файле. Если положение этих файлов было изменено, то необходимо явно указать их положение при вызове хранимой процедуры — через запятую в аргументе "f i lename_n".
Количество файлов, которое можно присоединить с помощью хранимой процедуры sp_attach_db, ограничивается 16. Если необходимо выполнить подключение базы данных с большим количеством файлов, используется команда CREATE DATABASE FOR ATTACH.
Для присоединения базы данных pubs нужно выполнить следующую команду: sp_detach_db"pubs".
"d:mssqldatapubs.mdf" .
"d:mssqldatapubs_log.Idf"
Если база данных состоит из одного файла данных и одного файла журнала транзакций, то ее можно присоединить, указав только первичный файл. База данных должна быть отсоединена от сервера с помощью хранимой процедуры sp_detach_db. Для присоединения такой базы данных используется следующая хранимая процедура: sp_attach_sing1e_file_db [@dbname =] "dbname".
[@physname =] "physicaljiame"
Сервер автоматически создаст для базы данных файл журнала транзакций и выполнит удаление из базы данных поддержку репликации, если она была установлена.
Для присоединения базы данных pubs с использованием только первичного файла необходима следующая команда: sp_attach_single_file_db "pubs",
"d:mssqldatapubs.mdf"
Передача прав владения
Если администратор баз данных вашей компании увольняется и ему на смену приходит другой человек, необходимо передать права владения всеми объектами, включая базы данных, новому администратору.
Для передачи прав владения базой данных от одного пользователя другому используется следующая хранимая процедура: sp_changedbowner [(Ploginame =] "login"
[,[@map =] remap_al1as_f1ag]
Рассмотрим назначение каждого из аргументов хранимой процедуры. О
[Ologiname =] "login". Имя учетной записи пользователя, которого требуется сделать владельцем базы данных. Эта учетная запись не должна иметь доступа к базе данных ни через псевдоним, ни через отображение в пользователя базы данных. В противном случае перед выполнением хранимой процедуры необходимо сначала удалить все отображения учетной записи в пользователя базы данных.
О [map =] remap_al i as_fl ag. Этот аргумент может принимать значение
TRUE или FALSE. Значение TRUE означает, что учетная запись старого владельца базы данных будет отображаться в учетную запись нового владельца. Если задано FALSE, учетная запись старого владельца уничтожается. Если этот аргумент опускается, то есть принимает значение
NULL, то все существующие dbo будут отражены в учетную запись нового владельца базы данных. Хранимая процедура sp_changedbowner должна выполняться в контексте базы данных, владельца которой необходимо изменить. Например, для изменения владельца базы данных KHSU необходимо выполнить следующую команду:
USE khsu
EXEC sp_changedbowner "MATRIXXAdmlnistrator"
Изменение имени базы данных
При рассмотрении команды ALTER DATABASE мы уже говорили, что она позволяет изменить имя базы данных. Однако для изменения имени базы данных также можно использовать следующую хранимую процедуру: sp_renamedb [@old_name =] "old_name". [@new_name =] "new_name"
Аргумент "old_name" должен содержать старое имя базы данных. Новое же имя указывается с помощью аргумента "new_name".
Права на выполнение этой хранимой процедуры имеют только члены фиксированной роли сервера sysadmin.
Просмотр свойств базы данных
Часто бывает необходимо получить исчерпывающую информацию о структуре и параметрах базы данных. В этом разделе будут рассмотрены средства
Transact-SQL, с помощью которых можно получить различную информацию о базе данных. Для просмотра значения параметров конфигурации базы данных, установленных с помощью хранимой процедуры sp_dboption или средствами
Enterprise Manager, можно использовать системную хранимую процедуру sp_dboption с указанием только имени базы данных. Например, для получения информации о параметрах базы данных pubs можно выполнить следующую команду: EXEC sp_dbopt1on "pubs"
Будет возвращен примерно следующий результат:
The following options are set:
published
trunc. log on chkpt. torn page detection auto create statistics auto update
statistics
Как видно, возвращается список только тех параметров, которые были
установлены. Для получения значения конкретного параметра необходимо
указать не только имя базы данных, но и имя интересующего параметра
конфигурации:
ЕХЕС spjboption "pubs", "ANSI null default"
В результате выполнения этой команды будет получен примерно следующий
результат:
OptionName CurrentSetting
ANSI null default off
Если выполнить хранимую процедуру sp_dboption вообще без аргументов, то
она выдаст список всех доступных параметров конфигурации:
Settable database options:
ANSI null default
ANSI nulls
ANSI padding
ANSI warnings
arithabort
auto create statistics
auto update statistics
autoclose
autoshrink
concat null yields null
cursor close on commit
dbo use only
default to local cursor
merge publish
numeric roundabort
offline
published
quoted identifier
read only recursive triggers
select into/bulkcopy single user
subscribed
torn page detection
trunc. log on chkpt.
Рекомендуем скачать другие рефераты по теме: шпаргалки по педагогике, рефераты без регистрации.
Категории:
Предыдущая страница реферата | 14 15 16 17 18 19 20 21 22 23 24 | Следующая страница реферата