12 Upgrade Argus Safety Database

The space requirements for the upgrade are determined by the upgrade script. This requirement is mostly for new objects created during the upgrade. It is a fair estimate of space requirements.

12.1 Prerequisites for Database Upgrade

  • The Oracle Database Server version should be upgraded to 12c (12.1.0.2.0).

  • Verify that Java is installed and JCE policy is applied.

  • Verify that the Oracle TNSNAMES have been configured.

  • To avoid errors during upgrade, do either of the following:

    • Keep datafiles AUTOEXTEND ON, or

    • Monitor free space and add more space, if required

  • Make sure you have a sort area of approximately 100 MB to avoid disk sort

  • Create one large rollback segment or size 20 GB for LARGE size model.

    Keep all other rollback segments, except SYSTEM, offline.

  • The source Argus Safety database must be AL32UTF8 character set.

  • The database semantics must be CHAR and not BYTE.

12.2 Argus Safety Database Upgrade

Note:

You will need to generate a key prior to the database upgrade or you can use a key from the existing setup.

You must also make sure that the password information specified in the database is consistent with the information provided in the ArgusSecureKey.ini file.

You may be prompted to press Enter at screens that are not included in the procedure. This does not hinder the upgrade procedure. Where applicable, press Enter to continue with the upgrade process.

  1. If Argus Role and ESM Role values are not correctly populated on the upgrade screen, then to make sure the upgrade tool detects the roles correctly, log in as the Argus Schema User, and from SQLPlus execute the following commands:

    define ESM_ROLE = <Current ESM ROLE NAME>
    define ARGUS_ROLE = <Current ARGUS ROLE NAME>
    
    INSERT INTO cmn_profile_global (section, key, value, key_type) VALUES ('DATABASE', 'ARGUS_ROLE',  '&ARGUS_ROLE.', 0);
    INSERT INTO cmn_profile_global (section, key, value, key_type) VALUES ('DATABASE', 'INTERCHANGE_ROLE', '&ESM_ROLE.', 0);
    COMMIT;
    
  2. Connect to the Argus Safety database as SYS user.

    Note:

    If another DBA user is used instead of SYSTEM, then change SYSTEM to the name of DBA user and execute the command below.

    Provide the following grants if the DBA user has been created through the Create DBA User script:

    Define user_dba=SYSTEM
    GRANT EXECUTE on SYS.DBMS_CRYPTO TO &user_dba. WITH GRANT OPTION;
    
  3. Select Start > Programs > Oracle > Schema Creation Tool.

  4. Click Create/Upgrade DB.

    The Argus Safety - Database Setup screen appears.

    You cannot modify any details on this screen. In case, any of the information is incorrect, then you must re-create the schema.

  5. In case of upgrade, all the schema details will be auto-populated based on the schema selection logic. Before proceeding further, you must confirm that all the schema details are correctly populated.

    Note:

    You must not create any Argus Safety objects in custom schema.
  6. Click Next.

  7. Enter the path for Tablespaces and click Next.

  8. Verify the Setup Parameters and click Execute.

  9. To ignore any error due to customization, check Ignore Error checkbox in the Schema Creation Tool, and analyze it later when the upgrade is done.

  10. To validate the schema, run the Schema Validation tool.

12.3 Post Upgrade Steps

  1. Log in to ARGUS_APP schema.

  2. Verify that the common profile switch DATABASE_TIMEZONE is not empty by executing the following script:

    select key, value from cmn_profile where key = 'DATABASE_TIMEZONE';
    

12.4 Populate J License under Case Form—PMDA tab

If you are already live on Argus Safety English version, you can go live with the Single Global DB and choose to Enable Argus Japan module on the same version or an upgrade version (with both English and Japan).

In such a scenario, some existing cases may need J Reporting and require licenses under PMDA tab. The upgrade script J_Lic_Upgrade_PMDA adds PMDA Licenses under PMDA tab (if does not exists already) for the existing drug or vaccine licenses under Event Assessment.

When updating the cases:

  • The script excludes all the cases that are open or that are deleted.

  • The script includes cases in locked state or archived state.

  • The updates are audit logged.

