пользователям программных продуктов Scala 5.1, iScala 2.1, iScala 2.2, iScala 2.3, iScala 3.0, iScala 3.1, iScala 3.2 (и так далее)

Пытаемся перетащить бэкап SQL 2008 R2 на SQL 2008

Продолжение… Начало на странице Бэкап SQL 2008 R2 не восстановить на SQL 2008, что делать?

TheCTOSian2 на странице http://social.msdn.microsoft.com/Forums/en-US/sqldatabaseengine/thread/4daae3e5-15ab-4929-a122-e1bab420310e в моём переводе писал(а):
Попробуйте следующее:

1.Установите instance SQL 2008 R2 на одну машину и SQL 2008 на другую
2.Откройте SQL Server Management Studio R2
3.Выберите Вашу исходную базу данных
4.Выберите Задачи (Tasks) > Сформировать скрипты… (Generate Scripts)
5.Выберите «Внести в скрипт всю базу данных и все объекты базы данных» («Script entire database and all database objects»), нажмите «Далее» («Next»)
6.Выберите «Сохранить в файл («Save to File») и нажмите на кнопке «Дополнительно» («Advanced»)
7.Выберите «Скрипт для версии сервера («Script for Server Version») и выберите версию, которая Вам нужна: 2000/2005/2008
8.Выберите «Типы данных для внесения в скрипт» («Type of data to Script») и выберите «Схема и данные» (Schema/Data/both)
9.Нажмите «OK», «Далее» и создайте скрипт!
10.Скопируйте созданный файл на машину с SQL 2008 [или каким-то другим] 11.Войдите в SQL Management Studio и откройте скопированный .sql файл… имейте в виду, что может иметь место ограничение по размеру файла.
Также могут быть проблемы с порядком в котором .SQL файл вставляет данные в новую базу данных если имеются FK constraints, это может быть проблемой…. просто измените порядок вставляемых данных.
12.Как только реорганизуете .sql файл, проверьте его [на всякий случай], и исполните.

Вот такого ответа я обычно и жду, это настоящий профессиональный ответ, а не ответ типа «А с чего вы решили, что Compatibility level влияет на бэкапы ?»
Для того, чтобы вышеописанное было более наглядным, я проиллюстрирую отдельные шаги картинками:

4. Выберите Задачи (Tasks) > Сформировать скрипты… (Generate Scripts):

5. Выберите «Внести в скрипт всю базу данных и все объекты базы данных» («Script entire database and all database objects»), нажмите «Далее» («Next»):

6. Выберите «Сохранить в файл («Save to File») и нажмите на кнопке «Дополнительно» («Advanced»):

7. Выберите «Скрипт для версии сервера («Script for Server Version») и выберите версию, которая Вам нужна: 2000/2005/2008
8. Выберите «Типы данных для внесения в скрипт» («Type of data to Script») и выберите «Схема и данные» (Schema/Data/both):

9. Нажмите «OK», «Далее» и создайте скрипт!:

11. Войдите в SQL Management Studio и откройте скопированный .sql файл… имейте в виду, что может иметь место ограничение по размеру файла:

Именно с этой проблемой я и столкнулся: При размере БД меньше 5 ГБ создался скрипт размером в 10,8 ГБ. Загрузить такой скрипт не удалось. Описание проблемы я нашёл во множестве мест, предлагают пользоваться утилитой sqlcmd: (http://msdn.microsoft.com/en-us/library/ms165702.aspx) но я с этим не разбирался, не было времени, к сожалению, по указанной ссылке нет адекватного примера, как исполнить скрипт из файла. Если кто-нибудь разбирался, приведите пример.

Однако, вернёмся к созданию скрипта. Раз скрипт, содержащий и структуру и данные открыть не удаётся, попробуем создать скрип, содержащий только структуру, без данных:

На этот раз он получился размером не 10,8 ГБ, а всего-то 60 МБ Very Happy

Продолжение следует…