关于.net连接mysql数据库的问题!用配置连接mysql的时候,server写的是服务器的ip,为什么会连到本地数据库上?

时间:2022-09-21 14:25:33
关于.net连接mysql数据库的问题!用配置连接mysql的时候,server写的是服务器的ip,为什么会连到本地数据库上?关于.net连接mysql数据库的问题!用配置连接mysql的时候,server写的是服务器的ip,为什么会连到本地数据库上?

根据上图,连接mysql的时候配置应该是这样的:
mysql连接
 <connectionStrings>
    <add name="connectionString" connectionString="server=192.168.1.247;data source=prodmng;User ID=root;Password=root; port=3306" providerName="MySql.Data.MySqlClient" />
  </connectionStrings>

但是程序在运行的时候报root的密码错误!!找了很久的原因,不知道为什么,后来把root的密码改成了123456,就是本地数据库root的密码!!然后就不会报错了!!
<add name="connectionString" connectionString=" server=192.168.1.247;data source=prodmng; User ID=root;Password=123456; port=3306" providerName="MySql.Data.MySqlClient" />

开始还不确定是不是连到本地数据库了
然后运行的时候报prodmng数据库不存在,然后我又在本地添加了这个数据库,然后又报表不存在......加了表,就不报错了。。
可以确认,程序在跑的时候是连到了本地的数据库上了,但是我要连ip为247的服务器,配置里写的也是247!这是为什么呢?

15 个解决方案

#1


我之前的数据库连接是这么写的   这个是没问题的!

MySQLConnection conn = new MySQLConnection(new MySQLConnectionString("192.168.1.247", "prodmng", "root", "root", 3306).AsString);

然后写到config配置文件里的时候就出现上面的问题了!

#2


没人么?  自己顶一下~~

#3


自己debug代码,检查连接字符串到底是什么,没代码你让我们说什么

#4


关于.net连接mysql数据库的问题!用配置连接mysql的时候,server写的是服务器的ip,为什么会连到本地数据库上?


debug的结果,连接字符串显示的和写的是一样的

#5


检查你本机的ip

#6


引用 5 楼 xuggzu 的回复:
检查你本机的ip

我本机的ip不是247~

#7


关于.net连接mysql数据库的问题!用配置连接mysql的时候,server写的是服务器的ip,为什么会连到本地数据库上?

#8


难道是mysql的配置写错了??

#9


是不是多处定义了连接字符串,其他地方初始化用的是你的,也没有close

#10


关于.net连接mysql数据库的问题!用配置连接mysql的时候,server写的是服务器的ip,为什么会连到本地数据库上?通常这种情况 绝壁是某个地方犯了低级错误 而没有发现才导致了 这种神奇的现象发生

#11


同上,22222333333333

#12


你用 192.168.1.247 链接的就是 192.168.1.247 上的数据库,这是毋庸置疑的。
除非你的程序你有硬编码,冲抵了配置文件数据

至于 192.168.1.247 在哪里,只有你知道
你可将 192.168.1.247 上 MySQL 的远程访问授权去掉,看看是什么情况

#13



问题解决了

上代码

<connectionStrings>
    <add name="connectionString" connectionString="Location=192.168.1.247;Data Source=prodmng;User ID=root;Password=root; port=3306" providerName="MySql.Data.MySqlClient" />
  </connectionStrings>

我在论坛上的看到n年的一个帖子~~~写连接字符串的时候,把server改成location,然后我就试了下就行了!!这又是为什么呢?? http://bbs.csdn.net/topics/360114285

#14


http://bbs.csdn.net/topics/300091400/     贴错链接了 关于.net连接mysql数据库的问题!用配置连接mysql的时候,server写的是服务器的ip,为什么会连到本地数据库上?

#15


引用 13 楼 zhu5152 的回复:
问题解决了

上代码

