Install Oracle 26ai Free on Windows 11: Installer or Docker (2026)
By DBNexus Editorial Team · Oracle DBA
Published Oct 2026 · 9 min read
Oracle AI Database 26ai Free now runs on Windows in two ways: a native Windows installer, and the official container image under Docker Desktop. Most guides cover only one of them, and many never mention the catch that trips up students: the native installer does not support Windows Home. Most laptops ship with Home.
This guide covers both routes on Windows 11, using release 23.26.3, the current Free download at the time of writing. It shows how to connect with SQL*Plus, SQLcl and SQL Developer, what to do in your first ten minutes, and how to fix the errors people actually hit. Pick your route from the table, then follow only that section.
Which route should you choose?
| Native Windows installer | Docker Desktop container | |
|---|---|---|
| Windows 11 Home | Not supported | Works (WSL 2 backend) |
| Windows 11 Pro / Enterprise | Supported | Works |
| Download | oracle-ai-database-free-26ai-23.26.3.windows.x64.zip, about 1.4 GB | Full image about 3.45 GB, Lite image about 854 MB |
| Feels like | A Windows program with Windows services | A Linux database you start and stop with one command |
| Best for | Learners who want everything on Windows | Home users, developers, and anyone who wants a disposable lab |
Not sure which edition you have? Run this in PowerShell:
(Get-CimInstance Win32_OperatingSystem).Caption
If it says Home, go straight to Route B.
Route A: the native Windows installer
Step 1: check the prerequisites
The installer runs its own prerequisite checks. Clearing these four items first saves a failed run:
- A supported 64-bit edition of Windows: Pro or Enterprise, not Home.
- You are logged in as a user who is a direct member of the local Administrators group. Membership through another group is not enough.
- No
ORACLE_HOMEorTNS_ADMINsystem environment variable is set. Clearing them in one Command Prompt window does not count; they must be removed at system level. - No existing Oracle Database Free or Express Edition service on the machine.
# both should print nothing
[Environment]::GetEnvironmentVariable('ORACLE_HOME','Machine')
[Environment]::GetEnvironmentVariable('TNS_ADMIN','Machine')
# any existing Oracle services?
Get-Service *Oracle* | Format-Table Name, Status, StartType
Step 2: download and extract
Download the Windows (64-bit) package, oracle-ai-database-free-26ai-23.26.3.windows.x64.zip, from Oracle's AI Database Free download page. Extract it to a temporary folder such as C:\free_temp. Keep the extract path short and free of spaces.
Step 3: run the installer
Right-click setup.exe and choose Run as administrator. The wizard has seven screens:
- Welcome: click Next.
- License Agreement: accept and click Next.
- Prerequisite Checks: if anything fails here, cancel, fix it using Step 1, and start again.
- Destination Folder: the default is
C:\app\<username>\product\26ai. Keep it, or click Change and type a path to a folder that does not exist yet. Do not use a path with spaces, and do not use the "Create New Folder" button. - Oracle AI Database Information: enter one password. It becomes the password for SYS, SYSTEM and PDBADMIN, so make it strong and write it down.
- Summary: review and click Install.
- Installed Successfully: note the connection strings shown for the container database and the pluggable database, then click Finish.
The installer always creates a database with the SID FREE and a pluggable database called FREEPDB1, with the listener on port 1521.
Optional: silent installation
For repeatable lab builds, edit response\FREEInstall.rsp in the extracted folder: INSTALLDIR, PASSWORD, LISTENER_PORT (0 means pick a free port starting at 1521) and CHAR_SET (default AL32UTF8). Then run from an elevated prompt:
c:\free_temp> setup.exe /s /v"RSP_FILE=c:\free_temp\response\FREEInstall.rsp" /v"/L*v c:\free_temp\setup.log" /v"/qn"
Check setup.log for "Installation success or error status: 0". Delete the response file afterwards, because it contains your password in plain text.
Where everything lives
| What | Path (under the install folder) |
|---|---|
| Oracle home (sqlplus.exe and network files) | dbhomeFree |
| Datafiles | oradata\Free |
| Alert log | diag\rdbms\free\free\trace\alert_free.log |
| Database creation log | cfgtoollogs\dbca\Free\Free.log |
| Software install logs | %ProgramFiles%\Oracle\Inventory\logs |
Route B: Docker Desktop (works on Windows 11 Home)
Step 1: install WSL 2 and Docker Desktop
From an administrator PowerShell window, install the Windows Subsystem for Linux, restart when asked, then install Docker Desktop and leave the default WSL 2 backend selected.
wsl --install
wsl --status # confirm the default version is 2 after the restart
Oracle's container needs at least 2 GB of memory and 13 GB of free container storage. On a laptop with 8 GB of RAM, cap the memory WSL may take, so Windows stays responsive. Put this in %UserProfile%\.wslconfig, then run wsl --shutdown and restart Docker Desktop:
[wsl2]
memory=4GB
Step 2: pull and run the 26ai Free container
The official image comes from Oracle's Container Registry, and no registry login is needed. A named volume keeps your database when the container is removed, so you never lose your lab work by accident. In PowerShell:
docker pull container-registry.oracle.com/database/free:latest
docker volume create oracle-free-data
docker run -d --name oracle-free `
-p 1521:1521 `
-e ORACLE_PWD="Lab#Pass2026" `
-v oracle-free-data:/opt/oracle/oradata `
container-registry.oracle.com/database/free:latest
docker logs -f oracle-free # wait for: DATABASE IS READY TO USE!
The image contains a prebuilt database, so once the download finishes it is usually ready within a minute. ORACLE_PWD sets the password for SYS, SYSTEM and PDBADMIN. Passing it as an environment variable is fine for a personal lab, but anyone who can run docker inspect on your machine can read it. Oracle's own guide uses a Podman secret on shared hosts.
For a pinned, repeatable lab, replace latest with the version tag 23.26.3.0. The Lite image (latest-lite) is about a quarter of the size, but it leaves out RMAN, Data Pump, True Cache and several other features. If you are learning DBA work, use the Full image.
Step 3: day-to-day container commands
docker exec -it oracle-free sqlplus / as sysdba # SQL*Plus inside the container
docker stop oracle-free # shut down; data stays in the volume
docker start oracle-free # start again
docker exec oracle-free /opt/oracle/setPassword.sh "New#Pass2026" # change SYS/SYSTEM/PDBADMIN password
Removing the container with docker rm keeps the volume. Only docker volume rm oracle-free-data deletes the database itself.
Connect to the database
Whichever route you chose, connection details are the same. Use the PDB for normal work and the CDB root only for administration.
| Target | Host | Port | Service name | User |
|---|---|---|---|---|
| Pluggable database (daily work) | localhost | 1521 | FREEPDB1 | PDBADMIN or your own user |
| Container root (administration) | localhost | 1521 | FREE | SYS as SYSDBA |
sqlplus sys@localhost:1521/FREE as sysdba
sqlplus pdbadmin@localhost:1521/FREEPDB1
sql pdbadmin@localhost:1521/FREEPDB1 # SQLcl, if installed
SQL*Plus is included with the native install. On the Docker route, run it inside the container as shown above, or install SQLcl or SQL Developer on Windows. Neither is bundled with Free; both are separate free downloads. In SQL Developer, create a connection with username pdbadmin, hostname localhost, port 1521, and Service name (not SID) FREEPDB1.
Your first ten minutes on 26ai
Do not build your labs as SYS. Create your own user in the PDB, then try a few 26ai features to confirm you really are on the new release:
-- as SYS in the root
SELECT banner_full FROM v$version;
SHOW PDBS
ALTER SESSION SET CONTAINER = FREEPDB1;
CREATE USER labuser IDENTIFIED BY "Lab#Pass2026" QUOTA UNLIMITED ON users;
GRANT DB_DEVELOPER_ROLE TO labuser;
-- as labuser@localhost:1521/FREEPDB1
CREATE TABLE IF NOT EXISTS tasks (
id NUMBER GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
title VARCHAR2(100),
done BOOLEAN DEFAULT FALSE
);
INSERT INTO tasks (title) VALUES ('Install Oracle 26ai Free');
UPDATE tasks SET done = TRUE WHERE id = 1;
COMMIT;
SELECT title, done FROM tasks;
SELECT SYSDATE; -- no FROM DUAL needed in 26ai
If every statement runs, your lab is ready. For a list of real exercises to work through next, see our 25 Oracle 26ai interview scenarios. Each one comes with commands you can run on this database.
Troubleshooting the errors people actually hit
| Symptom | Cause and fix |
|---|---|
| Installer prerequisite check fails on edition | Windows Home is not supported by the native installer. Use Route B. |
| Prerequisite check fails on ORACLE_HOME or TNS_ADMIN | Remove both from System Properties → Environment Variables (system level), then open a new installer window. |
| "Destination folder is under a directory that is modifiable by Authenticated users" | Use the default path or a new folder path, or allow the installer to modify permissions. For silent installs, set MODIFY_DIRECTORY_PERMISSIONS=TRUE. |
| Installer refuses because a database service exists | An old Express Edition or Free install is present. Uninstall it first; Data Pump can carry its data across afterwards. |
| ORA-12514: listener does not currently know of service | Wrong service name, or the database is still starting. Use FREEPDB1 for the PDB or FREE for the root. In Docker, wait for "DATABASE IS READY TO USE!". |
| ORA-12541: no listener / connection refused | The service or container is not running, or the port is not mapped. Check Get-Service *Oracle* or docker ps. |
| Port 1521 already in use | Docker: map another host port, -p 1522:1521, and connect to localhost:1522. Native: set LISTENER_PORT in the response file. |
| Container is very slow to start or exits | Check docker logs oracle-free. Make sure Docker has at least 2 GB of memory and 13 GB of free space. Mounting an empty host folder at /opt/oracle/oradata forces a brand-new database build, which takes ten minutes or more; a named volume avoids it. |
What Free can and cannot do
Oracle AI Database 26ai Free supports up to 2 CPUs for foreground processes, 2 GB of RAM for SGA and PGA combined, and 12 GB of user data. It gets no patches and no Oracle Support, and you cannot plug a Free PDB into an Enterprise Edition CDB or the other way round. For learning, it is excellent: multitenant, the 26ai SQL and security features, AI Vector Search and, on the Full image, RMAN all work. Multi-node features such as RAC need a proper Linux lab.
Common mistakes
- Connecting with SID FREEPDB1. FREEPDB1 is a service name. In SQL Developer, pick "Service name", not "SID".
- Building everything as SYS in the root. Create a user in FREEPDB1 and work there, as you would at a job.
- Running the container without a volume. Remove the container and the database goes with it.
- Choosing the Lite image for DBA practice. No RMAN and no Data Pump means half the DBA syllabus is missing.
FAQ
Can I install Oracle 26ai Free on Windows 11 Home?
Not with the native installer: Oracle lists Windows Home as unsupported. You can still run 26ai Free on Windows 11 Home with Docker Desktop and the WSL 2 backend, which is Route B in this guide.
What are the default username and password?
There is no default password. You choose one during installation, or with ORACLE_PWD in Docker, and it is set for SYS, SYSTEM and PDBADMIN. If you skip ORACLE_PWD in Docker, a random password is generated. Reset it with setPassword.sh.
Is Oracle AI Database 26ai Free really free?
Yes. There is no licence cost, and Oracle does not restrict where it is deployed. It is unsupported and receives no patches, including security patches, so Oracle recommends a supported edition for production.
Native installer or Docker: which is better for learning?
For DBA learning, either works if your Windows edition allows it. Docker makes it easy to throw a broken lab away and start fresh in a minute. The native install feels more like a traditional server, with Windows services. If you are on Windows Home, Docker is the only option.
Next step
A running database is the starting line. What turns it into job-ready skill is working through real administration tasks: backups, recovery, multitenant, tuning and the 26ai features. Our live Oracle 26ai DBA training takes you through all of them over 45 sessions with a production DBA. The Oracle 26ai recorded course covers the same ground at your own pace. Working towards certification? Our 1Z0-183 exam study guide maps the syllabus to labs you can run on this database. For the full installation reference, see Oracle's Oracle AI Database Free Installation Guide for Microsoft Windows.
Become a production-ready Oracle DBA
Live weekend batches, recorded courses and on-job support — Oracle 19c, RAC, Data Guard, GoldenGate and Oracle AI Database 26ai.