Skip to main content
Version: 1.0.16

Oracle Mode

Halo 16 supports running multiple compatibility modes simultaneously in the same instance via the cluster_net_services parameter. This method is recommended.

Modify the Configuration File

Edit $PGDATA/postgresql.conf and set cluster_net_services to Oracle mode:

cluster_net_services = ':1521:oracle'

Restart the Database and Create the Extension

# Restart the database
pg_ctl restart

# Create the oracle database
psql -c "create database oracle;"

# Connect to the oracle database and create the extension
hsql -d oracle -p 1521 -c "create extension aux_oracle cascade;"

Note: When using Oracle mode, the database must have the aux_oracle extension created before Oracle syntax can be used.

Method 2: database_compat_mode

Halo 14 sets the database runtime mode via the database_compat_mode parameter. This method is still supported in Halo 16, but only one compatibility mode can be set at a time.

Modify the Configuration File

Edit $PGDATA/postgresql.conf and set database_compat_mode to oracle:

database_compat_mode = 'oracle'

Restart the Database and Create the Extension

# Restart the database
pg_ctl restart

# Create the extension for databases that need the Oracle parsing engine
psql -d your_database -c "create extension aux_oracle cascade;"

Note:

  • With this method, the entire instance can only run one compatibility mode. It cannot enable multiple modes simultaneously like cluster_net_services.
  • To use Oracle, MySQL, and other modes simultaneously in Halo 16, use Method 1 (cluster_net_services).