2010-12-21 99 views
0

我有一個MS SQL從.bak導入SQL Server 2008,我將它設置爲混合模式。我有一個SQL用戶(稱爲「測試」),可以使用SQL Server正確訪問數據庫。使用MySQL Migration Toolkit的MS SQL到MySQL:權限問題

我需要將其轉換爲MySQL數據庫,所以我得到了MySQL Migration Toolkit。我選擇「MS SQL Server」,然後詢問主機名/用戶名/密碼/數據庫。我對這些並不是100%確定的,但是我使用了「本地主機」(在同一臺計算機上運行),保留了SQL Server的端口(1433)和用戶名/密碼(「test」)。我使用數據庫名稱來查找要導入的SQL Server數據庫。我點擊next,進入我的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中很好。所以我不確定這裏有什麼問題。

回答

0

聽起來像一些sql服務器服務沒有運行。特別是sql瀏覽器。將此移至serverfault.com以獲得更好的幫助。

+0

忘記在MSSQL配置中啓用TCP連接,是的。 – Zeno 2010-12-21 21:41:46

0

恕我直言,而不是本地主機更好地使用127.0.0.1。 而且需要檢查連接是否拋出TCP受損 還需要檢查防火牆。