Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用java、jdbc和sql成功访问另一台计算机上的数据库?_Java_Mysql_Jdbc - Fatal编程技术网

如何使用java、jdbc和sql成功访问另一台计算机上的数据库?

如何使用java、jdbc和sql成功访问另一台计算机上的数据库?,java,mysql,jdbc,Java,Mysql,Jdbc,我在另一台电脑上有这个数据库,我想使用这样的连接字符串来访问它 Class.forName("com.mysql.jdbc.Driver"); con = DriverManager.getConnection("jdbc:mysql://192.168.0.1/dbtina","root","1234"); “dbtina”是我们的数据库。“1234”是我们的密码。我们已经将ip配置成这样,因为我们使用的是有线连接(点对点) 我该如何解决这个问题 您必须在数据库计算机上配置

我在另一台电脑上有这个数据库,我想使用这样的连接字符串来访问它

Class.forName("com.mysql.jdbc.Driver");
         con = DriverManager.getConnection("jdbc:mysql://192.168.0.1/dbtina","root","1234");
“dbtina”是我们的数据库。“1234”是我们的密码。我们已经将ip配置成这样,因为我们使用的是有线连接(点对点)


我该如何解决这个问题

您必须在数据库计算机上配置防火墙,以允许来自特定端口上不同计算机的通信。

打开数据库所在计算机防火墙上的3306端口。

只需禁用防火墙即可。或者打开mysql的端口3306 如果有帮助,请使用此链接

即使这样做,您也可能会遇到安全异常。使用mysql
GRANT
query授予权限

mysql>将db_base.*上的所有特权授予由“db_passwd”标识的db_用户@ip_地址


相应地更改代码:

Class.forName("com.mysql.jdbc.Driver");         
con = DriverManager.getConnection("jdbc:mysql://192.168.0.1:3306/dbtina",
  "root","1234");

首先,您可以提供一些详细信息……您在使用DB的计算机上使用的操作系统是什么?你在那里使用什么样的防火墙或防病毒软件?根据你的评论判断,我也想问一下运行程序的计算机的IP是多少。。。
Class.forName("com.mysql.jdbc.Driver");         
con = DriverManager.getConnection("jdbc:mysql://192.168.0.1:3306/dbtina",
  "root","1234");
GRANT ALL PRIVILEGES ON *.* TO 'USERNAME'@'%' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION;