2012-09-06 176 views
0

连接到我的MySQL数据库之类的标题说,我无法通过C#连接到我的数据库,我得到下面的异常,当我尝试打开一个连接:似乎无法通过C#

无法连接到任何指定的MySQL主机

但我可以使用完全相同的登录信息连接没有问题的PHP。

编辑我只是在改变数据库。此连接字符串已使用不同的数据库工作了2年。我一直在使用服务器尝试了一下,而不是数据源,并用相同的结果UID /用户ID而不是用户名

C#:

ProjectDBC = new MySqlConnection("Data Source=combinedsystems.ca;Database=combined_project;UserID=xxxxx;Password=xxxxx;"); 

PHP:

$db_user = "xxxxx"; 
$db_pass = "xxxxx"; 
$db_database = "combined_project"; 
$db_host = "combinedsystems.ca"; 

$mysqli = new mysqli($db_host, $db_user, $db_pass, $db_database); 

这可能是什么很容易,但我现在无法弄清楚。有任何想法吗?

数据库通过hosteasysolutions.com托管,如果有什么差别

+1

是否设置了允许tcp连接的实例?所有配置为允许流量的防火墙? –

+0

呃,我不确定这两者中的哪一个......我该如何检查? – Toadums

回答

1

连接字符串看起来错......你需要指定ServerUidPwd,而不是Data SourceUserIDPassword,或指定Data SourceUser IDPassword(用户ID具有一个空间)

Server=combinedsystems.ca;Database=combined_project;Uid=xxxxx;Pwd=xxxxx; 

OR

Data Source=combinedsystems.ca;Database=combined_project;User ID=xxxxx;Password=xxxxx; 

检查this link为例。

+0

我不这样做 - 但我已经以完全相同的方式永远使用它了。我只是改变我的程序现在使用不同的数据库,我正在使用的字符串已经为其他数据库工作... wierd – Toadums

+0

我已经尝试了两种方式,同样的错误:( – Toadums

+0

你检查,以确保您的登录证书对于新数据库是否正确?用户是否可以访问新的数据库? –

1

您不指定服务器,是吗?我用下面的字符串来连接到MySQL主机:

Server=localhost;Database=db;UID=user;Password=pass 
+0

我不这样做 - 但我已经以完全相同的方式永远使用它了。我只是改变我的程序现在使用不同的数据库,我使用的字符串已经为其他数据库工作... wierd – Toadums

1

尝试使用用户和ID或者只是使用USER =或UID之间的空间=

+0

我已经尝试了两个... – Toadums

1

确保你没有(不知何故 - 某处)您的项目中定义了两个连接字符串,因为您正在更改数据库