To populate J License under Case Form > PMDA tab:

  1. Upgrade your database to Argus Safety 8.1.1 or 8.1.2.

  2. Execute the batch file J_License_PMDA_Upgrade.bat from <Argus Install Path>\Argus\DBInstaller\utilities\J_Lic_Upgrade_PMDA

  3. Enter the log file name to record the list of cases updated by this upgrade script.

    This is the execution log that is created on the client workstation under the J_Lic_Upgrade_PMDA directory.

  4. Enter TNSNAMES Entry to Connect to the source SAFETY Database.

  5. Enter the Argus Schema Owner name.

  6. Enter the password of the Argus Schema user.

12.5 Enable Local Locking in Argus Safety

Before enabling Local Locking in Argus Safety, you must make sure that you have upgraded your database to Argus Safety 8.1.2 successfully.

  1. Execute the batch file Enable_local_lock.bat from <C>:\Program Files\Oracle\Argus\DBInstaller\utilities\Enable_local_lock directory.

  2. Enter the response for Do you wish to turn on the Local Locking feature for one or more enterprises (Yes/No)?, enter Yes to continue.

  3. Enter the log file name to record the results.

    This is the execution log that is created on the client workstation under the Enable_local_lock directory mentioned above.

  4. Enter TNSNAMES Entry to Connect to the source SAFETY Database.

  5. Enter SAFETY schema owner name in source Database.

  6. Enter the password for safety schema name in source Database.

  7. Enter comma separated list of enterprises where local locking feature is to be enabled or enter ALL for all enterprises in Source safety Database.

    If no value is entered script will run for enterprise 1 by default.

  8. Enter the Agency name for PMDA reporting destination as configured in Reporting Destination codelist.

  9. To enable local locking privileges for the Argus J users, enter Yes.

    Follow the prompts for confirmation.

    Note:

    If the agency entered is invalid for any of the enterprises, the utility will abort and no changes will be committed.

    In case of a multi-tenant environment, if this utility is re-run for any of the enterprises, it will display a list of the enterprises for which it has already executed and will continue to process rest of the enterprises.

12.6 Merge a Single Enterprise Safety Database into a Multi-tenant Database

12.6.1 Prerequisites to Run the Merge Export Step

  • The end user should not use the Source database during export process.

  • Install Argus Safety 8.1.2 on a computer where Oracle 12c (12.1.0.2.0) is installed.

  • The source databases should be schema validated at Argus Safety 8.1.2.

  • The source database should only be a single-tenant database.

  • The source database data must contain only one ENTERPRISE.

12.6.2 Merge Export

  1. Navigate to the following Path from Start Menu:

    All Programs > Oracle > Merge to Multi-tenant

  2. Click Export and follow the instructions on the sqlplus screen.

    1. Enter Log File Name to record results.

      This is the execution log that is created on the client workstation:

      Log file path: <C>:\Program Files\Oracle\Argus\DBInstaller\Merge_to_Multitenant

    2. Enter TNSNAMES Entry to Connect to the Source SAFETY Database.

    3. Enter SYSTEM or DBA user name in source Database.

    4. Enter password for DBA user in source Database.

    5. Enter SAFETY schema owner name in source Database.

    6. Enter password for Safety schema owner in source Database

    7. Enter Interchange schema owner name in Safety Database

    8. Enter password for Interchange schema owner in source Database.

    9. Enter the full directory Path to create the Source Safety database export dump file:

      This is the Path on the Source Database Server where the Argus Safety Database resides. The Batch file will create an export dump file (SAFETY.DMP) and an export log file (SAFETY_EXPORT.LOG) in the Directory.

      Make sure that SAFETY.DMP file does not exist prior to the export.

  3. Make sure that no error has occurred during the database export, by checking the following log files:

    • Log file name entered as parameter 1 during export step execution.

    • Following Oracle Export log files are created on database server. The path is the value entered on ”Enter Directory including full Path to create Source safety database export dump file” during export step:

      SAFETY_EXPORT.log

12.6.3 Export the dmp File Copy to the Target Database Server

Move the export Dmp file created in Merge Export from the source database server to the target database server.

