К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

Не могу сделать копию базы в другую базу на том же сервере MS SQL 2008

Гость
0 - 20.06.2017 - 18:33
set @BACKUPDataBaseName = 'C2H5OH'
set @RESTOREDataBaseName = 'C2H5OH_TEST'
set @BackupFileName = 'D:\SQL_Data\BACKUP\C2H5OH.bak'

BACKUP DATABASE @BACKUPDataBaseName
TO DISK = @BackupFileName


RESTORE DATABASE @RESTOREDataBaseName
FROM DISK =@BackupFileName
with move 'C2H5OH' to 'D:\SQL_Data\C2H5OH_TEST.mdf',
move 'C2H5OH_log' to 'D:\SQL_Data\C2H5OH_TEST_log.ldf'


пишет :
Резервный набор данных содержит копию базы данных, отличной от существующей базы данных "C2H5OH_TEST".

пробую :
RESTORE ... WITH REPLACE

пишет :
Файл "d:\SQL_DATA\C2H5OH.mdf" заменить невозможно. Он используется базой данных "C2H5OH".

Невозможно восстановить файл "C2H5OH" в "d:\SQL_DATA\C2H5OH.mdf". Используйте WITH MOVE для определения допустимого местоположения файла.

Файл "d:\SQL_DATA\C2H5OH_log.LDF" заменить невозможно. Он используется базой данных "C2H5OH".

Невозможно восстановить файл "C2H5OH_log" в "d:\SQL_DATA\C2H5OH_log.LDF". Используйте WITH MOVE для определения допустимого местоположения файла.



Гость
1 - 20.06.2017 - 22:42
RESTORE DATABASE @RESTOREDataBaseName
FROM DISK =@BackupFileName WITH FILE = 2,
move 'C2H5OH' to 'D:\SQL_Data\C2H5OH_TEST.mdf',
move 'C2H5OH_log' to 'D:\SQL_Data\C2H5OH_TEST_log.ldf',
NOUNLOAD,
REPLACE,
STATS = 5
Как то так
Гость
2 - 21.06.2017 - 13:33
Скрипт поправил :

set @BackupFileName = 'D:\SQL_Data\BACKUP\C2H5OH.bak'
BACKUP DATABASE @BACKUPDataBaseName
TO DISK = @BackupFileName

RESTORE DATABASE @RESTOREDataBaseName
FROM DISK =@BackupFileName
WITH FILE = 2,
move 'C2H5OH' to 'D:\SQL_Data\C2H5OH_TEST.mdf',
move 'C2H5OH_log' to 'D:\SQL_Data\C2H5OH_TEST_log.ldf',
NOUNLOAD,
REPLACE,
STATS = 5

Отрабатывает .....

Но инфа копируется какая то старая - не срез базы на текущую дату
Гость
3 - 21.06.2017 - 15:10
(2) Что сложно на MSDN параметры почитать?
BACKUP DATABASE @BACKUPDataBaseName, INIT
так перезапишет все существующие беки в этом файле
Если нужно восстановить на дату - нужно читать параметры RESTORE


К списку вопросов






Copyright ©, Все права защищены