This article describes the changes provided with the Gen 8.6 Windows CSE PTF CSN86204/SS14886 to support Oracle 19c.
Release: Gen 8.6 Complete
Component: Gen Client Server Encyclopedia
The Windows CSE is still 32-bit software and thus requires using the 32-bit Oracle for Windows client to connect to a 64-bit Oracle database. That connection also requires the use of an Oracle service name via the Oracle TNS Listener.
The Oracle for Windows 32-bit client has versioning in its file name orasqlnn.dll (e.g. orasql12.dll, orasql19.dll) and before this PTF the current CSE runtime file csedb.dll references orasql12.dll, so there is a version dependency.
Changes with PTF CSN86204:
1. Eliminate the Oracle client dll version dependency in csedb.dll, by referencing a new hard link file orasql.dll instead of orasqlnn.dll as follows:
- Change csedb.dll to reference orasql.dll instead of orasqlnn.dll. That allows either a 12c or 19c Oracle client to be used.
- Update the script %GEN86%CSE\cse_oracle\prepbinenv.cmd to call a new script oracle_client_link.bat which creates the hard link orasql.dll to the file orasqlnn.dll
- Update the script oraclesql.cmd to support the sqlplus connection syntax required for Oracle 19c when using an Oracle service name.
2. To create the DBDIR and DBCSE Oracle instances/databases, the sample scripts crdbdir.bat and crdbcse.bat can now be passed 3 parameters:
- The Oracle Home location
- The value of Oracle SID
- The Oracle database location
The use of the parameters provides flexibility for future Oracle versions.
If no parameters are entered, the default is to use Oracle 12c.
- crdbdir.bat and crdbcse.bat use Windows Powershell to perform string substitutions in the sample Oracle initialization files initdbdir.ora and initdbcse.ora based on the provided parameters.
- crdbdir.bat and crdbcse.bat also pass the provided parameters to the sample Oracle database table creation scripts crdbdir.sql and crdbcse.sql and assume that crdbdir.sql and crdbcse.sql have been copied to the Oracle database location (parameter #3)
- initdbdir.ora and initdbcse.ora have had the parameter shared_pool_size increased to support Oracle 19c minimum requirements. Also initdbdir.ora now has "processes = 120" to match the value set in initdbcse.ora.
- As Oracle 19c no longer provides default passwords, crdbdir.sql and crdbcse.sql have been updated to set the passwords for the Oracle user SYSTEM to be mydbDIR_1 and mydbCSE_1, respectively which matches the syspwd used by the crdbdir.bat and crdbcse.bat scripts when creating the instance using command oradim. NOTE: These passwords are just examples and can be modified according to site Oracle DBA standards.
1. Gen™ 8.6 > Release Notes > New Features
2. See this existing KB article for how to run the Windows CSE Configuration program cse_config.exe for a 64-bit Oracle Database using an Oracle service name which is then stored in the resulting iefmd.ini file and used by the CSE at runtime: Gen Windows Oracle CSE Configuration with a 64-bit Oracle Database
3. For the Unix based CSEs on AIX and HP-UX, which are 64-bit software, no PTF is necessary to certify them for Oracle 19c because there is no version dependency on Oracle client shared libraries. For the database creation scripts, those delivered with the Gen 8.6 installation can be executed and modified as required for use with Oracle 19c i.e. increase the shared_pool_size and processes parameters as necessary and conform with the latest Oracle 19c password requirements for users SYS and SYSTEM.