I need to build an Oracle 19c development environment using Docker; however there is no dev version of Oracle 19c with Partitioning available, whereas 23c does have a free version for developers with partitioning.
I have downloaded the free docker image from Oracle, but I recently found that you can't reduce the compatibility level (using
ALTER SYSTEM SET COMPATIBLE = '19.0.0' SCOPE=SPFILE;) once the db is created.
Without creating my own custom image, is it possible to set the compatible to 19 for the database, using docker-compose?
db: image: mydocker/myrepo:oracle23free restart: always environment: - ORACLE_PWD=securepassword ports: - "1521:1521" - "5500:5500" volumes: - ./dbscripts/:/docker-entrypoint-initdb.d/startup
currently I have a script to set the compatibility mode here, but it doesn't work (the database won't start up) - I see the following in the logs after rebooting the database:
ORA-00201: control file version 184.108.40.206.0 incompatible with ORACLE version 220.127.116.11.0
ORA-00202: control file: '/opt/oracle/oradata/FREE/control01.ctl'
(see also https://serverfault.com/questions/1143690/restarting-oracle-23c-within-the-docker-container-causes-blocked-listener, when I didn't know why the db wouldn't start up)