Converting from One Database to Another
If you need to convert your Connect Daily database from one engine to another, a program is provided to do this. For example, if you want to convert from Microsoft Access to Microsoft SQL Server, then you can use the database converter.
WARNING
DO NOT USE A DATABASE UPSIZING WIZARD OR OTHER CONVERTER. ONLY THE CONNECT DAILY CONVERTER WILL CORRECTLY CONVERT THE DATA.
Note for MS Access Conversions
If you are converting to or from Microsoft Access, you must use a 32-bit Java Virtual Machine or have the 64-bit Access ODBC drivers installed.
Running the Conversion
- Get the JDBC drivers for each database. If you're converting to or from Access, the JDBC Driver is already built-in to Java.
- Create a configuration.properties file for each database. Refer to the appropriate manual section for your database.
- Run the schema creation script for the destination database.
- Run the converter:
java -classpath cdaily-x.x.x/WEB-INF/lib/cdaily.jar:Path To Other JDBC Driver Jar: Path to Other JDBCDriver
com.mhsoftware.cdaily.support.db.DatabaseConverter source_configuration.properties destination_configuration.properties
The command is one statement and should be all on one line.
Note that path separators are ";" characters on Windows, and ":" on UNIX and Mac OS X.
If everything is working (file paths are right, and database connection strings are right) the system will prompt you if you're sure you wish to wipe the destination database. Type "yes" and the conversion will run. If a problem is encountered, an error message will be displayed. Correct the error and re-try the conversion.
If you want to run the conversion without confirmation add --yes as the last parameter.
Here are some common errors:
Exception in thread "main" java.lang.NoClassDefFoundError: com/mhsoftware/cdaily/support/db/DatabaseConverter - You are referencing a version of cdaily.jar that doesn't contain the Database Converter. The converter is only present in versions 3.4.16 and higher.
ClassNotFoundException - You're probably not specifying the right path to the JDBC driver jar.
SQL Exception: Invalid object (or table) name referencing 'cd_dbversion' - You didn't run the schema creation script on the destination database.
SQLException on connection - Your connection parameters are wrong.