Der MobiLink-Server unterstützt MySQL Community- und Enterprise-Server der Version 5.1.3 oder höher.
Vor dem Ausführen des Setupskripts sollten Sie die folgenden Anforderungen berücksichtigen:
Der gleiche Datenbankbenutzer, der das Setupskript ausführt, wird als Benutzer erwartet, der die MobiLink-Systemtabellen während der Synchronisation aktualisiert. Dieser Benutzer muss verwendet werden, um den MobiLink-Server zu starten und MobiLink-Anwendungen zu konfigurieren. Siehe Erforderliche Privilegien.
Der RDBMS-Benutzer, der mithilfe des MobiLink-Servers eine Verbindung mit der konsolidierten Datenbank herstellt, muss in der Lage sein, die MobiLink-Systemtabellen, -Prozeduren usw. ohne Qualifizierer zu verwenden (Beispiel: SELECT * from ml_user). Siehe Systemtabellen des MobiLink-Servers.
Der MobiLink-Server erfordert, dass die Standard-Speicher-Engine ACID-kompatibel ist. Wenn die Standard-Speicher-Engine nicht ACID-kompatibel ist, müssen Sie sicherstellen, dass alle Tabellen des MobiLink-Servers mit einer ACID-kompatiblen Speicher-Engine erstellt werden, wie z.B. InnoDB und Falcon. Andernfalls können Dateninkonsistenzen auftreten.
Vor dem Übernehmen der Datei für Ihre MySQL-Datenbank müssen Sie ggf. die Skriptdatei syncmys.sql bearbeiten und die folgenden zwei Zeilen nach der Zeile delimiter // hinzufügen, wobei engine_name für eine ACID-konforme Speicher-Engine steht.
set storage_engine = [engine_name] // |
Um MySQL für die Verwendung als MobiLink-konsolidierte Datenbank einzurichten, müssen Sie eine Einrichtungsprozedur durchführen, die Systemtabellen, gespeicherte Prozeduren, Trigger und Ansichten hinzufügt, die für die MobiLink-Synchronisation erforderlich sind.
Voraussetzungen
Ihre MySQL-Benutzer-ID muss Privilegien zum Erstellen von Tabellen, Prozeduren, Funktionen, Ansichten und Triggern haben.
Kontext und Bemerkungen
Sie können auch das MobiLink 16-Plug-In für Sybase Central verwenden, um MySQL als konsolidierte Datenbank einzurichten.
Führen Sie mithilfe des MySQL-Befehlszeilentools oder des MySQL Query Browsers das Setupskript syncmys.sql aus, das sich im Verzeichnis %SQLANY16%\MobiLink\Setup befindet.
Ergebnisse
Die MySQL-Datenbank ist bereit für die Verwendung als konsolidierte MobiLink-Datenbank.
Um MySQL für die Verwendung als MobiLink-konsolidierte Datenbank einzurichten, müssen Sie eine Einrichtungsprozedur durchführen, die Systemtabellen, gespeicherte Prozeduren, Trigger und Ansichten hinzufügt, die für die MobiLink-Synchronisation erforderlich sind.
Voraussetzungen
Ihre MySQL-Benutzer-ID muss Privilegien zum Erstellen von Tabellen, Prozeduren, Funktionen, Ansichten und Triggern haben.
Kontext und Bemerkungen
Sie können auch das Setupskript syncmys.sql verwenden, um MySQL als konsolidierte Datenbank einzurichten.
Wählen Sie im MobiLink 16-Plug-In für Sybase Central im Menü Ansicht die Option Ordner.
Öffnen Sie Ihr MobiLink-Projekt und erweitern Sie Konsolidierte Datenbanken.
Klicken Sie mit der rechten Maustaste auf den Datenbanknamen, und klicken Sie auf MobiLink-Systemeinrichtung überprüfen. Wenn die Datenbank ein Setup erfordert, werden Sie zum Fortfahren aufgefordert.
Wenn Sie eine vorhandene MobiLink-Systemeinrichtung verwenden möchten, muss default_schema das Schema der MobiLink-Systemeinrichtung sein.
Ergebnisse
Die MySQL-Datenbank ist bereit für die Verwendung als konsolidierte MobiLink-Datenbank.
Für die konsolidierte MySQL-Datenbank muss eine ODBC-DSN eingerichtet werden. Verwenden Sie dazu den ODBC-Treiber, der auf der MySQL-Website zur Verfügung steht. Der MobiLink-Server unterstützt MySQL ODBC-Treiber 5.1.3 oder höher. Siehe:
Führen Sie zum Festlegen der ODBC-Konfigurationsdatei in UNIX eine der folgenden Aktionen aus:
Datentyp-Zuordnungen Die Datentypen von Spalten müssen korrekt zwischen der konsolidierten Datenbank und den entfernten Datenbanken zugeordnet werden. Siehe MySQL-Datenzuordnung.
Gespeicherte Prozeduren Es ist nicht möglich, die Parameter INOUT und OUT in Aufrufen aus gespeicherten Prozeduren zu verwenden. Prozeduren, die diese Parameter erfordern, müssen als Funktionen implementiert werden, die einen OUT-Wert zurückgeben.
Serverereignisse, die INOUT-Parameter erfordern, z.B. authenticate_user und modify_user, müssen als Funktionen implementiert werden und mit einer SELECT-Anweisung anstelle einer CALL-Anweisung ausgeführt werden.
Benannte Parameter Benutzerdefinierte benannte Parameter werden nicht unterstützt.
Cursor-Skripten Die Ereignisse upload_fetch, download_cursor und download_delete_cursor müssen mithilfe einer SELECT-Anweisung aufgerufen werden, die vom MobiLink-Server unter Verwendung einer Isolationsstufe zum Lesen festgeschriebener Anweisungen ausgeführt werden. Ein Bug im MySQL ODBC-Treiber führt dazu, dass nicht festgeschriebene Anweisungen, wie z.B. INSERT, UPDATE und DELETE-Anweisungen, vom Server gelesen werden. Dies führt zu dazu, dass die Daten in der konsolidierten und der entfernten Datenbank inkonsistent sind.
Als Behelfslösung für dieses Problem sollten Sie eine LOCK IN SHARE MODE-Klausel in Ihre SELECT-Anweisungen einbeziehen. Beispiel:
SELECT column1 FROM table1 WHERE id > 0 LOCK IN SHARE MODE |
Diese Klausel schützt die SELECT-Anweisung vor nicht festgeschriebenen Vorgängen.
Massen-Upload Der MySQL-ODBC-Treiber unterstützt den Massen-Upload derzeit nicht ordnungsgemäß.
MLSD Der MySQL-ODBC-Treiber umfasst zurzeit keine Unterstützung für MSDTC, daher wird eine separate MLSD nicht unterstützt.
MySQL-Serverkonfiguration Die MobiLink-Synchronisationsskripten sind in der Tabelle ml_script gespeichert und werden bei Bedarf von dort abgerufen. Sie müssen max_allowed_packet in der Datei my.ini möglicherweise auf 16 M oder höher festlegen.
Konflikterkennung Die Skripten, die für die Konfliktlösung mit einer konsolidierten MySQL-Datenbank generiert werden, enthalten mehrere Anweisungen. Falls Sie mit der Konflikterkennung arbeiten, müssen Sie das Kontrollkästchen Allow multiple statements (Mehrere Anweisungen zulassen) auf der Seite Flags 3 (Parameter 3) des Fensters MySQL Connector/ODBC Data Source Configuration (MySQL-Konnektor/ODBC-Datenquellen Konfiguration) aktivieren, wenn Sie einen DSN konfigurieren, die der MobiLink-Server für Verbindungen zu Ihrer MySQL-Datenbank verwendet.
Mehrere Anweisungen Falls eines Ihrer Synchronisationsskripten SQL-Befehle in durch Semikolons getrennten Batches enthält, müssen Sie möglicherweise das Kontrollkästchen Allow multiple statements (Mehrere Anweisungen zulassen) auf der Seite Flags 3 (Parameter 3) des Fensters MySQL Connector/ODBC Data Source Configuration (MySQL-Konnektor/ODBC-Datenquellen Konfiguration) aktivieren, wenn Sie einen DSN konfigurieren, die der MobiLink-Server für Verbindungen zu Ihrer MySQL-Datenbank verwendet.
Siehe MobiLink-Isolationsstufen.
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2013, SAP AG oder ein SAP-Konzernunternehmen. - SAP Sybase SQL Anywhere 16.0 |