Экспорт и импорт базы данных в Linux с помощью SSMS или SqlPackage.exe в Windows

Применимо к:SQL Server — Linux

В этой статье показано, как использовать SQL Server Management Studio (SSMS) и SqlPackage.exe для экспорта и импорта базы данных в SQL Server на базе Linux. SSMA и SqlPackage.exe — это приложения Windows, поэтому используйте эту методику при наличии компьютера Windows, который может подключаться к удаленному экземпляру SQL Server в Linux.

Всегда следует устанавливать и использовать последнюю версию SQL Server Management Studio (SSMS), как описано в разделе "Использование SSMS в Windows для подключения к SQL Server на Linux".

Примечание.

Если вы переносите базу данных из одного экземпляра SQL Server в другой, используйте резервное копирование и восстановление.

Экспорт базы данных с помощью SSMS

  1. Запустите SSMS, введя Microsoft SQL Server Management Studio в поле поиска Windows, а затем выберите классическое приложение.

    Screenshot of SQL Server Management Studio.

  2. Подключитесь к базе данных-источнику в обозревателе объектов. База данных-источник может находиться в экземпляре Microsoft SQL Server, запущенном локально или в облаке, в Linux, Windows или Docker, а также в Базе данных SQL Azure или Azure Synapse Analytics.

  3. Щелкните правой кнопкой мыши исходную базу данных в обозреватель объектов, наведите указатель на задачи и выберите "Экспорт приложения уровня данных".

  4. В мастере экспорта нажмите кнопку Далее, а затем на вкладке Параметры настройте экспорт, чтобы сохранить BACPAC-файл в расположении локального диска или в BLOB-объекте Azure.

  5. По умолчанию экспортируются все объекты в базе данных. Перейдите на вкладку Дополнительно и выберите объекты базы данных, которые необходимо экспортировать.

  6. Выберите Далее, затем выберите Готово.

Файл .bacpac успешно создан в выбранном расположении, и вы готовы импортировать его в целевую базу данных.

Импорт базы данных с помощью SSMS

  1. Запустите SSMS, введя Microsoft SQL Server Management Studio в поле поиска Windows, а затем выберите классическое приложение.

    Screenshot of SQL Server Management Studio again.

  2. Подключитесь к целевому серверу в обозревателе объектов. Целевой сервер может быть экземпляром Microsoft SQL Server, запущенным локально или в облаке, в Linux, Windows или Docker, а также в Базе данных SQL Azure или Azure Synapse Analytics.

  3. Щелкните правой кнопкой мыши папку "Базы данных" в обозреватель объектов и выберите "Импортировать приложение уровня данных".

  4. Чтобы создать базу данных на целевом сервере, укажите BACPAC-файл с локального диска или выберите учетную запись хранения Azure и контейнер, в который вы отправили BACPAC-файл.

  5. Укажите новое имя базы данных для базы данных. Если вы импортируете базу данных в База данных SQL Azure, задайте выпуск База данных SQL Microsoft Azure (уровень служб), максимальный размер базы данных и цель службы (уровень производительности).

  6. Нажмите кнопку Далее, а затем кнопку Готово, чтобы импортировать BACPAC-файл в новую базу данных на целевом сервере.

Файл .bacpac импортируется для создания новой базы данных на указанном целевом сервере.

Параметр командной строки SqlPackage

Кроме того, можно использовать программу командной строки SQL Server Data Tools (SSDT) SqlPackage.exe для экспорта и импорта BACPAC-файлов.

В следующем примере команда экспортирует BACPAC-файл.

SqlPackage.exe /a:Export /ssn:tcp:<your_server> /sdn:<your_database> /su:<username> /sp:<password> /tf:<path_to_bacpac>

Используйте следующую команду, чтобы импортировать схему базы данных и пользовательские .bacpac данные из файла:

SqlPackage.exe /a:Import /tsn:tcp:<your_server> /tdn:<your_database> /tu:<username> /tp:<password> /sf:<path_to_bacpac>