How to Apply MDB Updates on a Remote Oracle MDB?

Document ID : KB000018973
Last Modified Date : 14/02/2018
Show Technical Document Details

Description:

Some Database Administrators may not be willing or allowed to use the Service Desk Manager Installation Media to apply MDB updates (from an upgrade or from a Service Desk Cumulative Patch) on the Oracle DBMS locally. This document explains how to use the media to install the media remotely.

Solution:

The steps in this document give samples using Windows. The steps are virtually identical for Unix and Linux and you only need to substitute "setupmdb.bat" with "setupmdb.sh".

Although you can run the setupmdb remotely, it is still recommended to only follow these steps from the Service Desk primary or background server.

  1. Copy the ORACLE folder from the appropriate installation media or MDB patch to the local file system of where you will be running setupmdb.

    For example:
    E:\casd.nt\MDB\ORACLE\
    Copy to:
    C:\Users\Administrator\Desktop\ORACLE\

  2. Identify the location of a Java 1.5 or higher JRE folder locally on the machine or copied from the installation media. For example:

    C:\Program Files (x86)\CA\SC\JRE\1.7.0_10\

    Take note of the directory path, we will need this later.

  3. Confirm that your Oracle client is already correctly configured to point to the remote Oracle server. This is probably already configured if you are running this on the Service Desk Primary (or Background) server. You may open the <Service Desk Installation folder>\NX.env file in a text editor and look for these variables:

    • @NX_DB_PORT=1521 à Maps to the setupmdb "-DBPORT" flag.

    • @ORACLE_HOME=C:/home/Administrator/product/11.2.0/dbhome_1 à $ORACLE_HOME/%ORACLE_HOME% - You may need this later to verify the tnsnames

    • @NX_ORA_REMOTE=oracle à Maps to setupmdb flag "-DBNAME" Database (Oracle connect ID) (def: mdb)

    • @NX_ORA_DBMS_HOST=walsh04-VM89049 à Maps to setupmdb "-DBHOST" database server name (def: localhost)

  4. Verify the oracle service name using sqlplus, for example:

    Sqlplus sys/paradigm@orcl
    SQL>select * from global_name;

    The value returned will be used for the setupmdb " -ORA_SERVICE_NAME" flag.

  5. Open a command prompt and run the setupmdb.bat (or setupmdb.sh for Unix/Linux) as follows):

    The "ORA_TBLSPACE_PATH" is not needed if the MDB_DATA and MDB_INDEX tablespaces already exist in Oracle.

    setupmdb.bat -DBVENDOR=oracle -DBUSER=sys -DBPASSWORD=paradigm -MANIFEST=Service_Desk -WORKSPACE=Service_Desk -MDB_ADMIN_PSWD=paradigm -DBPORT=1521 -ORA_SERVICE_NAME=oracle.ca.com -DBNAME=oracle -JRE_DIR="c:\Program Files (x86)\CA\SC\JRE\1.7.0_10" -ORA_TBLSPACE_PATH=\home\Administrator\oradata

    If it completes successfully, you should see output like the following:

    02-01,13:49:57 setupmdb mdb log file in "C:\Users\Administrator\Desktop\ORACLE\install_oracle.log"
    02-01,13:49:59 Checking if mdbadmin exists...
    02-01,13:49:59 Checking if MDB_DATA exists...
    02-01,13:49:59 Checking if MDB_INDEX exists...
    02-01,13:49:59 Creating MDB_DATA tablespace in the oracle database...
    02-01,13:50:05 Creating MDB_INDEX tablespace in the oracle database...
    02-01,13:50:35 Creating mdbadmin user in the oracle database...
    02-01,13:50:36 setupmdb_pre completed for the oracle database on localhost
    02-01,13:50:37 Loading oracle...
    using Service_Desk
    02-01,13:57:57 Creating the oracle signature in "C:\Users\Administrator\Desktop\ORACLE\oracle_signature.txt"
    02-01,13:57:58 Signature for oracle created for oracle
    02-01,13:57:58 Updating the MDB Common Component Directory
    02-01,13:57:58 Copying the MDB resources to 'C:\Program Files\CA\SC\Mdb\Windows'

Troubleshooting:

  1. Check the install_<oracle_sid>.log file

  2. Repeat the setupmdb command adding a flag at the end: "-debug > debug.out". Open the debug.out text file created as a result. The error messages are almost always in plain English and state what the problem is. For the "-debug" output, you will need to start at the bottom of the file and read up to see when the "errorcode", "rc" or other error is first set. It will display a command like "sqlplus..." that was run and why it failed.