Восстановить DB - Ошибка RESTORE HEADERONLY прерывается ненормально.
Я сделал резервную копию базы данных SQL Server 2008 на сервере и загрузил их в локальную среду.
Я пытаюсь восстановить эту базу данных, и она продолжает давать мне следующую ошибку.
При выполнении исключения оператор Transact-SQL или пакет. (Microsoft.SqlServer.ConnectionInfo)
------------------------------ ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ:
Семейство носителей на устройстве 'C:\go4sharepoint_1384_8481.bak' является неправильно сформировано. SQL Server не может обрабатывать это семейство средств массовой информации. ВОССТАНОВИТЬ HEADERONLY заканчивается ненормально. (Microsoft SQL Server, ошибка: 3241)
Для получения справки нажмите: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=09.00.4053&EvtSrc=MSSQLServer&EvtID=3241&LinkId=20476
Я попытался создать временную БД на сервере и попытался восстановить тот же файл резервной копии, и это работает. Я тоже не пытался. времени загрузки файла с сервера на локальный компьютер с использованием различных опций на Filezila (Auto, Binary)
Но он не работает. После этого я попытался выполнить следующую команду на сервере.
BACKUP DATABASE go4sharepoint_1384_8481
TO DISK=' C:\HostingSpaces\dbname_jun14_2010_new.bak' with FORMAT
Это дает мне следующую ошибку:
Msg 3201, уровень 16, состояние 1, строка 1 Не удается открыть устройство резервного копирования 'c:\Program Files\Microsoft SQL Сервер \MSSQL10.SQLEXPRESS\MSSQL\Backup \ C:\HostingSpaces\dbname_jun14_2010_new.bak. Ошибка операционной системы 123 (Синтаксис имени файла, имени каталога или тома неправильно.). Msg 3013, уровень 16, состояние 1, строка 1 BACKUP DATABASE завершение аномально.
После исследования я нашел следующие 2 полезные ссылки:
Но я до сих пор не могу восстановить базу данных правильно.
Любая помощь будет высоко оценена. Спасибо.
Ответы
Ответ 1
Вы можете проверить этот пост в блоге. Это решило мою проблему.
http://dotnetguts.blogspot.com/2010/06/restore-failed-for-server-restore.html
Выбрать @@Version
Это дало мне следующий результат Microsoft SQL Server 2005 - 9.00.4053.00 (Intel X86) 26 мая 2009 14:24:20 Copyright (c) 1988-2005 Microsoft Corporation Express Edition в Windows NT 6.0 (Build 6002: Service Pack 2)
Вам нужно будет переустановить на новый именованный экземпляр, чтобы убедиться, что вы используете новую версию SQL Server.
Ответ 2
Эта ошибка возникает при попытке загрузить данные резервного копирования с более высокой версии на более низкую версию. Как и у вас есть резервная копия SQL Server 2008, и вы пытаетесь загрузить данные в SQL Server 2005, вы получите такую ошибку или иногда резервное копирование было повреждено. Файл был передан с использованием FTP в текстовом режиме, а не в двоичном режиме. Попробуйте загрузить более высокую версию. для получения дополнительной информации см. здесь: http://dbathings.com/troubleshoot-microsoft-sql-server-error-code-3241/
Ответ 3
Эта ошибка может быть вызвана разрешениями на файл, которые вы должны проверить, однако недавно я заметил, что это же происходит, если файл был перенесен, а окна отметили файл как "Шифровать содержимое для защиты данных".
Вы можете найти это, создав свойства файла .bak и нажав кнопку "Дополнительно", он отображается как последний флажок в диалоговом окне.
Надеюсь, что это поможет кому-то!
Ответ 4
Я столкнулся с этой проблемой, и моя проблема была немного более сложной...
Первоначально я пытался восстановить резервную копию SQL Server 2000 для SQL Server 2012. Конечно, это не помогло, так как SQL Server 2012 поддерживает только резервные копии с 2005 года и выше.
Итак, я восстановил базу данных на машине SQL Server 2008. Как только это было сделано - я скопировал базу данных для восстановления на SQL Server 2012 - и она потерпела неудачу со следующей ошибкой
Неправильно сформировано семейство носителей на устройстве C:\XXXXXXXXXXX.bak. SQL Server не может обработать это семейство мультимедиа. RESTORE HEADERONLY заканчивается ненормально. (Microsoft SQL Server, ошибка: 3241)
После многих исследований я обнаружил, что я пропустил шаг - мне пришлось вернуться к машине SQL Server 2008 и щелкнуть правой кнопкой мыши по базе данных (которую я хотел создать резервную копию) > "Свойства" > "Параметры" > "Убедитесь, что уровень совместимости установлен в SQL Server 2008. > Сохранить
И затем заново создайте резервную копию. После этого мне удалось восстановить SQL Server 2012.
Ответ 5
Я предполагаю, что вы пытаетесь восстановить в более низких версиях, которые не работают
Ответ 6
Я думаю, у вас есть две отдельные проблемы: 1. с восстановлением и 2. с созданием
Для 1. вы можете попробовать проверить, правильно ли был перенесен файл (одним простым способом было бы проверить md5 файла на сервере и снова в локальной среде, чтобы убедиться, что они совпадают).
Ответ 7
Cannot open backup device 'c:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Backup\ C:\HostingSpaces\dbname_jun14_2010_new.bak'
Ошибка вполне понятна. Файл C:\program files\...\Backup \c:\Hosting...\
некорректно отформатирован. Это совершенно очевидно, если вы проверяете имя файла. Возможно, опустите дополнительное пространство в своем заявлении о резервном копировании?
BACKUP DATABASE go4sharepoint_1384_8481
TO DISK='C:\HostingSpaces\dbname_jun14_2010_new.bak' with FORMAT
Примечание между '
и C:
нет пробела,
Ответ 8
У меня была аналогичная проблема, но я пытался восстановить от более низкой до более высокой версии (правильно). Однако проблема была недостаточной. Когда я вошел в систему с "Аутентификацией Windows", мне удалось восстановить базу данных.
Ответ 9
В моем случае файл резервной копии был сжат, но расширение файла не указало это, не закончилось .zip,.tgz и т.д. Как только я распаковал файл резервной копии, я смог его импортировать.