2024 hatte ich für einen Vortrag auf der DOAG 2025 Konferenz und Ausstellung im November mal ausprobiert, wie das mit den AI-Features auf einer 23 ai Free-Edition (Version 6) auf Windows klappt und bin schon beim Laden des Language Models über die Prozedur DBMS_VECTOR.LOAD_ONNX_MODEL gescheitert.
Die Fehlermeldung war "ORA-40216: Feature nicht unterstützt" und im Oracle Forum (forums.oracle.com/ords/apexds/post/ora-40216-feature-not-supported-on-23ai-windows-version-9728) fand ich tatsächlich "This feature is supported for Linux only".
Zwei der Fragensteller im Forum haben direkt gefragt, ob und wann das auch unter Windows möglich wird. Martin Bach von Oracle empfahl damals unter anderem, auf das Windows-Subsystem für Linux (WSL) oder eine VM, zum Beispiel die Free VirtualBox Appliance umzusteigen, ließ die Frage aber unbeantwortet.
Deshalb wollte ich mal nachsehen, ob das Problem bei der neuesten Version der Free Edition, 23.26.1.0.0 (Stand 2.2.2026), auf Windows immer noch besteht. Vor der Neuinstallation der Free Edition muss man auf Windows immer besonders gründlich aufräumen, weil der Uninstaller nicht alles beseitigt
- Oracle-Free-Ordner löschen
- ggf. Dienste löschen
sc delete OracleJobSchedulerFREE
sc delete OracleOraDB23Home1TNSListener
sc delete OracleServiceFREE
sc delete OracleVssWriterFREE
- Registry-Key [HKEY_LOCAL_MACHINE\SOFTWARE\Oracle] löschen
- Verzeichnis C:\Program Files\Oracle\Inventory löschen und alle Oracle-Pfade aus den Umgebungsvariablen
Ein Neustart nach diesen Aktionen schadet auch nicht.
Wie im Installationguide beschrieben, muss man die "Authentifizierten Benutzer" daran hindern, den Ziel-Ordner der Free Edition, hier e:\oracle_free zu manipulieren, sonst klappt die Installation nicht.
C:\> icacls e:\oracle_free /inheritancelevel:d
C:\> icacls e:\oracle_free /remove:g *s-1-5-11Nach der Installation sollte man die TNSNAMES.ora um einen Eintrag für die PDB erweitern
FREEPDB1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = Rappelkiste)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = FREEPDB1)
)
)
Dann kann man loslegen.
Das Beispiel stammt aus dem Artikel "Getting started with vectors in 23ai" (blogs.oracle.com/coretec/post/getting-started-with-vectors-in-23ai) von Ulrike Schwinn und Stephane Duprat. Ich habe nur die Tabellen- und Spaltennamen geändert.
Die Zitate findet man unter objectstorage.eu-frankfurt-1.oraclecloud.com/n/fro8fl9kuqli/b/AIVECTORS/o/dataset_200K.txt
Das Language Model unter objectstorage.eu-frankfurt-1.oraclecloud.com/n/fro8fl9kuqli/b/AIVECTORS/o/all-MiniLM-L6-v2.onnx
Beide Files werden unter c:\temp gespeichert
conn sys@freepdb1 as sysdba
GRANT CONNECT, RESOURCE TO scott IDENTIFIED BY tiger;
-- für das Erstellen der Modelle nötig
GRANT CREATE MINING MODEL TO scott;
CREATE BIGFILE TABLESPACE vektor_ts DATAFILE 'e:\oracle_free\oradata\free\freepdb1\vektor_ts.dbf'
SIZE 256M AUTOEXTEND ON MAXSIZE 2G;
ALTER USER scott DEFAULT TABLESPACE vektor_ts;
ALTER USER scott QUOTA UNLIMITED ON vektor_ts;
CREATE OR REPLACE DIRECTORY extern as 'c:\temp';
GRANT READ, WRITE ON DIRECTORY extern to scott;
conn scott@freepdb1
CREATE TABLE IF NOT EXISTS stage (
zitat VARCHAR2(4000))
ORGANIZATION EXTERNAL (
DEFAULT DIRECTORY extern
ACCESS PARAMETERS
(RECORDS DELIMITED BY NEWLINE
READSIZE 100000000)
LOCATION ('zitate.txt'))
PARALLEL
REJECT LIMIT UNLIMITED;
-- nach Anpassen des Zeilenende-Formats auf Windows (CR + LF)
SELECT COUNT(*) FROM stage;
COUNT(*)
----------
198986
-- mal sehen
BEGIN
DBMS_VECTOR.LOAD_ONNX_MODEL(
directory => 'EXTERN',
file_name => 'all-MiniLM-L6-v2.onnx',
model_name => 'doc_model');
END;
/
BEGIN
*
FEHLER in Zeile 1:
ORA-40216: Feature nicht unterstützt
ORA-06512: in "SYS.DBMS_VECTOR", Zeile 2455
ORA-06512: in "SYS.DBMS_DATA_MINING", Zeile 5767
ORA-06512: in "SYS.DBMS_VECTOR", Zeile 2450
ORA-06512: in Zeile 2
Hilfe: docs.oracle.com/error-help/db/ora-40216/
Wäre auch zu schön gewesen. Für viele, die Oracle auf Windows betreiben, dürften die KI-Features nicht wirklich lebenswichtig sein, aber nachdem der Fokus der neuen Version so auf KI liegt, hätte ich gehofft, dass Oracle an dieser Stelle nachbessert oder einfach erklärt, warum es unter Windows Probleme gibt.
Es bleibt zu hoffen, dass das Problem beim Erscheinen der Oracle Database 26ai on Premise für Windows gelöst ist (wann auch immer das sein mag).
Elke Fritsch


