我正在連接到一個MySQL數據庫在C#中,只要我輸入服務器地址爲「本地主機」或它的IP,但一切正常,但如果我嘗試遠程IP它失敗:C#的Mysql連接只能在本地主機上工作
Error: 0 : Unable to connect to any of the specified MySQL hosts.
下面的代碼:
server = Properties.Settings.Default.DBHost;
port = Properties.Settings.Default.DBPort;
database = Properties.Settings.Default.DBName ;
uid = Properties.Settings.Default.DBUser;
password = Properties.Settings.Default.DBPassword ;
string connectionString;
connectionString = "SERVER=" + server + ";" + "PORT=" + port + ";" + "DATABASE=" + database + ";" + "UID=" + uid + ";" + "PASSWORD=" + password + ";";
connection = new MySqlConnection(connectionString);
[...]
if (this.OpenConnection() == true){
// exec db operations
}
else{
MessageBox.Show("Database Connection Error.");
}
測試:
- 沒有防火牆限制
- 在不同的計算機同樣的錯誤
- 已經嘗試過與不同的遠程數據庫,所有組的權限和訪問來自其他來源
遠程主機是否允許非本地主機連接?出於安全原因,MySQL的默認配置可能不允許來自其他主機的連接。 – Fox32 2013-05-12 09:24:40
感謝您的答覆,但我已經從多個實例訪問相同的數據庫(PHP,Android應用程序...),所以非本地主機連接被允許... – ascallonisi 2013-05-12 10:21:32