sql >> Database >  >> RDS >> Sqlserver

SQL Server 2017:SQL Server-gegevens kopiëren van Linux naar Windows met SSIS

SQL Server 2017 Integration Services kunnen nu op Linux draaien, wat betekent dat u een op Windows ontwikkeld pakket kunt migreren en ODBC als connector kunt gebruiken.

Om dit te testen, hebben we een eenvoudig pakket op Windows gemaakt dat gegevens kopieerde tussen een lokale en externe SQL Server-instantie en het pakket vervolgens op een Linux-machine uitvoerde.

Het proces was eenvoudig, het enige om in gedachten te houden is dat u ODBC-gegevensbronnen met dezelfde namen op de Windows- en Linux-machines moet maken. De stappen voor het maken van ons eenvoudige testpakket zijn als volgt:

  1. Maak in SQL Server Management Studio verbinding met de SQL Server-instantie waarvan u gegevens wilt kopiëren.
  2. Maak een eenvoudige testtabel:
    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')
    
  3. Maak verbinding met de instantie waarnaar u gegevens wilt kopiëren. Maak de testtabel, maar vul deze niet in.
  4. Maak op de computer waarop Visual Studio is geïnstalleerd twee ODBC-gegevensbronnen, één voor elke SQL Server-instantie. Gebruik hiervoor de 32-bits versie van ODBC Data Source Administrator.
  5. Maak in Visual Studio een nieuw Integration Services-project.
  6. Sleep een gegevensstroomtaak van de werkset naar het tabblad Beheerstroom.
  7. Kies het tabblad Gegevensstroom.
  8. Sleep een ODBC-bron van de Toolbox naar het tabblad Gegevensstroom en druk vervolgens op Return.

    ODBC-bestemming staat in de lijst Andere bronnen.

  9. Selecteer de ODBC-bron en druk vervolgens op Return.
  10. Kies Nieuw in het dialoogvenster ODBC-bron.
  11. Kies Nieuw in het dialoogvenster ODBC-verbindingsbeheer configureren.
  12. Kies in het dialoogvenster Verbindingsbeheer de ODBC-gegevensbron die verbinding maakt met de bron-SQL Server-instantie en gebruik vervolgens de knop OK om terug te keren naar het dialoogvenster ODBC-bron.
  13. Kies kolommen.
  14. Sleep een ODBC-bestemming van de Toolbox naar het tabblad Gegevensstroom en druk vervolgens op Return.

    ODBC-bestemming staat in de lijst Overige bestemmingen.

  15. Selecteer de ODBC-bron. Sleep de blauwe pijl naar de ODBC-bestemming.
  16. Selecteer de ODBC-bestemming en druk vervolgens op Return.
  17. Kies Nieuw in het dialoogvenster ODBC-bestemming.
  18. Kies Nieuw in het dialoogvenster ODBC-verbindingsbeheer configureren.
  19. Kies in het dialoogvenster Verbindingsbeheer de ODBC-gegevensbron die verbinding maakt met de SQL Server-doelinstantie en gebruik vervolgens de knop OK om terug te keren naar het dialoogvenster ODBC-bron.
  20. Kies in de Naam van de tabel of de weergavelijst Personen.
  21. Kies Toewijzingen.
  22. Verwijder de toewijzing tussen de PersonID-kolommen. De PersonID wordt automatisch ingevuld.
  23. Installeer, licentieer en test de 64-bits Linux-versie van het SQL Server ODBC-stuurprogramma op de computer waarop de Linux-poort van SQL Server en SSIS is geïnstalleerd.
  24. Maak op de Linux-machine twee SQL Server ODBC-gegevensbronnen, met dezelfde namen als de gegevensbronnen die u op Windows hebt gemaakt.

    Op Linux maakt u ODBC-gegevensbronnen door een tekstbestand te bewerken, dat normaal gesproken wordt opgeslagen in /etc/odbc.ini. U kunt de voorbeeldgegevensbron aanpassen, SQLSERVER_SAMPLE , als je wilt, maar vergeet niet om ze te hernoemen.

  25. Kopieer het SSIS-pakket van de Windows-machine naar de Linux-machine.
  26. Om het pakket uit te voeren:
    export PATH=/opt/ssis/bin:$PATH
    dtexec /F "MyPackage.dtsx"
    

  1. REGEXP_REPLACE() Functie in Oracle

  2. MySQL krijgt rijpositie in ORDER BY

  3. Veelvoorkomende fouten in het ER-diagram

  4. Hoe stel je autocommit in in een SQL Server-sessie?