Имя: Пароль:
1C
1С v8
Восстановление базы SQL в другую базу
0 Мятежник
 
13.02.14
11:43
Всем привет! восстанавливаю базу бэкап от Base_1C  в базу Buh.

RESTORE DATABASE Buh
FROM DISK = 'D:\backup_2014_01_27.bak'
WITH REPLACE, RECOVERY, STATS = 10,
MOVE 'Buh' TO 'D:\DataBase\SQL_Data\Buh.mdf',
MOVE 'Buh_log' TO 'D:\DataBase\SQL_Log\Buh_log.ldf'

пишет:
Сообщение 1834, уровень 16, состояние 1, строка 1
Файл "D:\DataBase\SQL_Data\Base_1C.mdf" заменить невозможно. Он используется базой данных "Base_1C".
Сообщение 3156, уровень 16, состояние 4, строка 1
Невозможно восстановить файл "Base_1C" в "D:\DataBase\SQL_Data\Base_1C.mdf". Используйте WITH MOVE для определения допустимого местоположения файла.
Сообщение 1834, уровень 16, состояние 1, строка 1
Файл "D:\DataBase\SQL_Log\Base_1C_log.ldf" заменить невозможно. Он используется базой данных "Base_1C".

ведь я же поставил этот параметр MOVE. что не так?
1 ДенисЧ
 
13.02.14
11:48
делай из GUI, не выпендривайся...
2 Мятежник
 
13.02.14
11:50
так через интерфейс тоже не могу сделать, тоже самое...
3 ДенисЧ
 
13.02.14
11:51
показывай картинки настройки гуя
4 Мятежник
 
13.02.14
11:58
куда картинку скинуть?
5 Ёпрст
 
гуру
13.02.14
12:03
ipicture.ru
ссылку сюда
6 Мятежник
 
13.02.14
12:06
7 PR
 
13.02.14
12:07
Удали базу и создай заново из архива.
8 Господин ПЖ
 
13.02.14
12:08
(6) replace галку поставл?
9 Господин ПЖ
 
13.02.14
12:08
(7) Рома, ты упорот...
10 PR
 
13.02.14
12:09
Ага. И еще пиво пит и водку жрат.
11 Мятежник
 
13.02.14
12:10
(7) ну это крайний вариант
(8) конечно, и в скрипте она есть
12 Господин ПЖ
 
13.02.14
12:11
(11) у тебя скрипт и картинка от разных баз...
13 PR
 
13.02.14
12:12
(11) А что тут крайнего-то?
Ты собираешься жестко изнасиловать базу, тупо заменив ее другой.
14 Ёпрст
 
гуру
13.02.14
12:12
9. Если во время выполнения операции восстановления возникает ошибка 3154, перезапишите существующую базу данных используя команду RESTORE DATABASE с опцией WITH REPLACE или выполните восстановление в базу данных с другим именем.

Ошибка 3154 возникает, когда Вы пытаетесь восстановить базу поверх существующей, но существующая база данных была создана оператором CREATE DATABASE с другим набором инструкций, чем при создании базы данных, восстанавливаемой из резервной копии.

© http://www.sql.ru/articles/mssql/03080105troubleshootingbackuprestore.shtml
15 Мятежник
 
13.02.14
12:13
(12) для удобства чтения сократил в скрипте
(9) и что из этого я не сделал?
16 Мятежник
 
13.02.14
12:14
(14) и что из этого не сделал я?
17 Ёпрст
 
гуру
13.02.14
12:20
(16) да блин, чем гадать, сделай (7) и привет.
18 PR
 
13.02.14
12:22
(16) Что непонятного-то? Ты в базу X пытаешься восстановить бекап не базы X.
19 Мятежник
 
13.02.14
12:23
(18) т.е. по твоему в скуле нельзя из базы X  восстановить в базу Y?
20 Господин ПЖ
 
13.02.14
12:25
делаешь из гуи (6), тыкаешь "сгенерить скрипт", в скрипте удаляешь из строки

RESTORE DATABASE [блабла] FILE = N'блабла' FROM  DISK = N'.....

кусок "FILE = N'блабла'"

RESTORE DATABASE [блабла] FROM  DISK = N'.....
21 Господин ПЖ
 
13.02.14
12:27
(19) просто так нет... ибо это "чуждая бэкапу" база с другим внутр. id пока в нее не закинут либо бэкап либо создадут сразу из нужного бэкапа...
22 Strogg
 
13.02.14
12:28
(6) Во вкладке "Параметры" пути к файлам бд и транзакций перенастроил?
23 Мятежник
 
13.02.14
12:36
(20) все так же...
(21) я понимаю что просто так нет, для этого и нужен параметр MOVE.  
(22) да

ладно буду пробовать удалять. какой то глюк что ли.... я думаю может проблема в логическом имени. я заходил сегодня в свойства и менял имя логическое у базы Test ( в начале было UPP). поставил на Test. может не применилось оно...
24 Мятежник
 
13.02.14
12:38
хотя скрипт

use Test
select name, physical_name from sys.database_files


дает логическое имя Test. значит применилось...
25 PR
 
13.02.14
12:39
(19) Никогда не задавался таким вопросом, но видимо нет.
Хочешь, загугли.
26 PR
 
13.02.14
12:40
Ты пошел на принцип что ли? Грохни, да залей новую.
27 Bigbro
 
13.02.14
12:44
(19) можно конечно.
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший