遇到问题,当网站服务器和数据库服务器分离时,代码中把mysql连接的位置localhost换成远程的IP地址(如DBIP=192.168.1.11)时,发觉使用远程IP连接数据时,连接失败.
public static string serverIP = GlobalContext.SystemConfig.DBIP;
private MySqlConnection conn = new MySqlConnection($"Data Source={serverIP};Persist Security Info=yes;UserId=root; PWD=XXXXXX");
原因是:mysql安装好后默认只能在localhost访问:
如果要外部系统也能访问mysql服务器,需要进行做以下更改:
1.在mysql安装路径 如 C:\Program Files\MySQL\MySQL Server 8.0\bin,输入cmd 进入dos控制台,后输入mysql的密码
C:\Program Files\MySQL\MySQL Server 8.0\bin>mysql -u root -p
Enter password: **********
2.把localhost用%代替
mysql> use mysql
mysql> update user set host = '%' where user ='root';
mysql> flush privileges;
mysql> select 'host','user' from user where user='root';
mysql> quit
3.最终问题解决