Getting ready to upgrade two DB2 servers (DB2 is bundled with other IBM products - can't really choose WSE/ESE or 32/64-bit). OS upgrade (RHEL 4 -> RHEL 5) will be done at the same time - OS first, then DB2.
upgrade #1: DB2 will be upgraded from v9.1 32-bit ESE -> v9.7 32-bit WSE (in-place or via a restore - undecided yet)
upgrade #2: DB2 will be upgraded from v9.5 32-bit WSE -> v9.7 64-bit WSE (via a restore - moving DB2 to a brand new server)
My questions are related to what needs to be done prior to and after the upgrade with regard to DB2 routines. Here is what I have but not sure if this really needs to be done for the 1st or 2nd migration:
1) Backup all external routines prior to the upgrade ($INSTHOME/sqllib/function )
http://publib.boulder.ibm.com/infoce...Fc0023747.html
When I query syscat.routines on one of the servers, I see:
xxxxxxx:/home/db2inst1$ db2 "select substr(ROUTINESCHEMA,1,12) ROUTINESCHEMA, substr(ROUTINENAME,1,20) ROUTINENAME , ROUTINETYPE, LANGUAGE , FENCED, THREADSAFE, ORIGIN from syscat.routines where ROUTINESCHEMA not like 'SYS%'"
HTML Code:
ROUTINESCHEMA ROUTINENAME ROUTINETYPE LANGUAGE FENCED THREADSAFE ORIGIN
------------- -------------------- ----------- -------- ------ ---------- ------
SQLJ DB2_INSTALL_JAR P C N Y E
CANDLE PRIORXMONTHS F SQL Q
CANDLE CASTTOINT F SQL Q
SQLJ REMOVE_JAR P C N Y E
CANDLE CASTDECTOFLOAT F SQL Q
SQLJ DB2_INSTALL_JAR P C N Y E
SQLJ DB2_UPDATEJARINFO P C N Y E
CANDLE DATEFORM F SQL Q
CANDLE CASTTOVARCHAR F SQL Q
CANDLE ITMTIMESTAMPGMT F SQL Q
CANDLE DAYSINMONTHTMZ F SQL Q
SQLJ RECOVERJAR P C N Y E
CANDLE DATERETURN F SQL Q
CANDLE DAYSINMONTH F SQL Q
CANDLE PRIORXFROMCURRENT F SQL Q
SQLJ REFRESH_CLASSES P C N Y E
SQLJ REMOVE_JAR P C N Y E
CANDLE SECONDSINMONTHTMZ F SQL Q
SQLJ DB2_REPLACE_JAR P C N Y E
CANDLE EPOCHSEC F SQL Q
CANDLE SECONDSINMONTH F SQL Q
CANDLE ADDXUNITS F SQL Q
CANDLE CASTTOFLOAT F SQL Q
CANDLE ITMTIMESTAMP F SQL Q
Routines with schema SQLJ ( Are they considered system routines? ) are all external. There are also some SYS* (SYSIBM, SYSPROC, SYSFUN... ) external routines, which I excluded from this list. Routines with schema CANDLE are not external. In this case, do I still need to backup .../sqllib/function or is this only required if I have user-defined external routines?
When I do "ls -l .../sqllib/function", all are soft links to the install path
When I do "ls -l .../sqllib/function/routine", there is nothing there
2) When upgrading from v9.1 to v9.7, "all external unfenced routines that have no dependency on the DB2 engine libraries (libdb2e.a or libdb2apie.a) are altered to FENCED and NOT THREADSAFE..."
IBM DB2 9.7 for Linux, UNIX and Windows Information Center
How can I check which routines "have no dependency on the DB2 engine libraries (libdb2e.a or libdb2apie.a)" ?
Is there anything else that needs to be checked/done before or after the upgrade?