我已经编写了一个 java 代码来连接我的 mysql 数据库。它绝对工作正常。 但现在我想从不同的机器运行这段代码。访问这个数据库。 我尝试了很多帖子,然后我找到了一些关于创建用户以授予访问权限的信息。
所以首先,我添加了一个可以从 mysql workbench 进行所有访问的用户。 然后我检查了我的 IP 地址,192.168.*.***;
然后,对我的代码进行了一些更改,以便可以通过我的 ip 访问我 代码是,
String url = "jdbc:mysql://192.168.*.***:3306/db?autoReconnect=true&useSSL=false";
Class.forName ("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection (url,"user","pass");
System.out.println ("Database connection established");
当我从远程机器上尝试这段代码时。 它给出了错误:
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:无法创建与数据库服务器的连接。尝试重新连接 3 次。放弃。
当我尝试从服务器机器 ping 远程机器时,它成功了...... 但是当我尝试从远程机器 ping 服务器机器时,它不是...!!!
那么,有人能帮帮我吗?
我还从 cmd 创建了一个用户,使用 创建用户 'user'@'%' 由 'pass' 标识;
- 我的防火墙也关闭了。 服务中的mysql也在运行。 那我的代码有什么问题?请帮忙。
有些地方我读到了绑定(bind)地址,但在我的窗口中:C:\Program Files\MySQL\MySQL Server 5.7 没有 my.ini 文件可以进行更改。
那还缺什么??????
最佳答案
默认情况下,mysql 只允许来自本地主机的连接。是的,它是配置文件中的绑定(bind)地址。 看看:https://dev.mysql.com/doc/refman/5.7/en/windows-create-option-file.html如何找到您的配置文件。
关于mysql - 即使在创建用户后也无法从远程计算机连接 mysql 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45629451/