安装mysql8.0.11版本,并使用mybatis进行连接mysql遇到的问题

安装mysql8.0.11版本,并使用mybatis进行连接mysql遇到的问题

之前Centos远程服务器使用mysql的版本是5.1.32,今天重新安装了mysql的最先版本8.0.11,安装过程出现了一些问题。

 

1、第一个错误:1251异常。

(1)安装完mysql8.0.11之后,使用Navicat远程连接Mysql报1251错误,但是ip,端口,账号密码都是正确的。而且在远程服务器上,直接使用shell命令,用账号密码登陆却可以登陆。

安装mysql8.0.11版本,并使用mybatis进行连接mysql遇到的问题

(2)出现这个原因是mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password。

(3)解决问题方法有两种,一种是升级navicat驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password.。

现在介绍的是第二种方法的步骤:

mysql -uroot -p   #进入服务器中,执行这条命令,再输入密码,即可进入mysql数据库
mysql>use mysql;
mysql>ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密规则 
mysql>ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码 
mysql>FLUSH PRIVILEGES; #刷新权限

重新连接,问题就解决了。
 

 

2、第二个错误:使用mybatis连接mysql,抛出异常错误。

(1)异常错误:Loading class `com.mysql.jdbc.Driver’. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver’. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.

(2)错误原因:数据库连接驱动的方式不适用。

(3)解决方法:使用最新的mysql连接驱动,即将`com.mysql.jdbc.Driver’改为`com.mysql.cj.jdbc.Driver’

以前版本使用的连接驱动:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://xxx.xx.xx.xxx:3306/db?characterEncoding=utf-8
jdbc.username=root
jdbc.password=admin

解决后的数据库连接驱动:

jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://xxx.xx.xx.xxx:3306/db?characterEncoding=utf-8
jdbc.username=root
jdbc.password=admin

 

3、第三个警告:Establishing SSL connection without server’s identity verification is not recommended

(1)警告信息:Establishing SSL connection without server’s identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn’t set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to ‘false’. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.

(2)警告原因:这是因为Mysql在高版本需要指明是否进行SSL连接

(3)解决方法:虽然不修改也不影响使用,但是如果想要不出现警告,可以在mysql连接字符串url中加入useSSL=false或者useSSL=true即可。如下

jdbc.url=jdbc:mysql://xxx.xxx.xx.xxx:3306/db?characterEncoding=utf-8&useSSL=false

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114739.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java @apimodelproperty(apiignore)

    @ApiModel使用场景:在实体类上边使用,标记类时swagger的解析类。概述:提供有关swagger模型的其它信息,类将在操作中用作类型时自动内省。用法:@ApiModelProperty使用场景:使用在被@ApiModel注解的模型类的属性上。表示对model属性的说明或者数据操作更改。概述:添加和操作模型属性的数据。用法:…

    2022年4月14日
    295
  • myeclipse添加svn插件「建议收藏」

    myeclipse添加svn插件「建议收藏」转载:http://www.cnblogs.com/xdp-gacl/p/3497016.htmlMyEclipse使用总结——MyEclipse10安装SVN插件一、下载SVN插件subclipse下载地址:http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240在打开的网站中

    2022年7月20日
    15
  • Linux 应用编程之stat 函数

    Linux 应用编程之stat 函数#include<sys/types.h>#include<sys/stat.h>#include<unistd.h>intstat(constchar*pathname,structstat*buf);pathname:用于指定一个需要查看属性的文件路径。buf:structstat类型指针,用于指向一个structstat结构体变量。调用stat函数的时候需要传入一个structstat变量的指针,获取到的文件..

    2025年7月25日
    2
  • 二分法matlab编程代码及注释(MATLAB二分法求方程的近似解)

    matlab二分法求解实例关注:95答案:2mip版解决时间2021-01-2801:44提问者人潮拥挤你不在2021-01-2718:57求函数f=x^3+2*x^2+x-5(-2,2)为区间起点和终点,10^-4为精度>>a=-2;b=2;x=a:b;f=@(x)x^3+2*x^2+x-5;c=(a+b)./2;whileabs(b-a)>1e-6i…

    2022年4月11日
    46
  • centOS yum命令详解

    centOS yum命令详解一 yum 介绍 Yum 全称为 YellowdogUpd Modified 是一个在 Fedora 和 RedHat 以及 CentOS 中的 Shell 前端软件包管理器 基于 RPM 包管理 能够从指定的服务器自动下载 RPM 包并且安装 可以自动处理依赖性关系 并且一次安装所有依赖的软件包 无须繁琐地一次次下载 安装 yum 提供了查找 安装 删除某一个 一组甚至全部软件包的命令 而且命令简洁而又好记

    2025年8月31日
    3
  • phpstorm Mac 激活码(注册激活)

    (phpstorm Mac 激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~M…

    2022年3月20日
    291

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号