1.我是在用springboot+mybatis的时候,连接数据库进行测试web简单应用时出现的坑:
①首先是遇到MySQL8.0的密码问题,密码要包含大写字母,小写字母,数字,特殊符号。我原来是#号开头的密码,然后在springboot的配置文件yml中,始终显示灰色,后来发现原来#号相当于注释了,本来想转义的,不好用,一直报错,所以改密码是当务之急。好几种策略都改不了,最后找到合适的了,记录一下mysql8.0改密的方式:
1、use mysql;
2、alter user 'root'@'localhost' identified with mysql_native_password by '新密码';
3、flush privileges;
这是在Navicat中的命令行下输入即可,位置如下:
文章图片
。
②第二个mysql运行报The server time zone value '?D1ú±ê×?ê±??' is unrecognized or represents more than one time zone的解决方法:
话不多说,从错误即可知道是时区的错误,因此只要将时区设置为你当前系统时区即可,
因此使用root用户登录mysql,按照如下图所示操作即可。
文章图片
我电脑的系统为北京时区,因此在系统中设置后,再连接数据库运行,一切OK!
【mysql8.0遇到的问题总结及解决方法】code(注意两个问题,一个是单引号;一个是分号不能丢):
show variables like '%time_zone%';
set global time_zone='+8:00';
③第三个问题:Caused by: java.sql.SQLException: Unknown system variable 'tx_read_only'
异常产生原因:
1.JDBC驱动版本过低
2.数据库版本过低
于是,我将驱动换成最高版的,引入pom文件依赖后,问题解决。
现在,为了以后少踩坑,在电脑上装了俩本地数据库,一个MySQL8.0(学习用),一个是MySQL5.5(跑项目用)。
MySQL安装服务的步骤:https://www.2cto.com/database/201702/597826.html