Migrating from version 8.1 to Version 8.2 (Db2 database)
Before you begin
Make a backup of your version 8.1 Repository database by running job HSISUT01 from your version 8.1 JCLLIB, or equivalent in-house backup job.
Make a backup or rename your JCLLIB and PARMLIB data sets.
Migration planning and consideration:
- All table spaces from version 8.1 are migrated to version 8.2 partition-by-growth Universal
Table Spaces (UTS). These UTS are defined as ‘COMPRESS YES’. All indexes are also defined as
‘COMPRESS YES’ with the BP8K0 as the default buffer-pool.
If you prefer to define some table spaces as partition-by-range UTS, you need to customize some PARMLIB members, before the migration.
- If your existing version 8.1 Repository database (including LKB/LKU) still use the original table space definitions (segmented non-UTS), then you can use the migration jobs listed below for the migration.
- If your existing version 8.1 Repository database (including LKB/LKU) already have some or all table spaces reconfigured as UTS, then you need to review and decide which migration jobs are required for the migration. After migration you need to customise version 8.2 JCLLIB/PARMLIB members to reflect your preferred table space names.
- If your existing version 8.1 Repository database (including LKB/LKU) and GKB use different schema names, then you need to modify the migration jobs to suit your site requirements.
- The version 8.2 Usage Monitor job/started task (HSISUMON/HSIJMON) requires a minimum level of
z/OS V2.3 or later. It will fail if run in z/OS V2.2 or earlier. Note: If your repository is located on an LPAR running at z/OS V2.2 or earlier, the Usage Monitor job/start task (HSISUMON/HSIJMON) must continue to run with version 8.1 load library hsi.SHSIMOD1. You can still migrate the repository and GKB databases to version 8.2 (depending on types of deployment scenarios described later in the list). Once you have upgraded to z/OS V2.3 or later, you can then run the Usage Monitor with the version 8.2 load library hsi.SHSIMOD1.
- If you have multiple version 8.1 repositories sharing the same
version 8.1 GKB database, you need to phase the migration process.
A version 8.2 repository must use a version 8.2 GKB.
A version 8.1 repository must use a version 8.1 GKB.
Note: Version 8.2 code fails when accessing a version 8.1 GKB database, due to newly defined version 8.2 tables and columns. Conversely, version 8.1 code fails when accessing a version 8.2 GKB database due to differences in version 8.2 table layouts.For example, if you have version 8.1 repositories REP1, REP2, REP3, and REP4 sharing the same version 8.1 GKB, then migrate as follows:- To migrate the first repository, REP1, in version 8.2 customization
job, HSISCUST, create a new V8.2 GKB database. For example, GKB82.
Customize parameters DBGKB and GKBZSCHM with different names from those used in version 8.1 GKB database. Repository parameter settings and values remain the same.
- Migrate REP1 and GKB database (GKB82) to version 8.2 at the same time. Operational jobs for repository REP1 must now reference the version 8.2 load library hsi.SHSIMOD1.
- The remaining REPs continue to run at version 8.1 with operational jobs still referencing the version 8.1 load library hsi.SHSIMOD1. These REPs continue to use the version 8.1 GKB database (GKB81).
- Gradually migrate the remaining three repositories without creating another version 8.2 GKB (GKB82).
- Once all REPs are migrated and are using the version 8.2 GKB database (GKB82), the version 8.1 GKB (GKB81) database can be dropped.
- To migrate the first repository, REP1, in version 8.2 customization
job, HSISCUST, create a new V8.2 GKB database. For example, GKB82.
- If each repository has its own GKB, then migrate the Repository database, GKB database and hsi.SHSIMOD1 to version 8.2 all at the same time.
- Housekeeping:
Perform housekeeping on the version 8.1 Repository database before you start your migration process. This should reduce the time required to migrate all the data.
- HSISLDEL - If you have any obsolete LPARs in the repository, you should delete the obsolete LPARs by running job HSISLDEL.
- HSISPDEL - TMODULE is one of the biggest tables and it contains modules of which a huge percentage are in-house programs. To delete obsolete modules (especially in-house programs), refer to job HSISPDEL. You need to define a date range for deletion and a sample SQL statement is provided in the job to list date ranges. HSISPDEL deletes modules based on any load libraries that have been marked deleted.
- HSISUDEL - TUSEMTD is the largest table. Performing housekeeping on this table should be
part of best practices.To determine the status of this table, run the following SQL statement:
SELECT FPERIOD, COUNT(*) FROM &RESPZSCHM.TUSEMTD GROUP BY FPERIOD ;Next, in the Usage Deletion job HSISUDEL, select the date range for deletion. Follow the instructions in the job – if you have never deleted before, you should delete Usage records in increments. Do it for all LPARs. Run the SQL statement again to check the number of outstanding records in TUSEMTD.
A good guideline on the number of records to be retained is to run HSISUDEL monthly for all LPARs with a fixed set of parameter settings:
KEEPDETAIL=3 (or 6)
KEEPAGGR=12
This will retain detailed Usage records for the current month and the previous 3 (or 6) months, and summarized records for the current month and the previous 12 months.
- Continue to run your version 8.1 Usage Monitor job/started task (HSISUMON/HSIJMON), but stop the Analyzer and do not run any version 8.1 operational jobs during the migration.
About this task
Perform these migration tasks for every Db2 Repository in your IBM Z Software Asset Management environment.
Procedure
What to do next
After migration, use the following approach to manage the implementation to the new version:
-
You must apply the latest GKB update. This will ensure that all product identifications are up to date when you run the Inquisitor Import job, HSISIQIM. For each repository, run HSISIQIM for all LPARs before you run any Usage Import job, HSISUIMP. You can continue to use existing version 8.1 Inquisitor fully-scanned files as inputs for the version 8.2 HSISIQIM Inquisitor Import job.
- For each repository, run the HSISIQIM job for every LPAR with setting of FULLREMATCH=Y. For performance reasons, exclude the Aggregator job step, except for the last HSISIQIM job. Please read the comments in the "Performance consideration" section of job HSISIQIM job before you proceed.
- For the last HSISIQIM job, update the Aggregator jobstep with COUNTUSAGEFULL=Y. For
example:
//AGGR EXEC HSIJSQLE,PROG=HSICTLAG,TPARAM=HSISAGP1 //USERPARM DD * COUNTUSAGEFULL=YRun the last HSISIQIM job with COUNTUSAGEFULL=Y for the Aggregator job step.
- After running the last HSISIQIM job, in the Aggregator jobstep, set COUNTUSAGEFULL=N (the default setting).
- Repeat steps 1 to 4 for the next repository.
- Before you run any Usage Import job, HSISUIMP, you must run the Inquisitor Import job, HSISIQIM,
for all LPARS (as described in step 1). Failure to complete running the
Inquisitor Import job ( HSISIQIM) for all LPARs before you start running Usage
Import (HSISUIMP) could result in errors during the Aggregator job step. This is
because product identifications may not be up to date.
For each repository, run the HSISUIMP job for every LPAR. For performance reasons, exclude the Aggregator job step, except for the last HSISUIMP job. Please read the comments in the "Performance consideration" section of job HSISUIMP job before you proceed.
- For the last HSISUIMP job, update the
Aggregator jobstep with COUNTUSAGEFULL=Y. For example:
Run the last HSISUIMP job with COUNTUSAGEFULL=Y for the Aggregator job step.//AGGR EXEC HSIJSQLE,PROG=HSICTLAG,TPARAM=HSISAGP1 //USERPARM DD * COUNTUSAGEFULL=Y - After running the last HSISUIMP job, in the Aggregator jobstep, set COUNTUSAGEFULL=N (the default setting).
- Repeat steps 6 to 6b for the next repository.
- For the last HSISUIMP job, update the
Aggregator jobstep with COUNTUSAGEFULL=Y. For example:
- Configure APF authorization for the version 8.2 hsi.SHSIMOD1 load library.
- When the version 8.2 Inquisitor scans and Usage Monitors are ready for use, you can run 8.2
operational jobs and discontinue version 8.1 tasks.
- Review the settings in the Inquisitor scan jobs, before submissions:
HSISINQU – PLX=N,PACK=0 (default)
HSISINQZ – PACK=0 (default)
- Before starting HSISUMON, review parameters:PARMLIB member HSISMNPM – different parameters and default values.Note: Usage Monitor job HSISUMON requires z/OS version 2.3, or later.
- HSISZCAT – different parameters and default values:
Parameters 'JNM=Y,UID=Y,JAC=Y' are now the default.
- HSISIQIM – parameter COUNTUSAGE = N is now the default.
- HSISUIMP – parameter COUNTUSAGE = N is now the default.
- Review the settings in the Inquisitor scan jobs, before submissions: