mssql, заресторить базу из файла бэкапа
Сообщение удалил
BACKUP DATABASE @db TO DISK = @filePath WITH FORMAT, NAME = @name, DIFFERENTIAL
P.S. 5 мин в Яндексе и попытка телепатическим путем выучить MS SQL Server и его утилиты.
У MS обычно все привязывается к ActiveDirectory (но можно и отвязаться при необходимости).
бэкап то делается, differential означает что сбакапировано будет только то, что было добавлено в базу после предыдушего фулл бэкапа. У меня же постоянно делается фуллбэкап.
Только вот ща мне потребовалось из файла бэкапа развернуть базу на другом сервере - и не получается. И нахрена такой бэкап нужен спрашивается ?
В очередной раз убеждаюсь, что телепатические способности у меня не развиты
RESTORE DATABASE dbname
FROM DISK = 'path'
WITH REPLACE
Только dbname толжно совпадать с именем базы которую ты забэкапил и делать это надо не из-под уже существующего бэкапа, должно быть все ок.
Дошли руки посмотреть на msdn по теме
нашёл вот что:
This example uses both the BACKUP and RESTORE statements to make a copy of the Northwind database. The MOVE statement causes the data and log file to be restored to the specified locations. The RESTORE FILELISTONLY statement is used to determine the number and names of the files in the database being restored. The new copy of the database is named TestDB. For more information, see RESTORE FILELISTONLY.Вроде прокатило.
BACKUP DATABASE Northwind
TO DISK = 'c:\Northwind.bak'
RESTORE FILELISTONLY
FROM DISK = 'c:\Northwind.bak'
RESTORE DATABASE TestDB
FROM DISK = 'c:\Northwind.bak'
WITH MOVE 'Northwind' TO 'c:\test\testdb.mdf',
MOVE 'Northwind_log' TO 'c:\test\testdb.ldf'
GO
Удивляет что нет гуёвого мастера в эскуэль манагамент студии для перформа такой операции. Или он какой то неочевидный.
А как же правой кнопкой по Databases и там Restore Database?
Указал там в To database: свкежесозданную базу.А вот создавать её, наверное, не стоило
ну там полюбак нада было выбррать какую нить базу из имеющихся, иначе не была активна кнопка эплай.
выбор БД там есть в 2х местах (насколько я помню):
1 - "из какой базы восстанавливать" - это не к нам, мы из файла хотим
2 - "в какую базу восстанавливать" - там можно ввести отсебятину
ну мб
сходу я не сообразил
Оставить комментарий
Alena_08_11
Есть файл бэкапа, делался так :Как на основе этого файла сделать бд совершенно на другом mssql 2005 ?
Я попробовал тупо restore database ... (ну в sql mgmt studio есть мастер). Указал там в To database: свкежесозданную базу. а в From device: указал этот файл бэкапа.
Получил ошибку : резервный набор данных содержит копию базы данных отличной от существующей базы данных "(имя_бд)"
Вопросы
1. Можно ли вообще в принципе восстановить этот бэкап в произвольную базу данных на произвольном сервере ? ( Или можно _только_ в ту же базу, на том же серве, откуда делался бэкап?)
2. Если ответ на 1й вопрос - "можно", то как это сделать ? (гуглить пробовал - сходу не получилось, щас пока на гугление времени нет)