Подтвердить что ты не робот

Не удалось импортировать SQL Azure V12 BACPAC: "тип Microsoft.Data.Tools.Schema.Sql.SqlAzureV12DatabaseSchemaProvider недействителен"

Я пытаюсь импортировать экспортированный BACPAC из базы данных SQL Azure (v12) в локальный экземпляр SQL Server 2012, но я продолжаю получать ошибку ниже. Я попытался установить обновления DAC и SSDT, связанные с этим сообщением в блоге, но это не помогает.

Как я могу это исправить?

TITLE: Microsoft SQL Server Management Studio
------------------------------

Count not load schema model from package. (Microsoft.SqlServer.Dac)

------------------------------
ADDITIONAL INFORMATION:

Internal Error. The database platform service with type Microsoft.Data.Tools.Schema.Sql.SqlAzureV12DatabaseSchemaProvider is not valid. You must make sure the service is loaded, or you must provide the full type name of a valid database platform service. (Microsoft.Data.Tools.Schema.Sql)

------------------------------
BUTTONS:

OK
------------------------------
4b9b3361

Ответ 1

Обновлено: Новый SQL Server Management Studio Preview - лучший способ импорта в Azure SQL DB. Он поддерживает все последние функции и проверки базы данных Azure SQL DB. Кроме того, он имеет автономный веб-установщик, который автоматически обновляется каждый месяц по мере появления новых функций. В приведенных ниже замечаниях, в которых упоминается сложность установки обновления CU, это было бы более простым и быстрым решением проблемы.

Исходный ответ: Если вы используете SQL Server Management Studio для импорта, у вас должен быть установлен SSU 2014 CU5 или CU6. Информация об установке CU6 доступна здесь. Ошибка, указанная в вашем вопросе, указывает, что вы используете более старую версию SSMS.

** Обновление: ** В ответ на ответ Мартина ниже я хотел бы уточнить 2 вещи.

  • SSMS для SQL Server 2014 является единственной версией SSMS с полной поддержкой новых функций Azure SQL DB v12, в частности Import/Export для этой цели. Это связано с тем, что v12 имеет (почти) функциональный паритет с SQL Server 2014, а в старых версиях инструментария нет поддержки для этого. Обратите внимание, что SSMS 2014 полностью обратно совместим с SQL Server 2005 и выше.

  • Возникла отдельная временная проблема, которая вызвала проблемы с обновленными базами данных Azure SQL DB v12. Это было решено, и правильное место для поиска информации об этом можно найти в разделе C3 страницы Plan and Prepare to Upgrade. В общем, если вы экспортировали bacpac, который не смог импортировать из-за этой проблемы, вы можете загрузить последнюю версию DacFramework.msi из здесь, чтобы исправить это выпуск в SSMS.

Полное раскрытие: я работаю над командой инструментов SQL Server.

Ответ 2

Чтобы исправить ошибку импорта с помощью [sys]. [script_deployment_databases] из экспортированной базы данных V12, которую вы должны установить:

РЕДАКТИРОВАТЬ: CU13 не нужен, сначала попробуйте второе соединение!

Ответ 4

У меня была такая же проблема с моей резервной копией dataabse из SQL Azure (v12).

Я установил Microsoft® SQL Server® Data-Tier Application Framework (февраль 2015 г.) (для правильной работы вам потребуется установить Оба варианта x64 и x86). Сначала я установил версию x64 и попытался восстановить БД - но это не сработало. После этого я установил версию x86, и я смог успешно восстановить базу данных.

Моя версия SQL Server: Microsoft SQL Server 2014 - 12.0.2269.0 (X64). ОС: Windows 10 x64 build 10240.

Tnanks.

Ответ 5

Восстановление BacPac из базы данных Azure завершилось неудачей после установки последнего предварительного просмотра SQL Server Management Studio 2016. Решение состояло в том, чтобы установить "Contained Database Authentication" = 1 для моего локального экземпляра SQL DB. Читайте о решении здесь или запустите этот script в своем локальном экземпляре:

Мастер использования ИДТИ RECONFIGURE ИДТИ sp_configure "СОДЕРЖАНИЕ СОДЕРЖАЩЕЙСЯ БАЗЫ ДАННЫХ", 1

Ответ 6

Я использовал неправильный путь SqlPackage.exe.

Не работает:

C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\SqlPackage.exe

Работает:

C:\Program Files (x86)\Microsoft SQL Server\130\DAC\bin\SqlPackage.exe
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\130\SqlPackage.exe

Ответ 7

У меня такая же проблема.

Установка Накопительный пакет обновлений 6, предложенный здесь помогает избежать первого но просто застрять в следующем.

Относительно этой темы:

SQL Azure импорт bacpac не работает после обновления до версии v12

Это ошибка Microsoft еще не имеет исправления или обхода.

Изменить: SQL Management Studio 2014 требуется для восстановления (2012 не работает)

Если есть, я думаю, что поток будет обновлен.

Изменить: в вышеупомянутой ссылке теперь вы можете найти обходной путь: вам нужно создать копию своей базы данных V12. Эта копия может быть экспортирована и повторно импортирована на ваш локальный сервер sql 2014.

Просто обновление инструментов не помогает.