Восстановление резервной копии в более старую версию SQL Server

29

При попытке восстановить резервную копию в базе данных SQL Server Express 2008 я получил следующую ошибку:

Restore failed for Server '...\SQLEXPRESS'.  (Microsoft.SqlServer.SmoExtended)
System.Data.SqlClient.SqlError: The database was backed up on a server running version
10.50.1600. 
That version is incompatible with this server, which is running version 10.00.2531. 
Either restore the database on a server that supports the backup, or use a backup 
that is compatible with this server. (Microsoft.SqlServer.Smo)

Есть ли способ получить резервную копию, которая совместима с более старой (в моем случае 10.00.2531) версией из более новой (в моем случае 10.50.1600) версии SQL Server Express?

рем
источник

Ответы:

19

Вам бы пришлось использовать мастера импорта / экспорта в SSMS для переноса всего

Там нет нет «Понижения рейтинга» возможно с помощью резервного копирования / восстановления или отсоединения / присоединять

ГБН
источник
8

Вы можете использовать мастер импорта / экспорта для перемещения данных между базами данных.

Щелкните правой кнопкой мыши базу данных, которую вы хотите экспортировать, выберите «Задачи», затем «Экспорт данных». Мастер проведет вас через весь процесс.

Вы правы, хотя. Вы не сможете выполнять резервное копирование / восстановление при переходе с SQL Server 2008 R2 на SQL Server 2008 Express.

Ричард
источник
6

Единственный способ - создать новую базу данных в версии 10.00.2531 и импортировать данные из 10.50.1600.

Вы не можете восстановить до более старой версии.

SQLRockstar
источник
6

Резервное копирование SQL Server не поддерживает обратную совместимость

Шаги, чтобы получить БД на старых версиях -

  • Для Схемы: щелкните правой кнопкой мыши по вашей базе данных -> Задачи -> Сгенерируйте сценарии -> Далее -> Далее -> нажмите на расширенную кнопку -> измените параметр «Тип данных для сценария» на «Схема» - -> Хорошо -> Далее -> Далее

  • Для данных: щелкните правой кнопкой мыши по вашей базе данных -> Задачи -> Сгенерируйте сценарии -> Далее -> Далее -> нажмите на расширенную кнопку -> измените параметр «Тип данных для сценария» на «Данные» - -> Хорошо -> Далее -> Далее

dsingh
источник
Одна из проблем этого метода заключается в том, что для больших баз данных (много таблиц и огромных данных) выполнение сценариев для восстановления занимает много времени. но это удобно и легко
Иман
2

щелкните правой кнопкой мыши по вашей базе данных -> Задачи -> создать сценарии -> далее -> далее -> нажмите на расширенную кнопку -> измените параметр «Тип данных для сценария» на «Схема и данные» - > ok -> next -> next, так что теперь у вас есть скрипт, который создает базу данных и ее таблицу и заполняет данные в ней :);)

Сара
источник
2
В зависимости от объема данных, этот сценарий может быть огромным ...
Томас Руштон
1
@ThomasRushton Этот скрипт по определению будет больше, чем сама база данных, вероятно, по крайней мере, вдвое, если не хуже! Я надеюсь, что это не база данных объемом 50 ГБ ...
ErikE
Это дублированный ответ
Burgi
это не повторяющийся ответ, это отличный ответ на тип данных «схема И данные»! ;-) что мне и нужно!
ЮФО
1
@ Бурги этот ответ старше чем дсинх. Он просто скопировал Сару и добавил 2 варианта: один для схемы, другой для данных. Его дубликат.
раздолбай