Upgrade the Oracle Clinical Database Server

To complete to upgrade Oracle Clinical 5.4 on UNIX database servers, perform the following tasks:

Grant Access for the opapps Account

  1. Grant write access for the opapps account to the ORACLE_HOME directory and its contents.

Set Permissions

Note:

You might have to perform these steps whenever you apply an HSGBU-approved Critical Patch Update, or any Oracle software that uses the Oracle Database ORACLE_HOME directory.

After you install Oracle Database and before you install the Oracle Clinical component, you must:

Change Permissions for Running oraenv Script

With the Bourne shell, you use the Oracle environment-setting script (oraenv) when granting write access to the ORACLE_HOME directory.

However, the oraenv script gives an error if run by a non-Oracle user. To avoid this error:

  1. Set the following directory and file permissions:
    drwxrwxr-x  18 oracle    oinstall  1024 Apr 11 19:11 inventory
    drwxrwxr-x   3 oracle    oinstall  1024 Apr 11 18:29 ContentsXML
    -rwxrwxrwx   1 oracle    oinstall   492 Apr 11 13:15 oraclehomeproperties.xml

Grant Access to the ORACLE_HOME Directory

You must change the access settings for this directory before you install Oracle Clinical, because the Oracle Clinical Installer checks if the ORACLE_HOME directory exists and if it has write access.

To grant write access to the ORACLE_HOME directory and its contents:

  1. Log in to the server as the oracle user.
  2. Find the Oracle environment-setting script to define ORACLE_HOME:
    • For C shell, use coraenv.
    • For Bourne shell, use oraenv.

    These shells are located under your Oracle Database 19c Release (19.3.0.0.0) installation.

    Note that the oraenv script gives an error if run by a non-Oracle user. To avoid this error, see Change Permissions for Running oraenv Script.

  3. Grant group users modification access to all files in the ORACLE_HOME directory:
    chmod -R g+rw $ORACLE_HOME

    If you receive any warning messages, you can ignore them.

Set Permissions for the Oracle Inventory Directory

To set the permissions for the Oracle Inventory (oraInventory) directory:

  1. Log in to the server as the oracle user.
  2. Locate the path for the oraInventory directory. The location is defined in the inventory_loc parameter in the /var/opt/oracle/oraInst.loc file.
    For example, suppose you enter:

    more /var/opt/oracle/oraInst.loc

    The system might return the oraInventory location as:

    inventory_loc=/u01/app/oraInventory

  3. Give recursive read and write permission for the oraInventory directory to the group:
    chmod -R g+rw /oraInventory_location

    For example:

    chmod -R g+rw /u01/app/oraInventory

    If you receive any warning messages, you can ignore them.

  4. Modify protections on the oraInventory directory to ensure that the group you set up as the oinstall group has write access:
    chmod -R g+w oraInventory

    Use oinstall instead of dba because the dba group membership gives you access to databases, which is a security issue. The oinstall group gives you access to the Oracle Inventory.

Check for an ORA-29548 Error

  1. Log in to the UNIX server computer as the opapps user.
  2. Set the UNIX environment:
    opa_setup database_name code_environment
  3. Connect to SQL*Plus as the SYS user:
    sqlplus sys/password
    
  4. Run the following command to check for the ORA-29548 error:
    select dbms_java.get_jdk_version() from dual;
    

    If no error appears and the command retrieves the JDK version, skip to Gather Required Information for Oracle Clinical Database Server.

    If you see the following error, continue with the next step to fix it:

    ERROR at line 1:
    ORA-29548: Java system class reported: release of classes.bin in the database
    does not match that of the oracle executable
    
  5. To correct the ORA-29548 error, run the following script:
    start update_javavm_db.sql

Gather Required Information for Oracle Clinical Database Server

Have the following information ready to enter in the Installer:

  1. Home Details: The ORACLE_HOME location where you installed Oracle Database 19c (19.3.0.0).

    For example: root:/app/oracle/product/19.3.0.0/dbhome_1

  2. If you are installing in a RAC installation, the names of all RAC nodes where the same product(s) should be installed.
  3. OPA Home: the directory where Oracle Clinical will be installed; Oracle recommends:
    /pharm/home/opapps
  4. Owner of Oracle Clinical Server Code must be opapps
  5. Location for files oratab, tnsnames; for example:
    • /etc
    • $ORACLE_HOME/network/admin
  6. RXC_USER: Choose directory for RXC_USER; Oracle recommends:
    /pharm/home/opapps
  7. Oracle Wallet location and password: The Installer uses these to create the database Wallet in the location you specify. If you are upgrading, you can enter the existing location and password.
    The database Wallet stores the password for:
    • The OCPSUB proxy account, which is used for database access for parametrized submission (PSUB) jobs. Its credentials are created in this Wallet by the Installer.

    Note:

    Verify that the libnsl.so library or a soft link libnsl.so exists in the user libraries directory. For example, execute the following command and verify that it returns libnsl.so (either the file or as the softlink):

    cd /usr/lib (/usr/lib64)

    ls -lrt libnsl*

    If libnsl.so does not exists, create a soft link by using "ln -s libsl.so.2 libnsl.so"" or "ln -s libsl.so.1 libnsl.so".

Prepare to Install the Oracle Clinical Database Server Software

  1. Log in to the database server as the opapps user.
  2. Change the primary group of the opapps account to the group that owns the Oracle Inventory:

    Note:

    Make a note of the current group so that you can set it back after the installation.

    newgrp inst_group

    where inst_group is the name of the group that owns the Oracle Inventory. You specified the name during the Oracle Database installation. Typically, this user group is oinstall.

    This temporary change is necessary so that the Installer can update the Oracle Home.

  3. Set the X Window display output to the IP address of your local computer. Use the standard format for IP addresses.
    For example:

    setenv DISPLAY 123.45.67.89

  4. Locate the Oracle Clinical software in the directory in the staging area on the database server where you downloaded it; see Download the Software.
  5. Open the ldflags file at root: app/oracle/product/19.3.0.0/dbhome_1/lib and add the -lnnz19 flag.

