Entpackte JDBC-Treiber

robots: noindex

Looker für die Verwendung von entpackten JDBC-Treibern konfigurieren

Bei einigen von Looker unterstützten Dialekten kann der JDBC-Treiber aus Lizenzgründen nicht in der Looker-JAR-Datei gepackt werden. In diesen Fällen müssen Sie den JDBC-Treiber auf dem Looker-Server installieren und dann Looker konfigurieren, um den nicht gepackten Treiber wie auf dieser Seite beschrieben zu registrieren.

In der folgenden Tabelle sind die Dialekte aufgeführt, die entpackte JDBC-Treiberinstallationen erfordern:

Vorbereitung

Sie benötigen Folgendes, um Looker mit einer Datenbank zu verbinden, für die ein entpackter JDBC-Treiber erforderlich ist:

  • Befehlszeilenzugriff auf den Looker-Server.
  • Der JDBC-Treiber als JAR-Datei. In der Dokumentation des Dialekts finden Sie möglicherweise eine Anleitung zum Download der Datei. Andernfalls gehen wir davon aus, dass Sie Zugriff auf die JAR-Datei haben.
  • Das Fahrersymbol für Ihren Dialekt. Ein Treibersymbol ist ein Stringwert, den Looker intern verwendet, um den Dialekt an den Fahrer anzupassen. In den Beispielen auf dieser Seite wird der allgemeine Wert driver_symbol verwendet. Die Symbole, die Looker zum Registrieren von JDBC-Treibern für Dialekte verwendet, finden Sie in der Liste der Treibersymbole.
  • Der YAML-Treibereintrag für Ihren Dialekt, der der Konfigurationsdatei custom_jdbc_config.yml hinzugefügt werden soll. Weitere Informationen finden Sie auf dieser Seite im Abschnitt Treibereinträge in der YAML-Konfigurationsdatei.

Treibereinträge in der YAML-Konfigurationsdatei

Hier ein Beispiel für einen Treibereintrag in der Datei custom_jdbc_config.yml:

  - name: driver_symbol
    dir_name: driver_symbol
    module_path: com.dialect.jdbc.DialectDriver
    override_jdbc_url_subprotocol: driver_subprotocol  # optional

Wenn Sie den Fahrereintrag für Ihren Dialekt schreiben:

  • Die Datei custom_jdbc_config.yml basiert auf YAML, das heißt, der Einzug und die Abstände sind wichtig.
  • Die Attribute name und dir_name müssen das Treibersymbol sein, das Looker für Sie bei der Registrierung von JDBC-Treibern erwartet.
  • Sie können das Attribut file_name anstelle von dir_name verwenden, das den relativen Pfad von custom_jdbc_drivers zur JDBC-Treiber-JAR-Datei enthält. dir_name wird empfohlen, da es es ermöglicht, mehrere Treiber in ihren eigenen Verzeichnissen zu isolieren, und die Wahrscheinlichkeit von Kollisionen von Java-Klassen verringert.
  • Das Attribut module_path hängt vom JDBC-Treiber ab. Es sollte der voll qualifizierte Pfad zur Java-Treiberklasse sein. In diesem Beispiel wird ein generischer Wert verwendet. Um den spezifischen module_path zu ermitteln, den der Fahrer verwendet, lesen Sie in der Dokumentation zur Registrierung der Treiberklasse.
  • override_jdbc_url_subprotocol ist ein optionales Argument, mit dem das in dem JDBC-String verwendete Subprotokoll überschrieben wird, das Looker an die Datenbank sendet. Ein typischer JDBC-String sieht so aus:
jdbc:mysql://localhost:3306/database_name[?propertyName1][=propertyValue1]

Dabei ist mysql das verwendete JDBC-Subprotokoll.

Wenn Sie override_jdbc_url_subprotocol: driver_subprotocol angeben, wird dieser JDBC-String so geändert:

jdbc:driver_subprotocol://localhost:3306/database_name[?propertyName1][=propertyValue1]

Diese Option ist erforderlich, wenn Sie einen entpackten JDBC-Treiber verwenden müssen, der ein anderes URL-Subprotokoll als das Standard-URL-Subprotokoll von Looker erfordert. Dies ist größtenteils nicht nötig, es sei denn, in der Dokumentation des Dialekts wird ausdrücklich angegeben, dass dies erforderlich ist. MongoBI ist ein Beispiel für einen Dialekt, für den diese Option erforderlich ist.

