mysql 客户端可以访问_Mysql客户端工具可以连接,但是代码访问就会报错

在执行如下代码的时候,客户端工具是可以连接的:

20787782d209906133e41696c8d7c3e8.png

但是用代码去访问的时候,却总是报错误:

java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.

com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:127)

com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:95)

com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:87)

com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:61)

com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:71)

com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:76)

com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:862)

com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:444)

com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:230)

com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:226)

---------------------

作者:Going_cc

来源:CSDN

原文:https://blog.csdn.net/weixin_39033443/article/details/81711306

版权声明:本文为博主原创文章,转载请附上博文链接!

代码连接mysql的demo如下:

public static void main(String[] args) {

Connection conn = null;

Statement stmt = null;

try{

String driver = "com.mysql.jdbc.Driver";

String url = "jdbc:mysql://127.0.0.1:3306/activiti";

String dbName = "root";

String password = "123456";

// 注册 JDBC 驱动

Class.forName(driver);

// 打开链接

System.out.println("连接数据库...");

conn = DriverManager.getConnection(url,dbName,password);

// 执行查询

System.out.println(" 实例化Statement对象...");

stmt = conn.createStatement();

String sql;

sql = "SELECT rid, rolename FROM role";

ResultSet rs = stmt.executeQuery(sql);

// 展开结果集数据库

while(rs.next()){

// 通过字段检索

int rid = rs.getInt("rid");

String rolename = rs.getString("rolename");

// 输出数据

System.out.print("ID: " + rid);

System.out.print(", 站点名称: " + rolename);

System.out.print("\n");

}

// 完成后关闭

rs.close();

stmt.close();

conn.close();

}catch(SQLException se){

// 处理 JDBC 错误

se.printStackTrace();

}catch(Exception e){

// 处理 Class.forName 错误

e.printStackTrace();

}finally{

// 关闭资源

try{

if(stmt!=null) stmt.close();

}catch(SQLException se2){

}// 什么都不做

try{

if(conn!=null) conn.close();

}catch(SQLException se){

se.printStackTrace();

}

}

System.out.println("Goodbye!");

}

后经查询,引入如下方法解决:

即执行命令:

show variables LIKE '%time_zone%';

set global time_zone = '+8:00';

话不多说,从错误即可知道是时区的错误,因此只要将时区设置为你当前系统时区即可,

因此使用root用户登录mysql,按照如下图所示操作即可。

18123448_bah9.png

我电脑的系统为北京时区,因此在系统中设置后,再连接数据库运行,一切OK!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值