Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

Daten von SQL2005 in MySQL

Dieses Thema im Forum "Microsoft SQL Server" wurde erstellt von egydd, 12 Oktober 2013.

  1. egydd

    egydd Neuer Benutzer

    Hallo,

    ich bin neu im Forum und habe trotz intensiver Suche im Forum und im Internet nichts gefunden, daher meine Hoffnung, dass mir hier im Forum jemand einen entscheidenden Tipp geben kann.
    Ich habe eine SQL2005-Datenbank auf Server2003 (32-bit) und eine MySQL-Datenbank (V5.3) auf Server2008R2 (64-bit). Die Hauptdatenbank ist SQL2005, MySQL brauche ich für Intranet. Ich habe in MySQL eine idente Kopie einer Tabelle der SQL-Datenbank angelegt und muss
    a) die Kopie in MySQL mit Daten aus der SQL2005-DB Initial befüllen
    b) die Kopie in MySQL immer sofort aktualisieren, sobald sich in der Tabelle der SQL-DB eine Änderung ergibt. Das heißt, geändert oder gelöscht werden die Datensätze in der SQL-DB nicht, es können nur neue Datensätze dazukommen, diese sollen automatisch in der MySQL-Tabelle aufscheinen.

    Ich habe in der SQL2005-DB einen Linked Server erstellt mit Anbieter MSDASQL und dem MySQL 5.1 ODBC-Treiber. Vom SQL-Server aus kann ich mir mit " Select * from Openquery...." die leere Tabelle in MySQL ansehen.
    Ich habe es aber bisher nicht geschafft, einen funktionierenden Trigger auf der SQL-Tabelle zu hinterlegen - vielleicht weil die Tabelle ein View ist?
    Ich habe es bisher auch nicht geschafft, vom SQL-Server aus die Daten mit INSERT INTO OPENQUERY in die MySQL-Tabelle zu kopieren.

    Jetzt hoffe ich auf den einen oder anderen Tipp, was ich bisher falsch gemacht haben könnte.

    Vielen Dank im Voraus

    LG

    egydd
     
  2. ukulele

    ukulele Datenbank-Guru

    Also erstmal warum erstellst du nicht eine View bzw. einen Verbindungsserver in MySQL um deine MSSQL2005 Tabelle zu sehen?

    Bei einem Verbindungsserver in MSSQL müsste eigentlich ein normaler Insert Befehl funktionieren
    Code:
    INSERT INTO    [<servername>\<instanzname>].[<datenbank>].[<schema>].[<tabelle>](
                pk,
                spalte1,
                spalte2)
    VALUES    (    pk,
                wert1,
                wert2)
    
    Wenn der MSSQL auf den MySQL schreiben soll (was ich bisher noch nie gemacht hatte, keine Ahnung ob das geht), brauchst du in jedem Fall einen Nutzer mit schreibrechten.
     
  3. egydd

    egydd Neuer Benutzer

    Vielen Dank für die Antwort. Ich hatte ja ursprünglich versucht, vom MySQL aus auf den MSSQL2005 zu zugreifen - habe es aber irgendwie nicht geschafft. Daher der Verbindungsserver auf MSSQL. Ich hatte allerdings nicht an einen Verbindungsserver in MySQL gedacht. Werde schauen, ob ich das hinbekomme.
     
  4. ukulele

    ukulele Datenbank-Guru

    Ich weiß auch nicht ob MySQL das kann. In dem Fall wäre es aber am sinnigsten die Tabelle nicht zu duplizieren sondern nur als View im anderen Server anzulegen sofern beide zeitgleich verfügbar sind.
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden