This documentation is for WSO2 API Manager 1.9.0. View documentation for the latest release.

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Download the API Manager 1.9.0 from http://wso2.com/products/api-manager/.  
  2. Stop all running API Manager server instances.
  3. Make sure you backed up all the databases and synapse configs as instructed in step 1 of the previous section.

  4. Download WSO2 API Migration Client v1.9.0.

  5. Extract the file you downloaded in the previous step and do the following:
    1. Copy the org.wso2.carbon.apimgt.migrate.client-1.9.0.jar file to <APIM_1.9.0_HOME>/repository/components/dropins.
    2. Copy the migration-script folder into <APIM_1.9.0_HOME>/. If you use a clustered/distributed API Manager setup, copy the migration-script folder to the node that hosts your database.
  6. If you are not using the MySQL database with the API Manager, change the query inside <APIM_1.9.0_HOME>/migration-scripts/18-19-migration/drop-fk.sql according to your database type. The scripts for each database type are given in the table below:

    Database typeScript
    MySQLNo changes are required as the default drop-fk.sql file already contains the scripts for MySQL.
    H2SELECT DISTINCT constraint_name FROM information_schema.constraints WHERE table_name = 'AM_APP_KEY_DOMAIN_MAPPING';
    ALTER TABLE AM_APP_KEY_DOMAIN_MAPPING DROP CONSTRAINT <temp_key_name>;
    OracleSELECT DISTINCT constraint_name FROM user_cons_columns WHERE table_name = 'AM_APP_KEY_DOMAIN_MAPPING';
    ALTER TABLE AM_APP_KEY_DOMAIN_MAPPING DROP CONSTRAINT <temp_key_name>;
    MS SQL ServerSELECT CONSTRAINT_NAME FROM INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE WHERE TABLE_NAME = 'AM_APP_KEY_DOMAIN_MAPPING' AND COLUMN_NAME='CONSUMER_KEY'; 
    ALTER TABLE AM_APP_KEY_DOMAIN_MAPPING DROP CONSTRAINT <temp_key_name>;
    Postgresql

    SELECT CONSTRAINT_NAME FROM information_schema.constraint_table_usage WHERE TABLE_NAME = 'AM_APP_KEY_DOMAIN_MAPPING';
    ALTER TABLE AM_APP_KEY_DOMAIN_MAPPING DROP CONSTRAINT <temp_key_name>;

  7. Start the API Manager 1.9.0 with the following command options to migrate the database, registry and the file system together or separately.

    Warning

    If you have a multitenant API Manager setup, copy the contents from your previous <APIM_HOME>/repository/tenants directory to the same directory in the API Manager 1.9.0 (do not replace the _TokenAPI_.xml_RevokeAPI_.xml and _AuthorizeAPI_.xml files in the /default/api sub directory) before you start the server with the following commands.

    To migrate the database, registry and file system together-Dmigrate=1.9
    To migrate the database only-DmigrateDB=1.9
    To migrate the registry only-DmigrateReg=1.9
    To migrate the file system only-DmigrateFS=1.9
    Tip

    Tip: You can migrate all the resources together with the Dmigrate -Dmigrate=1.9 command or perform single resource migrations using the other commands separately. If you execute -Dmigrate=1.9, you do not need to execute the rest.

    Tip

    Tip: If you are using a clustered/distributed API Manager setup, run -DmigrateDB=1.9 in the node where you have the database, -DmigrateReg=1.9 in the API Publisher and -DmigrateFS=1.9 in the API Gateway.

  8. Do the following to re-index the artifacts in the registry:

    1. Rename the <lastAccessTimeLocation> element in the <APIM_1.9.0_HOME>/repository/conf/registry.xml file. For example, change the /_system/local/repository/components/org.wso2.carbon.registry/indexing/lastaccesstime registry path to /_system/local/repository/components/org.wso2.carbon.registry/indexing/lastaccesstime_1.

    2. Shut down the API Manager 1.9.0, back up and delete the <APIM_1.9.0_HOME>/repository/conf/solr directory and restart the server.

...