Приложение уровня данных импорта не работает

Я получаю следующую ошибку при восстановлении резервной копии базы данных (файл .bacpac) в моем локальном экземпляре SQL Server 2016.

НАЗВАНИЕ: Microsoft SQL Server Management Studio

Не удалось импортировать пакет.

Предупреждение SQL72012: объект [Azure_Data] существует в целевой базе данных, но он не будет удален, даже если вы установили флажок «Создать операторы удаления для объектов, находящихся в целевой базе данных, но не в исходной».

Предупреждение SQL72012: объект [Azure_Log] существует в целевой базе данных, но он не будет удален, даже если установлен флажок «Создать операторы удаления для объектов, находящихся в целевой базе данных, но не в исходной».

Ошибка SQL72014: поставщик данных .Net SqlClient:

Сообщение 33161, уровень 15, состояние 1, строка 1
Главные ключи базы данных без пароля не поддерживаются в этой версии SQL Server.

Ошибка SQL72045: ошибка выполнения скрипта. Исполняемый скрипт: CREATE MASTER KEY;


person Jesalcv    schedule 03.12.2017    source источник


Ответы (2)


Это связано с разницей между SQL Azure и SQL Server 2016. Наличие главного ключа без пароля — это функция, доступная только для Azure. Есть два способа решить эту проблему.

1) откройте .bacpac и удалите объект главного ключа, а также объект учетных данных. (Переименуйте .bacpac в .zip, разархивируйте, а затем просмотрите файлы xml, внесите необходимые изменения, заархивируйте резервную копию и переименуйте обратно в .bacpac)

or

2) добавьте шифрование пароля к мастер-ключу, прежде чем экспортировать базу данных в .bacpac, используя следующее: ALTER MASTER KEY ADD ENCRYPTION BY PASSWORD = '<PasswordHere>';

person digital.aaron    schedule 04.12.2017
comment
Где главный ключ и объекты учетных данных? - person haugan; 30.11.2020

Теперь есть гораздо более простое решение. Загрузите обновление для SSMS... как минимум версии 14.0.17277.0. Таким образом, вам не придется возиться с главными ключами или исправлять файлы bacpac. Это намного проще.

person user7221931    schedule 15.08.2018
comment
У меня есть версия 18.7.1 SSMS, но я все еще сталкивался с этой проблемой, поэтому простое обновление SSMS не решает ее. - person haugan; 30.11.2020
comment
у меня 18.8 не работает - person Nick Turner; 10.05.2021