Install Oracle Database or Instant Client on macOS using Homebrew, Docker, and SQL*Plus for local development.
Use Docker for a disposable sandbox, Homebrew for the lightweight Instant Client, or a VM for the full Database installation.
brew tap InstantClientTap/instantclient
brew install instantclient-basic
brew install instantclient-sqlplus
docker pull container-registry.oracle.com/database/express:21.3.0-xe
docker run -d --name oracle-xe -p 1521:1521 -e ORACLE_PASSWORD=OraPassw0rd container-registry.oracle.com/database/express:21.3.0-xe
sqlplus system/OraPassw0rd@//localhost:1521/XEPDB1
HOST (localhost), PORT (1521), SERVICE_NAME (XEPDB1), USER (system), PASSWORD (secret).
Allow Docker network traffic and grant the Terminal Full Disk Access to avoid socket issues.
docker logs oracle-xe --tail 20 should show "DATABASE IS READY TO USE!"
docker stop oracle-xe
docker rm oracle-xe
Install oracle_fdw in PostgreSQL, create server definitions, and copy data between systems.
Use .env for passwords, map a host volume for /opt/oracle/oradata, and keep RAM >= 8 GB.
.
Yes. Use Docker Desktop with Rosetta emulation or run the ARM-based image when Oracle publishes one. Performance is acceptable for development.
Yes. Instant Client provides OCI libraries and SQL*Plus; pair it with a remote Oracle instance if you do not need a local database.
docker pull the new tag, stop the old container, create a new one with the same volume mount so your data is preserved.