使用MySQL Migration Toolkit的MS SQL到MySQL:权限问题

时间:2010-12-21 19:25:29

标签: mysql sql-server migration

我从.bak导入到SQL Server 2008的MS SQL,并将其设置为混合模式。我有一个SQL用户(称为“测试”),可以使用SQL Server正确访问数据库。

我需要将其转换为MySQL数据库,因此我获得了MySQL Migration Toolkit。我选择“MS SQL Server”然后它要求输入主机名/用户名/密码/数据库。我不是100%肯定这些,但我使用“localhost”(在同一台计算机上运行),保留端口(1433)和SQL Server的用户名/密码(“test”)。我使用的数据库名称是我要导入的SQL Server数据库。我点击下一步,输入我的MySQL数据库详细信息,然后尝试运行它,我收到此错误:

Connecting to source database and retrieve schemata names.
Initializing JDBC driver ... 
Driver class MS SQL JDBC Driver
Opening connection ... 
Connection jdbc:jtds:sqlserver://localhost:1433/Orders;user=test;password=blah;charset=utf-8;domain=
The list of schema names could not be retrieved (error: 0).
ReverseEngineeringMssql.getSchemata :Network error IOException: Connection refused: connect
Details: 
net.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(ConnectionJDBC2.java:372)
net.sourceforge.jtds.jdbc.ConnectionJDBC3.<init>(ConnectionJDBC3.java:50)
net.sourceforge.jtds.jdbc.Driver.connect(Driver.java:178)
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.ReverseEngineeringMssql.getSchemata(ReverseEngineeringMssql.java:99)
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)

我对MS SQL并不熟悉,但我可以在MS SQL中使用“test”用户登录并访问此数据库。所以我不确定这里有什么问题。

2 个答案:

答案 0 :(得分:0)

听起来有些sql server服务没有运行。特别是sql浏览器。将其移至serverfault.com以获得更好的帮助。

答案 1 :(得分:0)

恕我直言,而不是localhost更好地使用127.0.0.1。 并且需要检查连接是否使TCP无法使用 还需要检查防火墙。