Erro de tempo de execução Java do kit de ferramentas de migração MySQL
-
12-12-2019 - |
Pergunta
quando tento executar a GUI do MySQL Migration Toolkit no Windows, recebo um erro informando que o Java não está instalado.O Java está instalado, mas o Migration Toolkit não o reconhece.Alguém sabe como resolver este problema?
Solução
Você deve realmente experimentar o novo Assistente de Migração que vem com versões recentes do MySQL Workbench.O MySQL Migration Toolkit foi eliminado há vários anos e não está sob desenvolvimento ativo.
Para um tutorial no assistente de migração, dê uma olhada em Como para: Guia para a migração do banco de dados do Microsoft SQL Serverusando o mysql workbench .
Outras dicas
Bem, para que isso funcione a solução é muito fácil.Vá para a pasta onde você instalou o MySQL Migration Toolkit.Faça um atalho, por exemplo.para a sua área de trabalho do arquivo executável MySQLMigrationTool.exe
Em seguida, clique com o botão direito no atalho que você acabou de criar e no alvo modifique assim
"C:\Program Files (x86)\MySQL\MySQL Migration Toolkit 1.0\MySQLMigrationTool.exe" -verbose -jvm **The Path to your 32bit jvm.dll**
por exemplo, para minha instalação com jre1.8.0_45 era
"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';