The instructions on this page take you through the steps for upgrading from MB 3.1.0 to MB 3.2.0. Note that you cannot rollback the upgrade process. However, it is possible to restore a backup of the previous database and restart the upgrade progress.
Preparing to upgrade
The following prerequisites must be completed before upgrading:
Make a backup of the databases used for MB 3.1.0.
Also, copy the
<MB_HOME_3.1.0>
directory in order to backup the product configurations.Download WSO2 Message Broker 3.2.0 from http://wso2.com/products/message-broker/.
NOTE: The downtime is limited to the time taken for switching databases when in the production environment.
Upgrading from MB 3.1.0 to MB 3.2.0
WSO2 MB 3.2.0 comes with several database changes compared to WSO2 MB 3.1.0 in terms of the data format used for storing. We are providing a simple tool that you can easily download and run to carry out this upgrade.
Follow the steps given below to upgrade from WSO2 MB 3.1.0 to WSO2 MB 3.2.0.
- Disconnect all the subscribers and publishers for WSO2 MB 3.2.0.
- Shut down the server.
- Run the migration script to update the database:
- Open a terminal and navigate to the
<MB_HOME>/dbscripts/mb-store/
migration-3.1.0_to_3.2.0
directory. - Execute the following command:
- On Windows:
oracle-mb.sql
- On Linux:
sh oracle-mb.sql
- On Windows:
- Open a terminal and navigate to the
- Download and run the migration tool:
Download the migration tool.
Unzip the
org.wso2.mb.migration.tool.zip
file. The directory structure of the unzipped folder is as follows:TOOL_HOME
|-- lib <folder>
|-- config.properties <file>
|-- tool.sh <file>
|-- README.txt <file>
|-- org.wso2.carbon.mb.migration.tool.jar- Download the relevant database connector and copy it to the
lib
directory in the above folder structure. For example, if you are upgrading your MySQL databases, you can download the MySQL connector JAR from http://dev.mysql.com/downloads/connector/j/5.1.html and copy it to thelib
directory. Open the config.properties file from the org.wso2.mb.migration.tool.zip file that you downloaded in step 4 above and update the database connection details shown below.
#Configurations for the database dburl= driverclassname= dbuser= dbpassword=
The parameter in the above file are as follows:
- dburl: The URL for the database. For example, jdbc:mysql://localhost/wso2_mb
- driverclassname:The database driver class. For example, com.mysql.jdbc.Driver for MySQL.
- dbuser: The user name for connecting to the database.
- dbpassword: The password for connecting to the database.
- Update the datasource connection for the MB database in the
master-datasources.xml
file (stored in the<MB_HOME_320>/repository/conf/datasources
directory). Run the migration tool:
If you are on a Linux environment, open a command prompt and execute the following command:
tool.sh
.- If you are on a non-Linux environment, execute
org.wso2.carbon.mb.migration.tool.jar
manually.
- Start WSO2 MB 3.2.0.
- Reconnect all the publishers and subscribers to MB 3.2.0.
Testing the upgrade
Verify that all the required scenarios are working as expected as shown below. This confirms that the upgrade is successful.
- Make sure that the server starts up fine without any errors.
- Verify that the Users and Roles are picked up:
- Navigate to Configure -> Accounts & Credentials -> Users and Roles
- Verify that the list of users and roles are shown correctly.
- View the permissions of a chosen role, and make sure that the permissions are correct.
- Verify that all the messages to the Queues and Topics have been successfully published in the MB 3.2.0 instance.
- Run some of the samples to see that the system is working fine.