<connectionStrings>
    <add name="connectionString" connectionString="Location=192.168.1.247;Data Source=prodmng;User ID=root;Password=root; port=3306" providerName="MySql.Data.MySqlClient" />
  </connectionStrings>

我有上网搜了下,然后自己写了点代码验证测试了下,也算是有所发现吧。
我之前用的库是MySQLDriverCS,然后这个库中的类名中的sql都是大写的如:MySQLConnection  ,用了这个库之后,在写配置的时候就要把server改成location,database写成Data Source!

后来我引用了MySql.Data.MySqlClient这个库,库中的类名sql是小写的如:MySqlConnection,用了这个库之后,我按照之前的写法connectionString="server=192.168.1.247;data source=prodmng;User ID=root;Password=root; port=3306"   没有任何问题!

#1


我之前的数据库连接是这么写的   这个是没问题的!

MySQLConnection conn = new MySQLConnection(new MySQLConnectionString("192.168.1.247", "prodmng", "root", "root", 3306).AsString);

然后写到config配置文件里的时候就出现上面的问题了!

#2


没人么?  自己顶一下~~

#3


自己debug代码,检查连接字符串到底是什么,没代码你让我们说什么

#4


关于.net连接mysql数据库的问题!用配置连接mysql的时候,server写的是服务器的ip,为什么会连到本地数据库上?


debug的结果,连接字符串显示的和写的是一样的

#5


检查你本机的ip

#6


引用 5 楼 xuggzu 的回复:
检查你本机的ip

我本机的ip不是247~

#7


关于.net连接mysql数据库的问题!用配置连接mysql的时候,server写的是服务器的ip,为什么会连到本地数据库上?

#8


难道是mysql的配置写错了??

#9


是不是多处定义了连接字符串,其他地方初始化用的是你的,也没有close

#10


关于.net连接mysql数据库的问题!用配置连接mysql的时候,server写的是服务器的ip,为什么会连到本地数据库上?通常这种情况 绝壁是某个地方犯了低级错误 而没有发现才导致了 这种神奇的现象发生

#11


同上,22222333333333

#12


你用 192.168.1.247 链接的就是 192.168.1.247 上的数据库,这是毋庸置疑的。
除非你的程序你有硬编码,冲抵了配置文件数据

至于 192.168.1.247 在哪里,只有你知道
你可将 192.168.1.247 上 MySQL 的远程访问授权去掉,看看是什么情况

#13



问题解决了

上代码

<connectionStrings>
    <add name="connectionString" connectionString="Location=192.168.1.247;Data Source=prodmng;User ID=root;Password=root; port=3306" providerName="MySql.Data.MySqlClient" />
  </connectionStrings>

我在论坛上的看到n年的一个帖子~~~写连接字符串的时候,把server改成location,然后我就试了下就行了!!这又是为什么呢?? http://bbs.csdn.net/topics/360114285

#14


http://bbs.csdn.net/topics/300091400/     贴错链接了 关于.net连接mysql数据库的问题!用配置连接mysql的时候,server写的是服务器的ip,为什么会连到本地数据库上?

#15


引用 13 楼 zhu5152 的回复:
问题解决了

上代码

<connectionStrings>
    <add name="connectionString" connectionString="Location=192.168.1.247;Data Source=prodmng;User ID=root;Password=root; port=3306" providerName="MySql.Data.MySqlClient" />
  </connectionStrings>

我有上网搜了下,然后自己写了点代码验证测试了下,也算是有所发现吧。
我之前用的库是MySQLDriverCS,然后这个库中的类名中的sql都是大写的如:MySQLConnection  ,用了这个库之后,在写配置的时候就要把server改成location,database写成Data Source!

后来我引用了MySql.Data.MySqlClient这个库,库中的类名sql是小写的如:MySqlConnection,用了这个库之后,我按照之前的写法connectionString="server=192.168.1.247;data source=prodmng;User ID=root;Password=root; port=3306"   没有任何问题!