2011-09-07 166 views
2

我一直在尋找所有的互聯網上的答案,我沒有找到什麼。連接失敗 - 錯誤[HY000] [MySQL] [ODBC 3.51驅動程序]無法連接到'localhost'上的MySQL服務器(10061)

我正在嘗試在Visual Studio 2010 Ultimate和SQL Server Management Studio之間建立連接。我只是製作了一個小程序來查看連接是否正常。

每當我試圖連接,VS會拋出ODBCexception

「ERROR [HY000] [MySQL的] [ODBC驅動程序3.51]無法連接到MySQL服務器 上的 'localhost'(10061)」

這是我的ConnectionString:

DRIVER={MySQL ODBC 3.51 Driver};Data Source=MY-USERNAME\\SQLEXPRESS;Initial Catalog=MY-DATABASE;Integrated Security=True 

該連接字符串是從我在VS中創建的數據連接複製的。

做任何一個有魔法的解決方案???

請謝謝! :)

最好的問候!

回答

2

現在,你與微軟SQL Server Express的服務器名稱(Data Source=MY-USERNAME\\SQLEXPRESS;)混合MySQL的驅動程序(DRIVER={MySQL ODBC 3.51 Driver}) - 你真的要連接哪一個??

如果要連接到SQL Server Express(它與Visual Studio捆綁在一起),則需要使用本機.NET SQL客戶端(而不是ODBC的東西)。

在這種情況下,您的連接字符串將是這樣的:

server=YourMachine\\SQLEXPRESS;Database=MYDATABASE;Integrated Security=True 

或類似的東西 - 看到ConnectionStrings.com爲噸樣品。

在這種情況下,你應該在你的應用程序中的System.Data.SqlClient命名空間中使用類,如SqlConnectionSqlCommandSqlDataReader

+1

OMG OMG OMG !!!你只是一個LIFESAVER!經過8個小時的麻煩,我的腎上腺素仍然在抽血!我的天啊!!非常感謝!!! 它工作:D:D – Lahno

+0

有時你只是沒有看到樹木的森林......打賭我們都在那裏......很高興我能夠幫助! –

0

這個問題很古老,但這裏是引導任何有我的問題的人。在設置Diafaan SMS服務器時,我遇到了同樣的問題。問題出在語法上。請注意,在聲明服務器,數據庫,用戶和密碼時不要使用引號。這就是爲什麼錯誤說'localhost'從連接字符串中刪除所有單引號。

Driver={MySQL ODBC 5.1 Driver};SERVER=localhost;DATABASE= yourdatabase;User= root;Password = yourpassword; 
0

即使連接到遠程MySql數據庫,也要確保您的3306端口不被阻塞。我遇到了同樣的問題,一旦我們打開3306端口就解決了。

相關問題