===== Die Oracle Datenbank 23c als Free Edition unter Linux 8 =====
Seit Mitte 2023 ist die Oracle Oracle Datenbank 23c Free Edition unter Linux verfügbar und kann über https://www.oracle.com/de/database/free/ heruntergeladen werden.
Diese Release kann ohne weitere Lizenzierung mit den vollen Leistungsumfang der Datenbank für Tests und Entwicklungen verwendet werden.
Die Einschränkungen sind:
* 2 CPUs für Vordergrund Processe
* 2GB RAM (SGA + PGA combined)
* 12GB User Data unabhängig von der Kompression
Diese Version ist also ideal um die neue Features der Datenbank 23c zu testen und sich in die Plugable Architektur einzuarbeiten.
Es stehen auch schon verbreitete Images (wie Docker) zur Verfügung, hier soll aber die DB komplett auf einen frischen Linux installiert werden.
Vorbereitung Installation:
* Installations-DVD von https://yum.oracle.com/oracle-linux-isos.html herunterladen
* Basis System Oracle Linux 8 bereitstellen [[linux:linux_8_system_grundeinstellungen_oracle_datenbank_rac|Ein Oracle Linux 8 Basis System als Grundlagen für eine Oracle Datenbank Installation vorbereiten]]
* Software oracle-database-free-23c-1.0-1.el8.x86_64.rpm Download über https://www.oracle.com/de/database/free/get-started/
* Datenbank Software installieren
* Datenbank einrichten
=== Wann kommt die produktive Variante? ===
Siehe dazu die Support Node Oracle Doc ID 742060.1: Soll gegen Mitte 2024 verfügbar für On-premises sein.
----
==== Installation ====
Nach dem Aufsetzen eines Oracle Linux 8 Images unter VMware kann die eigentliche Installation erfolgen.
Laut der Doku:
- oracle-database-free-23c-1.0-1.el8.x86_64.rpm herunterladen
- yum -y localinstall oracle-database-free* ausführen
- /etc/init.d/oracle-free-23c configure ausführen
Schauen wir mal ob das so einfach am Ende auch klappt.
=== RPM Bereitstellen ===
scp oracle-database-free-23c-1.0-1.el8.x86_64.rpm oracle23c01:/tmp
#
als root anmelden an den oracle23c01
cd /tmp
#Checksum pürfen
sha256sum oracle-database-free-23c-1.0-1.el8.x86_64.rpm
63b6c0ec9464682cfd9814e7e2a5d533139e5c6aeb9d3e7997a5f976d6677ca6 oracle-database-free-23c-1.0-1.el8.x86_64.rpm
# Installation als RPM starten
yum -y localinstall oracle-database-free-23c-1.0-1.el8.x86_64.rpm
Was hat er uns dann am Ende angelegt?
Ganz Klassisch wird unter /opt/oracle als ORACLE_BASE der gewohnte Standard angelegt.
/opt/oracle/product/23c/dbhomeFree
=== Datenbank anlegen ===
Über die Datei "oracle-free-23c.conf" unter "/etc/sysconfig" lassen sich folgende Parameter einstellen:
# LISTENER PORT used Database listener, Leave empty for automatic port assignment
LISTENER_PORT=
# Character set of the database
CHARSET=AL32UTF8
# Database file directory
# If not specified, database files are stored under Oracle base/oradata
DBFILE_DEST=
# DB Domain name
DB_DOMAIN=
alternativ in der Datei /etc/init.d/oracle-free-23c die Defaults anpassen
vi /etc/init.d/oracle-free-23c
..
# DB defaults
export ORACLE_HOME=/opt/oracle/product/23c/dbhomeFree
export ORACLE_SID=FREE
export TEMPLATE_NAME=FREE_Database.dbc
export PDB_NAME=FREEPDB1
export LISTENER_NAME=LISTENER
export NUMBER_OF_PDBS=1
export CREATE_AS_CDB=true
..
Umbennen mag er allerdings nicht so ganz:
Configuring Oracle Database GPIDB.
[FATAL] [DBT-10334] Oracle SID name for Oracle Database Free is invalid.
ACTION: SID name for Oracle Database Free should be FREE.
Erstmal alles mit Default anlegen:
/etc/init.d/oracle-free-23c configure
[root@oracledb23c01 admin]# /etc/init.d/oracle-free-23c configure
Specify a password to be used for database accounts. Oracle recommends
that the password entered should be at least 8 characters in length,
contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9].
Note that the same password will be used for SYS, SYSTEM and PDBADMIN accounts:
Confirm the password:
Configuring Oracle Listener.
Listener configuration succeeded.
Configuring Oracle Database FREE.
Enter SYS user password:
*********
Enter SYSTEM user password:
*******
Enter PDBADMIN User Password:
********
Prepare for db operation
7% complete
Copying database files
...
Passwort aufschreiben!
Mit "delete" kann die Datenbank auch wieder gelöscht werden.
----
==== Die ersten Einstellungen ====
Datenbank als root starten:
Mit den bereitgestellten Skript:
/etc/init.d/oracle-free-23c stop
/etc/init.d/oracle-free-23c start
Bzw. mit eigenen Skript => : [[dba:start_db_linux|Datenbank unter Linux automatisch starten]]
=== An der Datenbank anmelden===
#Umgebung setzen
export ORACLE_HOME=/opt/oracle/product/23c/dbhomeFree
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=FREE
#Listener kontrollieren
lsnrctl status
# Root container über die Umgebung anmelden
sqlplus / as sysdba
SELECT NAME, OPEN_MODE, RESTRICTED, OPEN_TIME FROM V$PDBS;
# Root container über den Service anmelden
sqlplus sys@//localhost:1521/free as sysdba
# erste Pluggable Datenbank über den Service anmelden
sqlplus sys@//localhost:1521/freedb1 as sysdba
=== Plugable DB nach Neustart down ===
Starten und beim nächsten Mal automatisch starten:
sqlplus / as sysdba
SELECT NAME, OPEN_MODE, RESTRICTED, OPEN_TIME FROM V$PDBS;
--Plugable starten
ALTER PLUGGABLE DATABASE FREEDB1 OPEN READ WRITE;
--beim nächsten START automatisch wieder mounten
ALTER PLUGGABLE DATABASE FREEDB1 SAVE STATE;
----
**Fetter Text**
==== Was machen wir jetzt damit? ====
Die Edition wendet sich wohl stark an Entwickler, die die neuen Features der Oracle Datenbank testen wollen.
Wie zum Beispiel:
* JavaScript stored procedures
* Operational Property Graphs
* SQL Domains und Annotations
* Oracle Kafka APIs
* JSON Relational Duality
* JSON Schema
New Feature Übersicht => https://apex.oracle.com/database-features/
----
----
==== Quellen ====
Oracle:
* https://www.oracle.com/database/free/
Forum:
* https://forums.oracle.com/ords/apexds/domain/dev-community/category/oracle-database-free
Weitere Quellen:
* https://oracle-base.com/blog/2023/04/04/oracle-database-23c-free-developer-release/
* https://oracle-base.com/articles/23c/oracle-db-23c-free-rpm-installation-on-oracle-linux-8
* https://www.heise.de/news/Datenbanken-Oracle-Database-23c-fuer-Entwickler-frei-verfuegbar-8594306.html