[英]C# MySQL - remote connecting
我正在創建一個使用MySQL數據庫存儲數據的C#(.NET 4.0)應用程序。 該數據庫安裝在第三方公司的服務器上,並且該應用程序必須遠程連接-當前使用域名(myname.home.pl)。
此外,還有一個網站也使用相同的數據庫,該網站位於同一服務器上,因此它通過本地主機連接到DB。
該網站始終正常運行,並且連接沒有問題。
C#應用程序通常也可以成功連接,但是有時無法打開連接,並且在連接超時后返回錯誤:“無法連接到任何指定的MySQL主機”。 我不知道可能是這種錯誤的原因。
在Windows XP和Windows 7上會發生此問題,未測試其他操作系統版本。
連接字符串采用以下格式(sqlData結構包含登錄數據):
connection.ConnectionString = String.Format(
"server={0};database={1};user='{2}';password='{3}';",
sqlData.Server,
sqlData.Catalog,
sqlData.User,
sqlData.Password
);
我在stackoverflow上發現了幾個有關此錯誤的主題,但沒有解決……
有人有類似的問題嗎? 它可能是什么原因,或者如何使它不發生?
感謝您的幫助。
MySql.Data.MySqlClient.MySqlException(0x80004005):無法連接到任何指定的MySQL主機。
em MySql.Data.MySqlClient.NativeDriver.Open()
em MySql.Data.MySqlClient.Driver.Open()
em MySql.Data.MySqlClient.Driver.Create(MySqlConnectionStringBuilder settings)
em MySql.Data.MySqlClient.MySqlPool.GetPooledConnection()
em MySql.Data.MySqlClient.MySqlPool.TryToGetDriver()
em MySql.Data.MySqlClient.MySqlPool.GetConnection()
em MySql.Data.MySqlClient.MySqlConnection.Open()
em EasylockControl.Login.button1_Click(Object sender, EventArgs e)
em System.Windows.Forms.Control.OnClick(EventArgs e)
em System.Windows.Forms.Button.OnClick(EventArgs e)
em System.Windows.Forms.Button.PerformClick()
em System.Windows.Forms.Form.ProcessDialogKey(Keys keyData)
em System.Windows.Forms.Control.ProcessDialogKey(Keys keyData)
em System.Windows.Forms.Control.PreProcessMessage(Message& msg)
em System.Windows.Forms.Control.PreProcessControlMessageInternal(Control target, Message& msg)
em System.Windows.Forms.Application.ThreadContext.PreTranslateMessage(MSG& msg)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.