12.6.4 Prerequisites to Run the Merge Import Step

  • Create a cold backup of the target database before starting the MERGE IMPORT step.

  • The end user should not use the target database during the import process

  • Only one MERGE Import process can run on the Target database at a time.

  • Auto extend should be set on for all Database files in the target database

  • Sufficient space should be available on the target database server to import the new Enterprise Data. The amount of space depends on the number of cases in source Safety database.

  • Install the Argus 8.1.2 application. Make sure that Oracle Client version is 12c (12.1.0.2.0).

  • The Target databases should be Schema Validated at Argus 8.1.2.

  • The target database must be a Multi-tenant database

  • All source database dictionaries should be available in target Database. If the dictionary doesn't exist then install missing dictionaries on Target database.

  • All existing AG service users on the Source Database must exist on the target Database

  • All source database LDAP configured server names should be available in target database.

12.6.5 Merge Import

  1. From Start menu, navigate to the following path:

    All Programs > Oracle > Merge to Multi-tenant

  2. Click Import and enter the following parameters for the target database:

    1. Log File Name to record results

      This is the execution log that will be created on the client workstation.

      Log file path: <C>:\Program Files\Oracle\Argus\DBInstaller\Merge_to_Multitenant

    2. TNSNAMES entry to connect to the target Safety database

    3. SYSTEM or DBA user name

    4. Password of the DBA user

    5. VPD schema owner name

    6. Password of the VPD schema owner

    7. SAFETY schema owner name

    8. Password of the Safety schema owner

    9. Interchange schema owner name

    10. Password of the Interchange schema owner

    11. Directory location where the export dmp file is copied for the import process.

      This is the path on the "Target Database Server" where the Argus Safety database is installed. The batch file creates an import log file in this directory.

    12. Name of the new enterprise

    13. Abbreviation of the new enterprise

    14. SAFETY schema owner name in the source database

    15. Interchange schema owner name in source database

  3. This batch file imports the data from the dump file into the target database.

  4. Make sure that no error has occurred during import by checking the following log files:

    • Log file name entered as parameter 1 during Import step execution.

    • The following Oracle Import log files are created on database server. The path is the value entered on ”Enter Directory including full Path on target database server where export dmp file copied for import process” during import step.

      • SAFETY_IMPORT_safety.log

      • SAFETY_IMPORT_interchange.log

      • SAFETY_IMPORT_SAFETY_DUP_SEARCH_DATA.log

      • SAFETY_IMPORT_SAFETY_DUP_LAM_SEARCH_DATA.log

  5. Validate the Schema of the database using Safety Schema Validation tool.

12.6.6 Synchronize Dictionary Manually

The MERGE process synchronizes the dictionary information based on the dictionary name in the source and target database. If the source Dictionary name is not available in Target Database, then manual synchronization is required.

To synchronize the dictionary data manually on the target database:

  1. Log in as Safety schema owner using sqlplus on Target Safety Database.

  2. Locate the new ENTERPRISE_ID value created from import process using the following sql:

    SELECT VALUEFROM cmn_profile_globalWHERE section = 'DATABASE' AND KEY = 'MERGING_TO_MULTITENANT';
    
  3. Set the context value to new Enterprise_id

    Exec pkg_rls.set_context('admin',< Value of New Enterprise ID>,'ARGUS_SAFETY');
    
  4. Locate the list of Dictionaries ID's where Dictionary synchronization pending due to missing Dictionaries on Target database. If the following sql results in NO ROWS, then no further action is required.

    Select dict_idFrom cfg_dictionaries_enterpriseWhere enterprise_id = <Value of New Enterprise ID>And global_dict_id = -1;
    
  5. Log in as the Safety schema owner using sqlplus on the source safety database.

  6. Locate the dictionary name of each Dictionary ID where the Dictionary does not exist on the target database using the following sql:

    Select name from cfg_dictionaries_global where dict_id in (<List of Dict ID values (comma separated) from Step 4);
    
  7. Load the missing dictionaries on the target database.

  8. Set the context to new enterprise_id using following sql on target database.

    Exec pkg_rls.set_context('admin',<Value of new ENTERPRISE_ID> ,'ARGUS_SAFETY');
    
  9. Update GLOBAL_DICT_ID data in the target database using the following SQL:

    UPDATE CFG_DICTIONARIES_ENTERPRISE
    SET GLOBAL_DICT_ID = <Dictionary Global Dict ID value from target database>
    WHERE ENTERPRISE_ID = <New ENTERPRISE_ID created in Target Database>
    AND DICT_ID = <Value of Dict ID in New ENTERPRISE with Dictionary name>
    AND GLOBAL_DICT_ID =-1;