我想从 oracle 迁移到 MySql。我正在使用 MySql 迁移工具 5.0。 迁移向导中出了点问题。
错误信息是
Connecting to source database and retrieve schemata names.
Initializing JDBC driver ...
Driver class Oracle Thin JDBC Driver using Service
Opening connection ...
Connection jdbc:oracle:thin:system/**********@//127.0.0.1:1521/OracleServiceXE
The list of schema names could not be retrieved (error: 0).
ReverseEngineeringOracle.getSchemata :Listener refused the connection with the following error:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
The Connection descriptor used by the client was:
//127.0.0.1:1521/OracleServiceXE
Details:
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:280)
oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:328)
oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:361)
oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:151)
oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:595)
java.sql.DriverManager.getConnection(Unknown Source)
java.sql.DriverManager.getConnection(Unknown Source)
com.mysql.grt.modules.ReverseEngineeringGeneric.establishConnection(ReverseEngineeringGeneric.java:141)
com.mysql.grt.modules.ReverseEngineeringOracle.getSchemata(ReverseEngineeringOracle.java:43)
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)
两个 SQL 服务器都在本地主机上运行。
我该如何解决这些错误?
最佳答案
您可以将使用的服务名称添加到oracle数据库中,或者将输入的值'OracleServiceXE'修改为正确的值'XE'。输入的值看起来很像默认的 Windows 服务名称,可能会与 Oracle 数据库服务名称混淆。
将当前实例服务名称更改为 OracleServiceXE:
alter system set service_name = 'OracleServiceXE';
lsnrctl 服务
还应在 wards 后显示服务名称,除非数据库实例处于受限状态,在这种情况下使用服务名称的连接将失败。
关于mysql - 从 Oracle 迁移到 MySql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6009995/