Upgrade the Oracle Clinical Database Server Software

  1. Log in to the server computer using the opapps account.
  2. In the staging area, locate the directory where you downloaded Oracle Clinical and extract the .zip file for your database 19c if you have not already done so.
  3. Navigate to this location:

    server_code_platform\Disk1\install

  4. Change protections on all files to 755:

    chmod 755 *

  5. Run one of the following commands, depending on whether or nor you are using Oracle Real Application Cluster (RAC):
    • For a non-RAC installation:
      ./runInstaller
      

      Or, if the database server has multiple Oracle Homes, then enter:

      ./runInstaller -invPtrLoc ORACLE_HOME/oraInst.loc
      

      For example:

      ./runInstaller -invPtrLoc /u01/app/oracle/product/19.3.0.0/dbhome_1/oraInst.loc
      
    • For a RAC installation:
      ./runInstaller -local
      

      Or, if the database server has multiple Oracle Homes, then enter:

      ./runInstaller -local -invPtrLoc ORACLE_HOME/oraInst.loc
      

      For example:

      ./runInstaller -invPtrLoc /u01/app/oracle/product/19.3.0.0/dbhome_1/oraInst.loc
      

      This ensures that the installation is performed only on the local node.

    Note:

    See Use the Silent Installer (Optional) for instructions for running the Installer as a file with pre-entered parameter values.

    Note:

    Although there is a button for deinstalling products on the Welcome screen, Oracle does not support using the Installer to deinstall Oracle Clinical or Oracle Clinical Remote Data Capture (RDC) Onsite.
  6. In the Select a Product to Install page, select OC Server for UNIX 5.4.0.0.x.
  7. Follow the instructions on the installation screens, providing the information you assembled in Gather Required Information for Oracle Clinical Database Server.
  8. You can review the progress of the installation:
    1. Open another terminal session as the opapps user.
    2. To review the relinking progress, run the following:

      tail -f $OPA_HOME/oc/54/relink_rxc.log

    3. Open the installActionstimestamp.log in the oraInventory/logs directory.

Perform Post-Upgrade Tasks

Note:

To perform the required changes done for PDR hyperlinks during DCI form version generation, follow the instruction in Doc ID 2763299.1 on My Oracle Support.

This section describes the following tasks that you perform to complete the upgrade of Oracle Clinical database server on a UNIX computer:

Complete the Setup of the opapps Account

To complete the setup of the opapps account:

  1. Create the log directory for opapps in the following location:

    OPA_HOME/log

  2. Define the environment variables for the opapps user:
    1. Open the .cshrc file. This file is located in the home directory after you log in as the opapps user. You can use the following command to view the hidden .cshrc file:

      ls -arlt

    2. Add the following lines to the .cshrc file:

      set path=( $path ORACLE_HOME/bin ORACLE_HOME/lib )

      setenv RXC_LOG OPA_HOME/log

      source OPA_HOME/bin/copa_setup_alias

      where:

      ORACLE_HOME is the directory where you installed Oracle Database 19c (19.3.0.0.0).

      OPA_HOME is the directory where you installed Oracle Clinical database server.

    3. Source the .cshrc file when you finish editing it:

      source .cshrc

    4. For HP-UX Port, copy $ORACLE_HOME/bin/oraenv to $OPA_BIN/oraenv_opa.

      For example,

      $ORACLE_HOME/bin/oraenv becomes $OPA_BIN/oraenv_opa

      ORACLE_HOME: Oracle 19c HomeOPA_BIN: <OPA Home>/bin

Limit Permissions on the XMLTEMP Folder

To reduce security risks, you should limit permissions on the XMLTEMP folder for all database server installations.

  1. Log in as opapps.
  2. Go to the OPA_HOME directory.
  3. Modify chmod <permission> xmltemp as follows:

    chmod 777 xmltemp

Review the opa_settings File

The Installer creates the opa_setting file and enters all necessary entries and default values for the Oracle Clinical environment.

  1. Review the opa_settings file in the following directory:

    OPA_HOME/bin

  2. Adjust the default values for the Oracle Clinical environment., if necessary.

    See the Oracle Clinical Administrator's Guide for a list of the environment variables and for information about changing, adding, and verifying values.

Note:

  • The db_env_setting records in opa_settings define a default value for particular environment variables that are set when the application calls opa_setup. You can override the default values for all databases or for a particular database.
  • See Choose a Character Set.
  • NLS_DATE_FORMAT must be set to DD-MON-RRRR. It is possible to override this setting for display in RDC Onsite, the Patient Data Report, and Oracle Clinical data entry, but the value in opa_settings must be DD-MON-RRRR.

Check for Oracle Clinical Databases on a UNIX Server

As part of the implementation of the PDR hyperlinks on superscripts, a new script post-processes DCI Form Version templates to insert hyperlink placeholders. This process can fail with error ORA-27369, when a database post-install step has not been completed. For example, for a database on HP-UX, refer to https://docs.oracle.com/en/database/oracle/oracle-database/19/hpdbi/oracle-database-postinstallation-tasks.html#GUID-FCF693BF-FB7F-4FA6-81BD-DF669675D401. You can also refer to My Oracle Support Article ID 391820.1, Scheduled Job Running Shell.