SQL Server 2017 Integration Services вече могат да работят под Linux, което означава, че можете да мигрирате пакет, разработен в Windows, и да използвате ODBC като конектор.
За да тестваме това, създадохме прост пакет на Windows, който копира данни между локален и отдалечен екземпляр на SQL Server и след това стартира пакета на машина с Linux.
Процесът беше прост, единственото нещо, което трябва да имате предвид, е, че трябва да създадете ODBC източници на данни със същите имена на Windows и Linux машини. Стъпките за създаване на нашия прост тестов пакет са както следва:
- В SQL Server Management Studio се свържете с екземпляра на SQL Server, от който искате да копирате данни.
- Създайте проста тестова таблица:
CREATE DATABASE ssis USE ssis CREATE TABLE Persons ( PersonID int identity, LastName varchar(255), FirstName varchar(255), Address varchar(255), City varchar(255) ); INSERT INTO Persons VALUES ('Erichsen', 'Tom', 'Skagen 21', 'Stavanger')
- Свържете се с екземпляра, към който искате да копирате данни. Създайте тестовата таблица, но не я попълвайте.
- На машината, където е инсталиран Visual Studio, създайте два източника на ODBC данни, по един за всеки екземпляр на SQL Server. Използвайте 32-битовата версия на ODBC Data Source Administrator, за да направите това.
- В Visual Studio създайте нов проект за услуги за интеграция.
- Плъзнете задача за поток от данни от кутията с инструменти в раздела Control Flow.
- Изберете раздела Поток на данни.
- Плъзнете източник на ODBC от кутията с инструменти в раздела Поток на данни и след това натиснете Return.
ODBC Destination е в списъка с други източници.
- Изберете източника на ODBC и след това натиснете Return.
- В диалоговия прозорец ODBC Source изберете New.
- В диалоговия прозорец Конфигуриране на ODBC Connection Manager изберете Нов.
- В диалоговия прозорец Connection Manager изберете източника на данни ODBC, който се свързва с изходния екземпляр на SQL Server, и след това използвайте бутона OK, за да се върнете към диалоговия прозорец ODBC Source.
- Изберете колони.
- Плъзнете ODBC дестинация от кутията с инструменти в раздела Поток на данни и след това натиснете Return.
ODBC Destination е в списъка Други дестинации.
- Изберете източника на ODBC. Плъзнете синята стрелка до ODBC Destination.
- Изберете ODBC местоназначението и след това натиснете Return.
- В диалоговия прозорец ODBC Destination изберете New.
- В диалоговия прозорец Конфигуриране на ODBC Connection Manager изберете Нов.
- В диалоговия прозорец Connection Manager изберете източника на данни ODBC, който се свързва с целевия екземпляр на SQL Server, и след това използвайте бутона OK, за да се върнете към диалоговия прозорец ODBC Source.
- В името на таблицата или списъка с изгледи изберете Лица.
- Изберете Съответствия.
- Изтрийте съпоставянето между колоните PersonID. PersonID се попълва автоматично.
- Инсталирайте, лицензирайте и тествайте 64-битовата версия на Linux на ODBC драйвера на SQL Server на машината, където е инсталиран Linux портът на SQL Server и SSIS.
- На машината с Linux създайте два източника на данни на SQL Server ODBC със същите имена като източниците на данни, които сте създали в Windows.
В Linux създавате ODBC източници на данни чрез редактиране на текстов файл, обикновено съхраняван в /etc/odbc.ini. Можете да адаптирате примерния източник на данни,
SQLSERVER_SAMPLE
, ако желаете, но не забравяйте да ги преименувате. - Копирайте пакета SSIS от машината с Windows на машината с Linux.
- За да изпълните пакета:
export PATH=/opt/ssis/bin:$PATH dtexec /F "MyPackage.dtsx"