IDEA使用jdbc连接服务器上的MySQL
服务器上mysql创建用户设置为任何地方都可以访问
使用root登录mysql
[root@localhost ~]#mysql -u root -p
然后输入密码。
创建账户
mysql>create user 'user1'@'%' identified by 'password';
//单引号中user1是所想创建的用户名,%代表任何地方可以访问,仅本地访问可以设置为localhost
授权
//这里我创建的账户是user1,javatest是已经用root账户做好的一个测试数据库
//语法是select 权限 on 数据库名.表名 不指定用*代替如下
//这句是将数据库javatest下所有表的查询权限授权给user1
mysql>grant select on javatest.* to 'user1'@'%';
//刷新权限
mysql>flush privileges;
开放端口
默认端口是3306,在服务器中需要开放端口以便于能够访问
firewall-cmd --zone=public --add-port=3306/tcp --permanent
//服务器开放端口关闭端口不做过多介绍
关于创建用户因为我选择的mysql是mysql8.0之前也参照了很多方法添加用户均以失败告终比如在mysql.user下添加一条用户好像是password的地方总是出问题,这几条语句也是依稀记得的一点可能会有一点点问题,那就自行解决吧。
IDEA添加jar文件
添加jar
该文件可以到mysql官网去下载。
打开idea创建一个文件夹随意命名这里我命名为libs将下载好的jar文件放入这个文件夹下,当然也可以在选择jar文件时找到自己的jar文件存放文职并不一定需要创建这个文件夹
将jar文件粘贴到libs文件夹中(可以忽略但是要记住jar文件在哪,版本是否对应)
文件->项目结构->库->第二列加号->java
选择jar文件
编写一个java程序测试能否连接到数据库(图片是为了方便写这篇文章与代码无关)
编写代码
import java.sql.*;
public class Test {
static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://ip:端口号/数据库名";
//分别对应数据库所在服务器的ip之后要有冒号然后是端口号/数据库名
static final String USER = "user1";//刚刚设置的账户
static final String PASS = "123456";//刚刚设置的密码
public void select() throws ClassNotFoundException, SQLException {
Connection conn = null;
Statement stmt = null;
Class.forName(JDBC_DRIVER);
conn = DriverManager.getConnection(DB_URL,USER,PASS);
// 执行查询
stmt = conn.createStatement();
String sql;
sql = "SELECT * FROM users";
ResultSet rs = stmt.executeQuery(sql);
// 展开结果集数据库
while(rs.next()){
String ID = rs.getString("ID");
String Name = rs.getString("Name");
// 输出数据
System.out.println("ID: " +ID);
System.out.println("ID: " +Name);
}
rs.close();
stmt.close();
conn.close();
}
public static void main(String[] args) {
Test test=new Test();
try {
test.select();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
到这里就完成了一个简单的过程,当然创建数据库用户也可以将root设置为任何地方均可以访问就是%这个符号,之所以创建user1这个用户是为了让user1仅具有某一个数据库如javatest下表的一部分权利(只是一点点个人猜测)。
第一次写可能会有很多错误多多见谅。
版权声明:本文为qq_57391673原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。