如何在电脑B打开关联A电脑本地MySQL的Java Jar包?能否跨机连接数据库?
在电脑B上运行Java可执行Jar包+连接电脑A的MySQL数据库
一、电脑B上运行Jar包的操作
- 先确认电脑B装了Java运行环境(JRE),版本得和你打包Jar时用的JDK兼容。开个命令提示符/终端,敲
java -version就能看有没有装、版本对不对。 - 把电脑A上的Jar包拷到电脑B随便哪个文件夹里。
- 打开命令提示符/终端,用
cd命令切到Jar包所在的目录,比如Windows里cd D:\my-project,Linux/macOS里cd ~/my-project。 - 最后敲命令运行:
java -jar 你的Jar包文件名.jar,把“你的Jar包文件名”换成实际的名字就行。
二、电脑B连接电脑A的MySQL数据库的方法
完全可以实现,按下面步骤来:
1. 给电脑A的MySQL开权限
- 登录电脑A的MySQL控制台,执行下面的SQL命令,授权电脑B访问你的数据库:
要是只是测试想让任意IP都能连(不推荐生产用),就把GRANT ALL PRIVILEGES ON 你的数据库名.* TO '数据库用户名'@'电脑B的IP' IDENTIFIED BY '数据库密码'; FLUSH PRIVILEGES;电脑B的IP换成%。 - 改MySQL的配置文件(my.cnf或my.ini),把绑定地址从
127.0.0.1改成0.0.0.0或者电脑A的局域网IP,改完重启MySQL服务,不然外部连不上。
2. 给电脑A的防火墙开端口
- 得开放MySQL默认的3306端口,允许电脑B访问:
- Windows:打开Windows Defender防火墙的高级设置,添加入站规则,允许3306端口的TCP连接。
- Linux:Ubuntu用
ufw allow 3306,CentOS用firewall-cmd --add-port=3306/tcp --permanent && firewall-cmd --reload。
3. 修改Jar包的数据库连接配置
- 之前Jar包里面的数据库地址如果是
localhost或者127.0.0.1,必须改成电脑A的局域网IP。要是你的项目是读外部配置文件的,直接改配置里的url就行,比如把jdbc:mysql://localhost:3306/你的数据库名改成jdbc:mysql://电脑A的IP:3306/你的数据库名。 - 要是配置是硬写在代码里打包进Jar的,那得重新改代码里的连接地址,再打包一次Jar包才行。
内容的提问来源于stack exchange,提问作者netbeansnewbie
相关产品推荐
相关产品推荐

