Move the MashZone NextGen repository to MySQL
1. If you are using your LDAP Directory as the MashZone NextGen User Repository, make sure that at least one user in your LDAP Directory has administrator privileges for MashZone NextGen before you move the MashZone NextGen Repository. See Grant User Access to
MashZone NextGen with
Built-in Groups for instructions. When the MashZone NextGen User Repository is your LDAP Directory, the default administrator account (Administrator user) is disabled.
2. If you are hosting the MashZone NextGen Repository in a new database, create the database following MySQL documentation. Keep the following points in mind: If you want
MashZone NextGen to support international characters in meta-data for artifacts, set the character encoding and collation to UTF-8 when you create the database. See documentation for your database for specific instructions.
For medium or larger MySQL databases that will host the
MashZone NextGen Repository, you should increase the maximum allowed packet size, which defaults to 1MB, for the database.
3. Start the database that will become host to the MashZone NextGen Repository, if it is not already up.
4. Using the SQL tool for the database that will be host, add MashZone NextGen Repository tables with the scripts shown below from the corresponding folder in MashZoneNG-install/prestorepository/mysql:
a. Create a Database to hold the MashZone NextGen Repository tables. See the file createDB.txt for an example.
b. Create a User with rights to the database created in step a. See the file createUser.txt for an example.
c. Connect to the MySQL database created in step a using a SQL tool (for example MySQL command line client) using the user created in step b. See the comments in the file createDBTables.txt for examples.
d. Execute the statements in the file createDBTables.txt to create the tables using the SQL tool (for example, use the MySQL source command: "source /path/to/createDBTables.txt").
e. Execute the statements in the file createSchedulerTables.sql (for example: "source /path/to/createSchedulerTables.sql").
f. Execute the statements in the file createSnapsTables.sql (for example: "source /path/to/createSnapsTables.sql").
This folder also contains scripts to drop the corresponding MashZone NextGen Repository tables, if needed.
5. Replace the JAR for the MashZone NextGen Repository:
a. Remove the MashZoneNG-install/apache-tomcat/mashzone/WEB-INF/lib/jackbe-presto-rds-postgresql-derby.jar JAR file for each MashZone NextGen Server that uses this MashZone NextGen Repository. You can delete this JAR or simply move it to a folder that is not in the classpath for the application server that hosts MashZone NextGen.
b. Copy this JAR file:
MashZoneNG-install/prestorepository/jackbe-presto-rds-oracle-mysql-mssql.jar
To the web-apps-home/mashzone/WEB-INF/lib folder.
6. Copy the MySQL JDBC driver jar file to MashZoneNG-install/apache-tomcat/lib.
7. Open the MashZoneNG-install/apache-tomcat/conf/context.xml configuration file in the text editor of your choice.
8. For the MashZone NextGen Repository, edit the <Resource> element with an ID of MashzoneNextGenRepository and:
a. Update the JDBC driver, URL and credential properties:
name="MashzoneNextGenRepository" auth="Container" type="javax.sql.DataSource"
maxTotal="200" maxIdle="30" maxWaitMillis="10000"
username="app" password="app" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://host-name/databasename"
/>
For MySQL databases, it is recommended that you include the database name in data source URLs. If this information is omitted, testing the data source fails and may also cause errors with access to stored procedures.
The JTA managed property must be false.
b. If needed, update optional properties. See Tomcat Datasource Properties for a complete list of optional properties and information on defaults. Some common properties you may need to set include:
validationQuery = select 1 from dual 9. Start the MashZone NextGen Server to apply these changes. This also starts the MashZone Server.
If the
MashZone NextGen Server does not start up successfully, see
Troubleshooting Connections to the
MashZone NextGen
Repository for suggestions.
10. Update connection information for the Snapshots Repository:
a. Open MashZone NextGen Hub and login.
b. Add a JDBC driver for the new database that should host the Snapshots Repository. See Add or manage JDBC drivers for instructions on adding JDBC drivers. c. Expand the JDBC Configuration menu, if needed, and select Datasources.
d. Select SnapshotDatasource and click Edit. e. Update configuration to point to the new database. See Add a data source for information on specific configuration properties. f. Click Save.
11. Restart the MashZone NextGen Server to apply these changes.
12. Load macros required for the Snapshot feature in MashZone NextGen:
a. Open a command or terminal window and move to the MashZoneNG-install/presto-cli/bin folder.
b. Enter the appropriate command, shown below, for your operating system:
For Windows | For Linux, OS/X or UNIX |
publish-global-macros.bat -u Administrator -p manage -url http://app-server:port/mashzone/edge/api | ./publish-global-macros -u Administrator -p manage -url http://app-server:port/mashzone/edge/api |