Комментарии 22
Если надо один раз, то можно и триальными версиями воспользоваться.
На таблицу-приёмник лучше накладывать блокировку TABLOCK, а БД-приёмник должна быть с моделью восстановления simple или bulk-logged, чтобы sql server мог выполнять insert с минимальным протоколированием.
С identity-колонками по-любому геморрой.
>>7) Готово! Вы перенесли базу из нового сервера SQL в старый, хоть это и считалось невозможным. Причем перенос осуществляется примерно со скоростью передачи данных по сети, т.е. очень быстро.
1) это не считалось невозможным;
2) это гораздо медленнее чем передача данных по сети, особенно в таком исполнении, как в статье.
1) У меня была модель SIMPLE как раз, забыл об этом написать.
2) 10 ГБ база у меня скопировалась за 20 минут по 100 Мегабитному каналу (со скоростью сети было бы не менее 13 минут), так что явно не "гораздо медленнее"
И ещё момент странный: почему constraints отнесены на применение после переноса данных, а триггеры — нет? Триггеры же могут быть достаточно сложными.
Дальше практически в несколько кликов перенесите данные через мастер импорта.
После отсоедините файлы и перенесите на другую машину.
Это действовало для 2013 Sharepoint'a.
1) Подобным методом не получится перенести таблицы, в которых есть колонки с типом XML.
Вот тут как раз openqwery тоже поможет — выполняете запрос на доноре с преобразованием XML в текст. Инсертите потом его спокойно в поля XML.
exec db_copy старая база, новая база
Я же написал. Есть "шаблон" базы (голая схема без данных), который может работать в разных версиях сервера SQL. У каждого клиента свои данные в базе и своя версия SQL. Клиент хотел передать мне бэкап базы, чтобы я посмотрел ошибку в данных. Но меня нет настолько новой версии SQL, как установлена у клиента, я хочу загнать его базу в свой, более старый SQL.
Бывают и другие похожие потребности, например необходимость миграции базы с компа на комп внутри предприятия (например, из-за роста размера БД), когда на одном компе установлен новый лицензионный SQL, а на второй — старый лицензионный SQL.
Спасибо за наводку! Для схемы подойдет. Скриптовать сами данные на базе размером в десятки и сотни гигабайт выглядит как ужас-ужас.
Перенос базы данных в более старую версию MS SQL Server