我正在用 c# 连接到一个 mysql 数据库,只要我将服务器地址输入为“localhost”或其 ip,它就可以正常工作,但是如果我尝试使用远程 ip,它会失败:
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.");
}
测试:
- 没有防火墙限制
- 不同电脑出现同样的错误
- 已经尝试过使用不同的远程数据库,所有这些都具有设置权限并且可以从其他来源访问