Oracle Database Express Edition inkl. APEX und Oracle Rest Data Services installieren.

Getestet auf AlmaLinux 8

Oracle Database Express installieren

Vorhandene Pakete aktualisieren und wget installieren:

dnf update
dnf install wget

Die neuste Version der Datenbank und des Preinstall-Pakets gibt es hier:

https://www.oracle.com/de/database/technologies/xe-downloads.html


Sofern nicht Oracle Linux als Betriebssystem genutzt wird, muss vorher das Paket oracle-database-preinstall installiert werden.

Hiermit werden alle Abhängigkeiten für die Datenbank installiert:

wget https://yum.oracle.com/repo/OracleLinux/OL8/appstream/x86_64/getPackage/oracle-database-preinstall-21c-1.0-1.el8.x86_64.rpm
dnf -y install oracle-database-preinstall-21c-1.0-1.el8.x86_64.rpm

Als nächstes kann Oracle Database XE installiert werden:

wget https://download.oracle.com/otn-pub/otn_software/db-express/oracle-database-xe-21c-1.0-1.ol8.x86_64.rpm
dnf -y install oracle-database-xe-21c-1.0-1.ol8.x86_64.rpm

Bevor die Datenbank initialisiert wird, kann bei Bedarf die Konfigurationsdatei angepasst werden:

vi /etc/sysconfig/oracle-xe-21c.conf

Folgende Parameter können angegeben werden:

  • LISTENER_PORT Port für die Datenbankverbindung. Wenn nichts angegeben ist, wird der Port automatisch zugewiesen (Der Standardport ist 1521).
  • EM_EXPRESS_PORT Port für den Oracle Enterprise Manager (EM) Express. Standardmäßig auf 5500.
  • CHARSET Charset der Datenbank. Standardmäßig AL32UTF8.
  • DBFILE_DEST Pfad zu den Datenbankdateien. Wenn nichts angegeben ist, wird standradmäßig Oracle Base /opt/oracle/oradata verwendet. Wenn ein abweichender Pfad eingegeben wird muss sichergestellt sein, dass der Besitzer oracle ist.
  • SKIP_VALIDATIONS Überprüfung deaktivieren ob genügend RAM und Festplattenspeicher vorhanden ist. Standardmäßig false.


Jetzt kann die Datenbank initialisiert werden:

/etc/init.d/oracle-xe-21c configure

Sofern an der Konfigurationsdatei keine Änderungen vorgenommen wurden, erzeugt das Skript eine Container Database (XE) mit einer Pluggable Database (XEPDB1) und öffnet den Port 1521 für Verbindungen mit der Datenbank und Port 5050 für den Enterprise Manager Express.


Zur Sicherheit sollte anschließend ein Neustart durchgeführt werden:

reboot


Danach die Datenbank erneut starten und so konfigurieren, dass sie nach einem Neustart automatisch anläuft.

systemctl enable oracle-xe-21c
systemctl start oracle-xe-21c

Umgebungsvariablen anlegen

Um die Dienstprogramme von Oracle zu nutzen müssen noch Umgebungsvariablen angelegt werden.

Dies sollte am besten mit dem oracle Benutzer gemacht werden.

Zum oracle Benutzer wechseln:

su oracle

Die Umgebungsvariablen für Oracle in die .bashrc einfügen

cd ~
vi .bashrc

Folgende Zeilen am Ende der Datei unter # User specific aliases and functions einfügen:

export ORACLE_SID=XE
export ORAENV_ASK=NO
. /opt/oracle/product/21c/dbhomeXE/bin/oraenv

Damit die Änderungen wirksam werden muss man sich entweder neu einloggen oder folgenden Befehl ausführen:

source ~/.bashrc

Oracle Enterprise Manager Express nutzen

Der Oracle Enterprise Manager Express ist standardmäßig unter https://localhost:5500/em zu erreichen.

Für einen externen Zugriff müssen folgende Befehle ausgeführt werden (Als oracle Benutzer):

sqlplus system
Enter password: SYSTEM_password
SQL> EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);

Mit ss -tulnp | grep LISTEN kann überprüft werden ob der Enterprise Manager auf dem Port 5500 läuft

tcp   LISTEN 0      128                *:5500             *:*    users:(("tnslsnr",pid=2531,fd=18))

Damit der Port von außen erreichbar ist, muss dieser in der Firewall geöffnet werden:

