Поделиться через


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

Область применения: SQL Server — Linux

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

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

Сведения о переносе базы данных из одного экземпляра SQL Server в другой см. в статье "Миграция базы данных SQL Server из Windows в Linux с помощью резервного копирования и восстановления".

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

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

    Снимок экрана: 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, а затем выберите классическое приложение.

    Снимок экрана: SQL Server Management Studio еще раз.

  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 для экспорта и импорта 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>