谁在跟我说用mysql8.0,小心我的40米大刀

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 谁在跟我说用mysql8.0,小心我的40米大刀

最近由于笔者入职,公司也刚好给我们陪了新电脑,新电脑到的第一件事是啥,相信大家都知道,对于我们程序员,首要的事,肯定是先配置我们相关的编程环境,于是笔者花了一晚上的时间将MySQL,Tomcat,Maven,jdk,git,redis等环境配置好了,然后第二天由于公司的项目是运用的SpringSecurity权限管理技术,之前笔者学习的权限管理框架主要是shiro,这方面并没有接触过,所以只能硬着头皮来啃了。在B站找了相关视频来进行学习,但是就在与数据库交互进行身份验证的过程中,出了一个bug,自此,笔者陷入了深深的自闭之中。


1.首先

笔者想到的第一个问题是不是数据库连接出现了差错,所以我去检查了数据库的相关配置文件,发现的确有问题,因为笔者安装的是mysql8.0.20的版本所以,数据库连接的jar出现了变更,由之前的com.mysql.jdbc.Driver变成了现在的com.mysql.cj.jdbc.Driver这是笔者找的第一个错误


2.其次

由于Springsecurity是通过自带的类UserDetailsService来实现身份认证的,所以我们就必须要将我们自身的服务即UserService通过继承UserDetailsService并实现其中的类来实现通过我们自身的数据来进行身份验证,于是就开始实现。

20200707124039454.png

可以看到函数的返回值是UserDetails,所以我们函数的返回类型必须要是该类型,这里笔者最后全是return null,必然是不行的。


3.接着

因为我先实现的是简单的身份验证,还没有考虑到密码要进行加密的处理,而springsecurity本身默认就是进行加密处理,所以显然这里我们就算进行认证也是必定认证不了的,所以我们必须先将加密设置给注销掉,所以就必须要添加这行代码,添加之后Springsecurity就是将我们的密码进行明文比较了。

20200707124437399.png

在笔者检查出上述所有的错误之后本来以为


20200707124558923.png


小鬼这下你跑不脱了吧,还不快快现行

结果歇逼了,又歇逼了,界面就一直停在登录界面,打开谷歌的检查界面发现


20200707124819575.png


返回的请求一直是停在我设置的身份验证失败的页面,之后笔者想会不会还是数据库的数据没读出来啊,于是我就通过打断点的进行来查看我输入的数据以及从数据库中读出来的数据是不是一样的,接下来就是见证奇迹的时刻;


20200707125038283.png

20200707125055954.png

两者的数据一模一样,这下彻底崩了,数据一模一样,但就是认证不过去,接下来,笔者从pom.xml文件开始一层一层的检查,发现根本一点问题都没有,关键是本身控制台也不报错,就连问题是啥也不知道,就知道只是没验证过去。搞了一天,实在不行,去问了公司的一个大佬,大佬说他也是第一次使用Springsecurity,也不太清楚,于是笔者就感觉更崩了,这可咋整啊,于是半天又过去了。


20200707125135182.png

最后笔者抱着试一试的态度,想了想反正一定是数据的问题,实在不行就重装了MySQL,但是既然选择重装,就肯定不能再装MySQL8.0.20了,否则肯定问题还是一样的呀,所以笔者选择了安装自己的第一次-------mysql5.7,当笔者安装完之后重新启动项目的时候,发现我靠,这玩意儿终于生出来了。


20200707125943265.png


终于跳出来了,我搞了一天这玩意儿终于出来了。

以下仅代表个人观点

最新的并不代表是最好用的,经过时间的考验的才是真的棒的。

之前用mysql8.0的时候就遇到过好多次问题,但是之后基本都能解决,但是这一次是真的难顶,游戏体验是真的差。最后只能选择重装mysql环境来解决,如果有大佬知道解决方案的,也希望能在评论去提出来。最后笔者自己的体验就是MySQL5.7天下第一



相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
23天前
|
SQL 关系型数据库 MySQL
MySQL 01 康师傅
MySQL 01 康师傅
6 0
|
23天前
|
SQL 关系型数据库 MySQL
MySQL决战:MySQL数据导入导出
MySQL决战:MySQL数据导入导出
|
关系型数据库 MySQL
MySql 197.上升的温度
MySql 197.上升的温度
35 0
MySql 197.上升的温度
|
存储 SQL 缓存
【MySQL我可以讲一个小时】
【MySQL我可以讲一个小时】
124 0
【MySQL我可以讲一个小时】
|
存储 SQL JavaScript
MySQL最大建议行数2000w, 靠谱吗?
MySQL最大建议行数2000w, 靠谱吗?
MySQL最大建议行数2000w, 靠谱吗?
|
SQL 存储 缓存
一小时让你彻底理解 MySQL
一小时让你彻底理解 MySQL 在写本文章开始之前我给大家说下,根据个人学历理解记录的笔记,如果有什么问题可以关注、联系我们一起讨论。本人还是建议大家多多学习体系的技术。博客不会讲解太细。
114 0
一小时让你彻底理解 MySQL
|
SQL 存储 缓存
《MySQL》系列 - 小胖问我:MySQL 日志到底有啥用?菜!
《MySQL》系列 - 小胖问我:MySQL 日志到底有啥用?菜!
《MySQL》系列 - 小胖问我:MySQL 日志到底有啥用?菜!
|
SQL 关系型数据库 MySQL
|
SQL 关系型数据库 MySQL
|
SQL 关系型数据库 MySQL

热门文章

最新文章