Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SQL2008_Administration.doc
Скачиваний:
91
Добавлен:
08.11.2018
Размер:
3.38 Mб
Скачать

3.6.2 Уменьшение размера базы данных

Уменьшение размера файлов данных можно произвести двумя способами:

  1. Используя графический интерфейс SQL Server Management Studio, в контекстном меню БД выбрать команду TasksShrink и указать, что мы хотим уменьшить: все файлы данных БД или только выбранный нами файл;

  2. При помощи команд DBCC SHRINKDATABASE (для всех файлов базы данных) или DBCC SHRINKFILE (для отдельного файла).

При уменьшении размера файлов баз данных нужно учитывать следующие моменты:

  • при уменьшении размера всей БД нельзя сделать ее меньше исходного размера, определенного при создании. Но добиться такого результата вполне можно, если сжимать файлы по отдельности;

  • само уменьшение может производиться в четырех режимах:

  1. по умолчанию: все используемые страницы переносятся в начало файла и пустое пространство высвобождается для использования операционной системой;

  2. в режиме NOTRUNCATE — все используемые страницы переносятся в начало файла, но пустое пространство не возвращается операционной системе;

  3. в режиме TRUNCATEONLY — страницы внутри файла не переносятся, файл уменьшается только за счет пустого пространства в конце;

  4. в режиме EMPTYFILE — файл не уменьшается, но SQL Server 2008 пытается перенести все используемые в нем страницы в другие файлы той же файловой группы.

Получить информацию о наличие свободного пространства в файлах данных можно 2 способами:

  • Используя окно Shrink File (уменьшения файла) SQL Server Management Studio.

  • используя команды DBCC SHOWFILESTATS (для файлов журналов транзакций — DBCC SQLPERF(LOGSPACE)).

3.6.3 Перенос файлов базы данных

Перенос файлов базы данных производится следующим образом:

  1. Переводим базу данных в автономный режим, например ALTER DATABASE testdb SET OFFLINE

  2. Средствами ОС переносим файлы базы данных в новое место;

  3. Передаем SQL Server информацию о новом размещении файлов базы данных: ALTER DATABASE testdb MODIFY FILE ( NAME = testdb, FILENAME = 'D:\testdb1.mdf')

  4. Возвращаем базу данных в обычный режим: ALTER DATABASE testdb SET ONLINE

Таким способом можно переместить как пользовательские, так и системные БД.

3.6.4 Переименование базы данных

Переименовать БД можно тремя способами, отключив предварительно от нее всех пользователей:

  • на графическом экране — из контекстного меню БД в SQL Server Management Studio выбрать команду Rename;

  • при помощи команды ALTER DATABASE, например: ALTER DATABASE currentdb MODIFY NAME = archivedb

  • при помощи хранимой процедуры sp_renamedb, например: SP_RENAMEDB 'currentdb', 'archivedb'

3.6.5 Изменение владельца базы данных

Для смены владельца БД в SQL Server 2008 используется только хранимая процедура sp_changedbowner.

Например: SP_CHANGEDBOWNER 'user1'

Произвести смену владельца для системных базы данных MASTER, MODEL и TEMPDB невозможно.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]