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.

Die Initialisierung kann nun gestartet werden:

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

Oracle beim Neustart automatisch starten

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

Zum oracle Benutzer wechseln

su oracle

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

cd ~
vi .bashrc
# User specific aliases and functions
export ORACLE_SID=XE
export ORAENV_ASK=NO
. /opt/oracle/product/21c/dbhomeXE/bin/oraenv


Unter https://localhost:5500/em ist standardmäßig der Enterprise Manager zu erreichen.

Für einen externen Zugriff muss folgender Befehl 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

APEX installieren

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

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

Installation starten

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...