Datenbankverbindungen konfigurieren

Erfahren Sie, wie Sie das Automatisierungsskript installieren und die Schritte ausführen, die zu funktionsfähigen Node-RED-, Mosquitto- und Oracle Database-Instanzen führen. Dazu gehört auch die Konfiguration der verschiedenen Lösungskomponenten, um eine Verbindung untereinander herzustellen.

Skript ausführen

Das Skript im Repository GitHub automatisiert das Provisioning der Umgebung und installiert die Abhängigkeiten.

  1. Siehe Downloadcode für den Link zum Repository GitHub.
  2. Führen Sie das Skript aus.
  3. Das Skript stellt die Infrastruktur bereit.
    Die Automatisierung beginnt mit:
    1. Erstellen Sie ein VCN und Subnetze, und öffnen Sie die erforderlichen Ports.
    2. Provisioning einer OCI Compute-Instanz mit Oracle Linux als Betriebssystem.
  4. Das Skript installiert die Software.
    1. Installiert Oracle Database (kostenloser Entwickler) auf der Instanz.
    2. Erstellt ein Schema und eine Tabelle für Node-RED und erteilt dem Schemabenutzer die erforderlichen Berechtigungen.
    3. Installiert Node-RED-Abhängigkeiten wie Knoten und NPM.
    4. Installiert Node-RED.
    5. Installiert den Mosquitto-Server.
    6. Aktualisiert die sfw-Regeln, sodass auf diese Ports extern zugegriffen werden kann.
    7. Installiert den Oracle-Client und die erforderlichen Node-RED-Oracle Database-Plug-ins node-red-contrib-oracledb-mod.
    8. Stellt einen Node-RED-Ablauf bereit, der ein Thema in Mosquitto abonniert und die Daten in die Datenbank speichert.

Datenbankverbindung herstellen

Sobald alles hochgefahren und gestartet ist (dies dauert etwa 15 Minuten), müssen Sie den Benutzernamen und das Kennwort zu Node-RED hinzufügen, um eine Verbindung zur Datenbank herzustellen.

  1. Melden Sie sich bei Node-RED <Machine IP>:1880 an.
  2. Doppelklicken Sie auf den Knoten oracledb.
  3. Klicken Sie auf die Schaltfläche Bearbeiten.
  4. Ersetzen Sie sie durch Oracle Autonomous Database.

Autonome Datenbank erstellen

Mit OCI können Sie Oracle Autonomous Database einrichten.

  1. Navigieren Sie in OCI zur Autonomous Database.
  2. Klicken Sie auf Autonome Datenbank erstellen.
  3. Wählen Sie unter Workload-Typ auswählen die Option Transaktionsverarbeitung aus.
  4. Aktivieren Sie Compute-Autoscaling.
  5. Geben Sie unter Administratorzugangsdaten erstellen Ihr Kennwort ein.
  6. Klicken Sie unten auf dem Bildschirm auf Autonomous Database erstellen.
    Der Bildschirm Autonomous Database-Details wird geöffnet.

Autonomous Database konfigurieren

Richten Sie den Benutzer und das Schema ein, die für Node-RED erforderlich sind, und erstellen Sie eine Testtabelle, mit der die Lösung getestet werden soll.

  1. Klicken Sie im Fenster Autonomous Database-Details auf Datenbankaktionen > SQL.
    Der Editor Database Actions | SQL wird geöffnet.
  2. Führen Sie das folgende Skript aus, um ein Schema und einen Benutzer zu erstellen, ihm die erforderlichen Berechtigungen zu erteilen und eine erste Testtabelle zu erstellen.
    CREATEUSER nodered IDENTIFIED BY<YourPassword>;
    GRANTCREATE SESSION TO nodered;
    GRANTCREATETABLETO nodered;
    GRANTCREATEPROCEDURETO nodered;
    GRANTCREATETRIGGERTO nodered;
    GRANTCREATEVIEWTO nodered;
    ALTERUSER C##NODERED QUOTA UNLIMITED ON USERS;
    CREATETABLE nodered.nodered (col1 varchar2(500),col2 varchar2(500));
    CREATETABLE nodered.sensor_data (
      id NUMBER GENERATED ALWAYS ASIDENTITY, -- Optional auto-generated ID column
      vibration NUMBER,
      sound NUMBER,
      temp NUMBER,
      humi NUMBER,
    timestampTIMESTAMPDEFAULTCURRENT_TIMESTAMP
    );

Node-RED-Verbindung konfigurieren

Verbinden Sie Node-RED mit der zuvor eingerichteten Autonomous Database.

  1. Navigieren Sie in OCI zu Autonomous Database.
  2. Klicken Sie auf Datenbankverbindung.
  3. Verbindungsbildschirm kopieren
  4. Stellen Sie (über SSH) eine Verbindung zum bereitgestellten Node-RED-Server her.
    1. Bearbeiten Sie tnsnames.ora.
    2. Fügen Sie die Verbindungszeichenfolge hinzu: vi /opt/oracle/product/$DBHOME/dbhomeFree/network/admin/tnsnames.ora
    3. Fügen Sie die Verbindungszeichenfolge ein.
    4. Benennen Sie die Verbindungszeichenfolge in adb = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.eu-frankfurt-1.oraclecloud.com))(connect_data=(service_name=ixcsyvrmtjm8ebr_iottest_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=yes))) um.
  5. Navigieren Sie zur Konsole Node-RED.
  6. Bearbeiten Sie den Knoten oracledb.
  7. Ändern Sie die Serververbindung und die Sicherheit.

    Hinweis:

    Wenn Sie den Fehler ORA-12506: TNS:listener rejected connection based on service ACL filtering erhalten, ändern Sie die Access Control-Liste so, dass sie die IP des Node-RED-Servers enthält. Sie müssen auch die IP der Maschine hinzufügen, von der Sie eine Verbindung herstellen, und die Anforderung für mTLS deaktivieren.

Oracle APEX einrichten

Sie können die Daten von Kaggle oder Ihre eigenen Sensordaten verwenden.

  1. Datenbankaktionen starten
  2. Klicken Sie auf APEX WORKSPACES.
  3. Füllen Sie das Formular aus, um einen Workspace zu erstellen, und stellen Sie sicher, dass Sie denselben zuvor erstellten Datenbankbenutzer verwenden.
  4. Starten Sie das APEX-Dashboard.
  5. Klicken Sie auf Anwendung erstellen.
  6. Wählen Sie Beispieldiagramme aus.
  7. Konfigurieren Sie die Diagramme so, dass die Daten aus der Tabelle gelesen werden.