mysql8在jdbc连接中使用的注意事项

1、驱动程序的差异

使用JDBC链接MySQL5.0的版本时,其驱动加载语句为:com.mysql.jdbc.Driver。
但在MySQL6.0及MySQL6.0以上的版本中,使用的驱动加载语句为:com.mysql.cj.jdbc.Driver。

2、url配置语句需要显示关闭useSSL=false

MySQL8.0采用了更安全的基于SHA 256的密码方式进行身份验证,不需要SSL连接了,所以需要显示的设置关闭useSSL=false。
【useSSL=true表示启用SSL,
SSL(Secure Socket Layer:安全套接字层)利用数据加密为基于TCP协议提供安全保证。
SSL协议功能:
利用对称密钥算法对传输的数据进行加密。
利用数字签名方法对服务器和客户端进行身份验证。
消息传输过程中使用MAC算法来检验消息的完整性。

MySQL 5.7 之前版本,安全性做的并不够好,比如安装时生成的root空密码账号、存在任何用户都能连接上的 test 库等,导致数据库存在较大的安全隐患。从5.7版本开始MySQL官方对这些问题逐步进行了修复,到了 MySQL 8.0 以上版本已经不需要使用 SSL 进行连接加密了。但是高版本仍然保留了这个接口,所以需要在连接的时候手动写明是否需要进行 SSL 连接,这里我们手动关闭 SSL 连接加密就OK。

3、url上需要设置时区CST,serverTimezone=UTC

jdbc:mysql://localhost:3306/demo?useSSL=false&serverTimezone=UTC

你可能感兴趣的:(javaWeb)