2016-02-17 4 views
0

Я создал файл резервной копии из базы данных в SQL Server 2012. Но я не могу восстановить его в новой базе данных в SQL Server 2008r2 с помощью файла .bak ,Сложность восстановления новой базы данных с .bak-файлом в SQL Server 2008 R2

Он всегда возвращает предупреждение о том, что приведение недействительно (sqlmanager.ui).

Есть ли способ его восстановить?

+0

Возможная копия [Создать SQL Server 2012 базы данных, совместимый для 2008] (http://stackoverflow.com/questions/17450114/create-sql-server-2012-database-compatible-for-2008) – Tanner

ответ

1

Вы НЕ МОЖЕТЕ сделать это - вы не можете прикреплять/отсоединять или резервное копирование/восстановление базы данных из новой версии из SQL Server вниз к старой версии - внутренние файловые структуры являются просто слишком разные, чтобы поддержать назад совместимость.

Вы можете обойти эту проблему

  • используя ту же версию SQL Server на всех машинах - то вы можете легко выполнять резервное копирование/восстановление баз данных между экземплярами

  • в противном случае вы можете создать сценарии базы данных для обеих структур (таблицы, представления, хранимые процедуры и т. д.) и для содержимого (фактические данные, содержащиеся в таблицах) либо в SQL Server Management Studio (Tasks > Generate Scripts), либо с использованием стороннего инструмента

  • или вы можете использовать сторонний инструмент, такой как Red-Gate SQL Compare и SQL Data Compare, чтобы «различать» между вашим источником и целью, генерировать сценарии обновления из этих различий, а затем выполнять эти сценарии на целевой платформе; это работает в разных версиях SQL Server.

Смежные вопросы