Не удается экспортировать приложение уровня данных для Azure

Я пытаюсь создать файл .bacpac моей базы данных SQL 2012.

В SSMS 2012 я щелкаю правой кнопкой мыши свою базу данных, выбираю «Задачи» и выбираю «Экспортировать приложение уровня данных». Затем я нажимаю «Далее», и мне выдает эту ошибку:

Error SQL71564: Element Login: [myusername] has an unsupported property IsMappedToWindowsLogin set and is not supported when used as part of a data package.
 (Microsoft.SqlServer.Dac)

Я пытаюсь следовать этому руководству, чтобы разместить свою базу данных в облаке Azure:

http://blogs.msdn.com/b/brunoterkaly/archive/2013/09/26/how-to-export-an-on-premises-sql-server-database-to-windows-azure-storage.aspx

Как я могу экспортировать файл .bacpac моей базы данных?


person user1477388    schedule 13.03.2014    source источник


Ответы (3)


SQL Azure не поддерживает проверку подлинности Windows. Вместо этого вам нужно убедиться, что пользователи вашей базы данных сопоставляются с входами в систему проверки подлинности SQL Server.

person David Atkinson    schedule 17.03.2014
comment
Целый день потратил на это дело. Все, что мне нужно было сделать, это удалить пользователя, прошедшего проверку подлинности Windows, из базы данных и добавить логин SQL auth. Огромное спасибо! - person IfElseTryCatch; 24.01.2017
comment
фу. почему для этого нет просто опции IGNORE - person Simon_Weaver; 22.02.2017
comment
То есть я не могу экспортировать локальную БД для использования в другой локальной БД только потому, что Azure ее не поддерживает? Это идиотизм. - person vaindil; 30.06.2017
comment
Что касается ответа vaindil... используйте sqlpackage.exe. Инструменты GUI очень ограничены для этого. Вы можете использовать sqlpackage.exe Extract/Publish для более простой работы с локальными БД. Sqlpackage также поддерживает пакеты экспорта/импорта, но это приведет вас к тому же пути. Вместо этого используйте пакеты dacpac для извлечения/публикации с параметром /p:ExtractAllTableData=True. - person Paul M; 23.01.2020

Я нашел этот пост, указанный ниже, который, кажется, отвечает на мой вопрос. Интересно, есть ли способ сделать это без необходимости удалять моего пользователя из моей локальной базы данных...

"... есть некоторые функции локального SQL Server, которые не поддерживаются в SQL Azure. Вам потребуется изменить базу данных перед извлечением. В этой статье и нескольких других перечислены некоторые неподдерживаемые функции.

В этом сообщении в блоге объясняется, как можно использовать SQL Server Data Tools для изменения базы данных, чтобы сделать ее совместимой с Azure.

Похоже, вы добавили кластерные индексы. Судя по приведенному выше сообщению, вам все еще нужно обратиться к TextInRowSize и IsMappedToWindowsLogin».

Ссылка http://social.msdn.microsoft.com/Forums/fr-FR/e82ac8ab-3386-4694-9577-b99956217780/aspnetdb-migration-error?forum=ssdsgetstarted

Редактировать (2018-08-23): Поскольку существующий ответ относится к 2014 году, я решил предоставить ему свежее обновление... Теперь Microsoft предлагает DMA (помощник по миграции данных) для переноса SQL. Базы данных сервера в Azure SQL.

Вы можете узнать больше и скачать бесплатное средство здесь: https://docs.microsoft.com/en-us/azure/sql-database/sql-database-migrate-your-sql-server-database

person user1477388    schedule 14.03.2014

По состоянию на 9 сентября 2018 г. появился новый инструмент под названием «Помощник по миграции данных», который может помочь в задаче переноса существующей локальной базы данных SQL Server в Azure. Хотя этот инструмент НЕ решит проблему переноса учетных записей Windows, он, по крайней мере, поможет вам перенести схему базы данных и данные в Azure.

Вот обзор инструмента: https://docs.microsoft.com/en-us/sql/dma/dma-overview?view=sql-server-2017

Помощник по переносу данных можно загрузить здесь: https://www.microsoft.com/en-us/download/details.aspx?id=53595

После переноса базы данных в Azure вы можете настроить администратора AD на сервере SQL, а затем создать содержатся пользователи в вашей базе данных, чтобы разрешить пользователей для входа в вашу базу данных SQL со своими учетными записями Windows.

person Sage    schedule 05.09.2018