Question

when I try to run the MySQL Migration Toolkit GUI in Windows, I get an error that states Java is not installed. Java is installed, but Migration Toolkit doesn't recognize it. Does anybody know how to solve this problem?

Was it helpful?

Solution

You should really try the new Migration Wizard that comes with recent MySQL Workbench versions. The MySQL Migration Toolkit has been phased out several years ago and is not under active development.

For a tutorial on the Migration Wizard take a look at How-To: Guide to Database Migration from Microsoft SQL Server using MySQL Workbench.

OTHER TIPS

Well in order for this to work the solution is really easy. Go to folder you have installed MySQL Migration Toolkit. Make a shortcut e.g. to your desktop of the executable file MySQLMigrationTool.exe
Then right click on the shortcut you just created and on the target modify it like this

"C:\Program Files (x86)\MySQL\MySQL Migration Toolkit 1.0\MySQLMigrationTool.exe" -verbose -jvm **The Path to your 32bit jvm.dll** 

e.g for my installation with jre1.8.0_45 was

"C:\Program Files (x86)\MySQL\MySQL Migration Toolkit 1.0\MySQLMigrationTool.exe" -verbose -jvm ***"C:\Program Files (x86)\Java\jre1.8.0_45\bin\client\jvm.dll"***

Anyway, if there's still somebody struggling with the MySQL Migration Toolkit and jre 1.8 I would suggest to stop bothering because after fixing the boot by setting the jvm.dll it fails performing the Reverse Engeneering step with this message:

    The schema could not be reverse engineered (error: 0).
ReverseEngineeringAccess.reverseEngineer :sun.jdbc.odbc.JdbcOdbcDriver
Details: 
java.net.URLClassLoader.findClass(Unknown Source)
java.lang.ClassLoader.loadClass(Unknown Source)
sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
java.lang.ClassLoader.loadClass(Unknown Source)
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Unknown Source)
com.mysql.grt.modules.ReverseEngineeringGeneric.establishConnection(ReverseEngineeringGeneric.java:84)
com.mysql.grt.modules.ReverseEngineeringAccess.reverseEngineer(ReverseEngineeringAccess.java:92)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
java.lang.reflect.Method.invoke(Unknown Source)
com.mysql.grt.Grt.callModuleFunction(Unknown Source)

I got the tool running and migrated most of the tables but is not happy with the result because many table creation failed. Still it is useful since I got the script so that I can edit it later. I used these versions

Migration Toolkit 1.0.25

IBM JRE 5.0 (I had this in system) - Had to set the JVM as mentioned by John.

Use Oracle JDBC driver for your database(12c ojdbc8) but it must be renamed to ojdbc14.jar and use.

Delete mysql-connector-java-3.1... files(3 files) from MySQL Migration Toolkit 1.0\java\lib and place mysql-connector-java-5.1.44.jar

Run the tool.

I used mysql_native_password for the MySQL user :- ALTER USER 'mysqluser'@'%' IDENTIFIED WITH mysql_native_password BY 'pass';

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top