Oracle Database XE installieren (AlmaLinux/CentOS)
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.
Datenbank initialisieren
/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
- https://www.oracle.com/de
- https://docs.oracle.com/en/database/oracle/apex/22.1/htmig/installing-and-configuring-apex-and-ords.html
- https://docs.oracle.com/en/database/oracle/apex/22.1/htmig/enabling-network-services-in-Oracle-db11g-or-later.html
- https://apex.oracle.com/pls/apex/germancommunities/apexcommunity/tipp/6121/index-en.html
- https://stackoverflow.com/