|
По материалам статьи Microsoft: "INF:
Moving SQL Server 7.0 Databases to a New
Location"
Информация в этой статье относится к Microsoft SQL Server версии 7.0 Эта статья описывает последовательность действий для
изменения места расположения баз данных и журналов регистрации
транзакций, а также системных баз данных для SQL Server
7.0. ОБРАТИТЕ ВНИМАНИЕ: Вы можете определить имя и текущее расположение всех файлов, используемых базой данных с помощью хранимой процедуры sp_helpfile: use Вы должны иметь единоличный доступ к перемещаемой базе
данных. Перемещение пользовательских баз данных Следующий пример перемещает базу данных, названную mydb,
которая имеет один файл mydb.mdf и один журнал Mydblog.ldf.
Если база данных, которую Вы перемещаете, имеет дополнительные
файлы данных или журналы, укажите их все через запятую в
хранимой процедуре sp_attach_db. При этом процедура
Sp_detach_db не изменяется, независимо от того, сколько
указанная в ней база данных содержит файлов, потому что этого
не предусматривает её синтаксис. use master Затем, скопируйте данные и журналы из текущего места
расположения (D:\Mssql7\Data) в новое расположение
(E:\Sqldata). use master Проверите изменение расположения файлов, используя sp_helpfile: use mydb Значения столбца имени файла должны показать его новое расположение. Перемещение баз MSDB, Pubs и Northwind Повторите ту же самую процедуру, как для перемещения пользовательских баз данных. Для MSDB, удостоверитесь, что SQL Server агент в это время не запущен. Иначе, хранимая процедура sp_detach_db вызовет сбои со следующим сообщением: Server: Msg 3702, Level 16, State 1, Line 0 Перемещение базы данных master Измените путь для базы данных master и её журналов в SQL Server Enterprise Manager. ОБРАТИТЕ ВНИМАНИЕ: Вы также можете произвольно изменять здесь расположение файла регистрации ошибок. Щелкните правой кнопкой мыши по SQL Server в Enterprise
Manager, и выберите пункт Properties в появившемся
меню. -dD:\MSSQL7\data\master.mdf -d - полный путь к файлу базы данных master. Измените эти значения следующим образом: Удалите текущие пути к файлам master.mdf и
Mastlog.ldf -dE:\SQLDATA\master.mdf Остановите SQL Server. Перемещение базы данных Model Чтобы переместить базу данных Model, SQL Server должен быть запущен с флагом трассировки 3608 так, чтобы это не вызвало регенерации всех баз данных кроме master. ОБРАТИТЕ ВНИМАНИЕ: У Вас не будете возможности в это время обращаться к любым пользовательским базам данных. При использовании этого флага трассировки Вы не должны исполнять никаких операций, кроме указанных ниже шагов. Чтобы добавить флаг трассировки 3608, как параметр запуска SQL Server, исполните следующее: В SQL Server Enterprise Manager щёлкните правой кнопкой
мыши по имени сервера и выберите Properties в появившемся
меню. use master Переместите файлы Model.mdf и Modellog.ldf из
D:\Mssql7\Data в E:\Sqldata. use master Удалите флаг трассировки - T3608 из блока параметров
запуска в Enterprise Manager. use model Перемещение Tempdb Вы можете перемещать файлы tempdb, используя инструкцию
ALTER DATABASE. use tempdb Логическое имя для каждого файла содержится в столбце Nаme.
Этот пример использует заданные по умолчанию имена файла
tempdev и templog. use master Alter database tempdb modify file (name = templog, filename
= 'E:\Sqldata\templog.ldf') Вы должны получить следующие сообщения, подтверждающие изменение: File 'tempdev' modified in sysaltfiles. Delete old file after restarting SQL Server. File 'templog' modified in sysaltfiles. Delete old file after restarting SQL Server. Использование sp_helpfile для tempdb не будет подтверждать
внесённые изменения, пока Вы не перезапустите SQL
Server. Для получения дополнительной информации, изучите указанные ниже статьи Microsoft Knowledge Base: Q274188
- PRB: Troubleshooting Orphaned Users Topic in BOL
Incomplete |
Перевод: Александр Гладченко 2001-2004г. |