su -
firewall-cmd --permanent --add-port=5500/tcp
firewall-cmd --reload

Oracle Application Express (APEX) installieren

Die neuste Version von APEX gibt es hier:

https://www.oracle.com/tools/downloads/apex-downloads.html

Zuerst das Paket herunterladen und ins Verzeichnis /opt entpacken:

wget https://download.oracle.com/otn_software/apex/apex_22.1.zip
unzip apex_22.1.zip "apex/*" -d /opt
chown oracle: -R /opt/apex
cd /opt/apex

Die Installation wird in der SQL-Konsole gestartet:

su oracle
sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYSTEM_password
SQL> @apexins.sql SYSAUX SYSAUX TEMP /i/

Administrator und APEX_PUBLIC_USER anlegen:

SQL> ALTER USER APEX_PUBLIC_USER ACCOUNT UNLOCK;
SQL> ALTER USER APEX_PUBLIC_USER IDENTIFIED BY new_password;
SQL> ALTER SESSION SET CONTAINER = XEPDB1;
SQL> @apxchpwd.sql

Konfiguration starten:

SQL> @apex_rest_config.sql

Oracle REST Data Services installieren

Neuste Version von Oracle Java 18 herunterladen:

https://www.oracle.com/java/technologies/downloads/

wget https://download.oracle.com/java/18/latest/jdk-18_linux-x64_bin.rpm
dnf -y localinstall jdk-18_linux-x64_bin.rpm

Oracle REST Data Services herunterladen https://www.oracle.com/database/sqldeveloper/technologies/db-actions/download/

wget https://download.oracle.com/otn_software/java/ords/ords-latest.zip
unzip ords-latest.zip -d /opt/ords
chown oracle: -R /opt/ords

Installation starten

su oracle
echo -e 'export PATH="$PATH:/opt/ords/bin"' >> ~/.bashrc

Terminal Sitzung neu starten...

ords install
Oracle REST Data Services - Interaktive Installation

  Geben Sie eine Zahl zur Auswahl des Installationstyps ein
    [1] ORDS nur in der Datenbank installieren oder upgraden
    [2] Datenbankpool erstellen oder aktualisieren und ORDS in der Datenbank installieren/upgraden
    [3] Nur Datenbankpool erstellen oder aktualisieren
  Choose [2]:
  Geben Sie eine Zahl zur Auswahl des zu verwendenden Datenbankverbindungstyps ein
    [1] Basis (Hostname, Port, Servicename)
    [2] TNS (TNS-Alias, TNS-Verzeichnis)
    [3] Benutzerdefinierte Datenbank-URL
  Choose [1]:
  Geben Sie den Hostnamen der Datenbank ein [localhost]:
  Listener-Port der Datenbank eingeben [1521]:
  Datenbankservicename eingeben [XE]: XEPDB1
  Geben Sie einen Datenbankbenutzernamen mit Administratorberechtigungen an.
    Geben Sie den Administratorbenutzernamen ein: SYS
  Datenbankkennwort für SYS AS SYSDBA eingeben:
Verbindung zu Datenbankbenutzer: SYS AS SYSDBA URL: jdbc:oracle:thin:@//localhost:1521/XEPDB1 wird hergestellt

Informationen werden abgerufen...
  Geben Sie den Default Tablespace für ORDS_METADATA und ORDS_PUBLIC_USER ein [SYSAUX]:
  Geben Sie den Temporary Tablespace für ORDS_METADATA und ORDS_PUBLIC_USER ein [TEMP]:
  Geben Sie eine Zahl ein, um zusätzliche Features zum Aktivieren auszuwählen:
    [1] Datenbankaktionen (aktiviert alle Features)
    [2] REST-fähige SQL und Datenbank-API
    [3] REST-fähige SQL
    [4] Datenbank-API
    [5] Kein Wert
  Choose [1]:
  Geben Sie eine Zahl zum Konfigurieren und Starten von ORDS im Standalone-Modus ein
    [1] ORDS im Standalone-Modus konfigurieren und starten
    [2] Überspringen
  Choose [1]:
  Geben Sie eine Zahl ein, um das HTTP- oder das HTTPS-Protokoll zu verwenden
    [1] HTTP
    [2] HTTPS
  Choose [1]:
  Geben Sie den HTTP-Port ein [8080]:
  Geben Sie das Speicherot der statischen APEX-Ressourcen ein: /opt/apex/images

Server starten

ords serve

Quellen

Kommentare

Loading comments...