Ошибка SQL Server «Отсутствует порядковый номер семейства 2»


12

Я пытаюсь восстановить локальную базу данных на моем сервере, но у меня проблемы с резервным копированием. Я сделал файл .bak, но каждый раз, когда я пытаюсь загрузить его на сервер, он не позволяет мне.

Вот скриншот полученного сообщения об ошибке:

введите описание изображения здесь

Я прочитал, что я могу использовать RESTORE LABELONLYдля восстановления моего файла, но все еще не работает, каждый раз, когда я запускаю его, я получаю что-то вроде этого:

Не удается открыть устройство резервного копирования 'C: \ Program Files \ Microsoft SQL Server \ MSSQL10_50.JOSEMA \ MSSQL \ Backu \ INNOVA-T.bak'. Ошибка операционной системы 3 (не удалось получить текст для этой ошибки. Причина: 15105). Сообщение 3013, Уровень 16, Состояние 1, Строка 1, RESTORE LABELONLY завершается ненормально .

Любая помощь будет отличной. Спасибо.


В конце я удаляю все мои старые резервные копии с разными путями, восстанавливаю новую с уникальным путем, удаляю мою старую базу данных и восстанавливаю ее снова с новым .bak .
E.Rawrdríguez.Ophanim

Ответы:


16

Ошибка указывает, что ваш .bakфайл является только частью резервной копии. Когда резервная копия была написана, она была записана в три файла. Если вы можете записать резервную копию в несколько файлов на нескольких дисках, это часто будет выполняться быстрее.

В соответствии с этим StackOverflow Q & A , RESTORE LABELONLYдолжно помочь вам подтвердить, что резервная копия охватывает несколько файлов, но не позволит вам фактически восстановить резервную копию - для этого вам понадобятся все три файла.

Если вы можете найти все три файла (и уверены, что они из одного и того же прогона резервного копирования), вы сможете восстановить резервную копию - вам нужно будет указать все три файла в RESTOREкоманде (или через восстановление SSMS). диалог).

Если вы не можете, но у вас все еще есть доступ к исходному серверу, тогда вы можете сделать новую резервную копию.

ПРИМЕЧАНИЕ. Если у этого исходного сервера есть администратор базы данных, работайте с ним. Вы хотите убедиться, что создание резервной копии не вызовет проблем с репликацией, доставкой журналов или возможностью восстановления на определенный момент времени.

Если вы действительно администратор базы данных, то:

  • Войдите в SQL Server Management Studio (SSMS), подключитесь к серверу и разверните базы данных.
  • Щелкните правой кнопкой мыши исходную базу данных и выберите Задачи -> Резервное копирование ... Откроется диалоговое окно.
  • На первой странице диалога:

    • Убедитесь, что база данных, для которой вы хотите создать резервную копию, выбрана в качестве исходной базы данных.
    • Убедитесь, что тип резервной копии «Полный».
    • Проверка на «Копировать только Backup».
    • Убедитесь, что для компонента резервного копирования установлено значение «База данных»
    • В нижней части окна: если в списке «Пункт назначения» есть какие-либо записи, удалите их.
    • Нажмите «Добавить», чтобы добавить новый файл резервной копии. Убедитесь, что вы знаете, где находится файл (как правило, у вас есть только возможность записи на локальный диск сервера БД с помощью этого интерфейса; если вам нужно записать в папку на общем сервере, вы можете попробовать вставить в полный UNC-путь к общему серверу и ввод нового имени файла в диалоге выбора файла. Если это не сработает, укажите локальный диск и уникальное имя файла). Также убедитесь, что имя файла уникально - вы не хотите перезаписывать существующие файлы на сервере.
    • Когда вы вернетесь в исходное диалоговое окно «Резервное копирование», перейдите на страницу «Параметры» (левая сторона окна).
    • В разделе «Перезаписать носитель» выберите «Резервное копирование на новый набор носителей и удалите все существующие наборы резервных копий».
      • Да, это звучит страшно - однако, это в первую очередь используется для повторной инициализации ленты резервного копирования, чтобы стереть все старые данные; пока вы пишете новое имя файла, все должно быть хорошо.
      • Введите новый для набора носителей - что-то вроде «- одноразовое резервное копирование» достаточно.
    • Вы можете установить некоторые параметры в разделе «Надежность»; Я бы просто оставил их всех.
    • Вы также можете принять значение по умолчанию для «Установить резервное сжатие»; Я бы, вероятно, выбрал «Сжатие резервной копии», но это не критично. (Если вы не используете SQL Server 2008 или более позднюю версию, то этого либо нет, либо нет).
    • НЕ нажимайте «ОК», вместо этого нажмите маленькую стрелку «Сценарий» в верхней части диалогового окна и выберите «Действие сценария для нового окна запроса». Как только вы увидите сценарий, нажмите «Отмена».
  • Дважды проверьте скрипт - в нем должен быть только один файл.
  • Если вы хотите записать файл в другое место, вы можете изменить путь к файлу в скрипте. Опять же, сервер должен иметь возможность доступа к указанному вами местоположению, поэтому учетная запись, используемая для запуска службы SQL Server (и / или службы агента SQL Server), должна иметь доступ к пути, куда вы хотите записать файл.
  • Теперь запустите скрипт.

Предполагая, что все идет хорошо, теперь вы можете использовать новый файл резервной копии для восстановления в другом месте. Опять же, SQL Server, на который вы восстанавливаете, должен иметь доступ к файлу резервной копии, поэтому вы можете скопировать его на этот сервер.


В качестве дополнения к этому подробному ответу можно привести сценарий, в котором у вас есть только один из нескольких обратных файлов, а также нет исходной базы данных. Допустим, вы унаследовали файлы резервных копий, и они не завершены. Один из способов восстановления или восстановления хотя бы частичных файлов резервных копий - это отличное восстановление резервных копий, которое я использую под названием Stellar SQL Backup. stellarinfo.com/support/kb/index.php/article/...
samosql
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.