Entpackte JDBC-Treiber installieren

  1. Wechseln Sie zum Looker-Basisverzeichnis. In diesem Dokument gehen wir davon aus, dass es looker ist

    cd looker
    
  2. Erstellen Sie ein Verzeichnis mit dem Namen custom_jdbc_drivers. Dies ist das Verzeichnis der obersten Ebene für alle entpackten JDBC-Treiberinstallationen. Der Pfad zu diesem Verzeichnis muss looker/custom_jdbc_drivers lauten

    mkdir custom_jdbc_drivers
    
  3. Erstellen Sie im Verzeichnis custom_jdbc_drivers ein Unterverzeichnis mit dem Treibersymbol Ihres Dialekts. In diesem Beispiel wird der generische Wert driver_symbol verwendet. Der Pfad zum Verzeichnis sieht so aus: looker/custom_jdbc_drivers/driver_symbol

    cd custom_jdbc_drivers
    mkdir driver_symbol
    

  4. Speichern Sie die JDBC-Treiberdateien für Ihren Dialekt in diesem Verzeichnis. Die Methode hängt davon ab, wo der Dialekttreiber gefunden wird und auf den Server hochgeladen wurde. Achten Sie aber darauf, dass sich die relevanten JAR-Dateien im Verzeichnis driver_symbol befinden: looker/custom_jdbc_drivers/driver_symbol/
    Beispiel: looker/custom_jdbc_drivers/driver_symbol/DialectDriver.jar

    Das Verschieben der erforderlichen Dateien auf den Looker-Server hängt davon ab, woher Sie die Treiberdateien erhalten haben und welche Präferenzen Sie für die Dateiübertragung ausgewählt haben. Beispiele für Befehle zum Übertragen von Dateien in dieses Verzeichnis sind wget, scp, curl usw.

  5. Wechseln Sie zurück zum Looker-Anwendungsverzeichnis und erstellen Sie eine Konfigurationsdatei mit dem Namen custom_jdbc_config.yml. Der Pfad zu dieser Datei sollte looker/custom_jdbc_config.yml lauten. Diese Datei enthält die Informationen, die Looker benötigt, um den benutzerdefinierten JDBC-Treiber zu finden und zu registrieren.

    cd looker
    vim custom_jdbc_config.yml
    
  6. Fügen Sie der custom_jdbc_config.yml-Konfigurationsdatei einen neuen Eintrag für Ihren Dialekt hinzu. Weitere Informationen zu Treibereinträgen finden Sie im Abschnitt Treibereinträge in der YAML-Konfigurationsdatei auf dieser Seite.

    - name: driver_symbol
      dir_name: driver_symbol
      module_path: com.dialect.jdbc.DialectDriver
    
  7. Erstellen oder aktualisieren Sie die Datei lookerstart.cfg, damit die Looker-Anwendung mit der Konfiguration des entpackten JDBC-Treibers startet. Der Pfad zu dieser Datei sollte looker/lookerstart.cfg lauten. Fügen Sie die Option --use-custom-jdbc-config hinzu. Wenn es andere Optionen gibt, hängen Sie diese an das Ende der Looker-Startoptionen an:

    LOOKERARGS="--use-custom-jdbc-config"
    

    Wenn LOOKERARGS anders als lookerstart.cfg festgelegt ist, z. B. in einer Umgebungsvariablen, können Sie dieses Start-Flag dort hinzufügen. Alternativ können Sie LOOKERARGS="${LOOKERARGS} --use-custom-jdbc-config" festlegen, damit die vorhandenen Werte in diese Datei erweitert werden.

  8. Starten Sie die Looker-Anwendung neu. Verwenden Sie in diesem Befehl den Namen des Looker-Startskripts, z. B. ./looker oder ./looker.sh.

    ./looker restart
    

    oder none ./looker stop ./looker start

Mehrere entpackte JDBC-Treiber

Wenn Sie mehr als einen Dialekt für die Verwendung unentpackter JDBC-Treiber konfigurieren müssen, gilt der oben beschriebene Prozess. Das Verzeichnis custom_jdbc_drivers enthält mehrere dialect-Unterverzeichnisse mit eigenen Treiber-JARs. Die Datei custom_jdbc_config.yml enthält mehrere Einträge:

ls looker/custom_jdbc_drivers

driver_symbol_1 driver_symbol_2
ls looker/custom_jdbc_drivers/driver_symbol_1

Dialect1Driver.jar
- name: driver_symbol_1
  dir_name: driver_symbol_1
  module_path: com.dialect.jdbc.Dialect1Driver

- name: driver_symbol_2
  dir_name: driver_symbol_2
  module_path: com.dialect.jdbc.Dialect2Driver