Oracle Database XE installieren (AlmaLinux/CentOS): Unterschied zwischen den Versionen

Zur Navigation springen Zur Suche springen
K
 
(14 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 53: Zeile 53:
Um die Dienstprogramme von Oracle zu nutzen müssen noch Umgebungsvariablen angelegt werden.
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:<syntaxhighlight lang="bash">
Zum oracle Benutzer wechseln:<syntaxhighlight lang="bash">
Zeile 86: Zeile 86:
firewall-cmd --permanent --add-port=5500/tcp
firewall-cmd --permanent --add-port=5500/tcp
firewall-cmd --reload
firewall-cmd --reload
</syntaxhighlight>
</syntaxhighlight><gallery widths="260" heights="180">
Datei:Oracle enterprise manager login.png|Login
Datei:Oracle enterprise manager home.png|Dashboard
</gallery>


== Oracle Application Express (APEX) installieren ==
== Oracle Application Express (APEX) installieren ==
[[Datei:Oracle apex login.png|mini|Oracle APEX Login]]
Die neuste Version von APEX gibt es hier:
Die neuste Version von APEX gibt es hier:


Zeile 94: Zeile 98:


Zuerst das Paket herunterladen und ins Verzeichnis <code>/opt</code> entpacken:<syntaxhighlight lang="bash">
Zuerst das Paket herunterladen und ins Verzeichnis <code>/opt</code> entpacken:<syntaxhighlight lang="bash">
wget https://download.oracle.com/otn_software/apex/apex_22.1.zip
wget https://download.oracle.com/otn_software/apex/apex-latest.zip
unzip apex_22.1.zip "apex/*" -d /opt
unzip apex_22.1.zip "apex/*" -d /opt
chown oracle: -R /opt/apex
chown oracle: -R /opt/apex
Zeile 181: Zeile 185:
</syntaxhighlight>Der ORDS Server startet im Anschluss an die Installation automatisch und läuft auf Port 8080.
</syntaxhighlight>Der ORDS Server startet im Anschluss an die Installation automatisch und läuft auf Port 8080.


Mit '''STRG+c''' kann der Server beendet werden.


Damit APEX von außen erreichbar ist muss auch hier der Port in der Firewall geöffnet werden:<syntaxhighlight lang="bash">
Damit APEX von außen erreichbar ist, muss auch hier der Port in der Firewall geöffnet werden:<syntaxhighlight lang="bash">
firewall-cmd --permanent --add-port=8080/tcp
firewall-cmd --permanent --add-port=8080/tcp
firewall-cmd --reload
firewall-cmd --reload
</syntaxhighlight>Jetzt kann der ORDS Server erneut gestartet werden:<syntaxhighlight lang="bash">
</syntaxhighlight>Jetzt kann der ORDS Server erneut gestartet werden:<syntaxhighlight lang="bash">
ords serve
ords serve
</syntaxhighlight>Um den Service im Hintergrund und nach einen Neustart automatisch starten zu lassen:<syntaxhighlight lang="bash">
</syntaxhighlight>
 
Oracle APEX ist jetzt unter http://&#x3C;Server-IP&#x3E;:8080 zu erreichen
 
 
Um den Service im Hintergrund und nach einen Neustart automatisch starten zu lassen:<syntaxhighlight lang="bash">
vi /etc/systemd/system/ords.service
vi /etc/systemd/system/ords.service
</syntaxhighlight><syntaxhighlight lang="bash">
</syntaxhighlight><syntaxhighlight lang="bash">
Zeile 197: Zeile 207:
[Service]
[Service]
User=oracle
User=oracle
WorkingDirectory=/tmp/hsperfdata_oracle
WorkingDirectory=/opt/ords
ExecStart=
ExecStart=
ExecStart=/opt/ords/bin/ords serve
ExecStart=/opt/ords/bin/ords serve
Zeile 206: Zeile 216:
</syntaxhighlight><syntaxhighlight lang="bash">
</syntaxhighlight><syntaxhighlight lang="bash">
systemctl daemon-reload
systemctl daemon-reload
systemctl enable --now ords
</syntaxhighlight>
</syntaxhighlight>


== Optionales ==
=== Network Services aktivieren ===
Um aus einer APEX Applikation Emails zu senden, PDFs zu generieren oder Web Services zu nutzen, muss APEX die "Connect" Berechtigung zugewiesen werden.
In den oracle Benutzer wechseln und die SQL-Konsole starten:<syntaxhighlight lang="bash">
su oracle
sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYSTEM_password
</syntaxhighlight>In die Datenbank wechseln in der APEX installiert ist:<syntaxhighlight lang="bash">
SQL> ALTER SESSION SET CONTAINER = XEPDB1;
</syntaxhighlight>Der folgende Befehl weist dem Benutzer APEX_220200 die "Connect" Berechtigung zu:<syntaxhighlight lang="plsql" line="1">
BEGIN
    DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
        host => '*',
        ace => xs$ace_type(privilege_list => xs$name_list('connect'),
                          principal_name => 'APEX_220200',
                          principal_type => xs_acl.ptype_db));
END;
/
</syntaxhighlight><code>host => '*'</code> bedeutet das APEX_220200 auf alle Hosts zugreifen kann.
Falls der APEX z.B. nur Zugriff auf lokale Ressourcen haben soll, kann dies mit <code>host => 'localhost</code>' erreicht werden.
== Quellen ==
== Quellen ==


Navigationsmenü