Centos中正确安装MySQL8.x版本
MySQL8.x版本相比于MySQL5.7x版本做了较大的升级,旧版本以5.7为主,新版本说的主要就是8.x版本。
遇到的一些问题:正常的配置MySQL8.0的repo仓库然后使用yum进行下载会显示没有正确通过密钥验证(验证下载的版本与官方版本一致-GnuPG 验证包完整性),无法安装。
新版本8.0与旧版本5.7在使用上主要有以下区别:
-
8.0版本在性能方面做了很大的优化,在主从复制中可以采用并行复制优化,减少从库复制的延迟,保持良好的数据一致性。
-
密码的安全性方面:5.7默认采用的是密码认证mysql_navite_password,这种密码加密的方式较为宽松,如(123456也可以成为密码);8.0采用的密码认证插件是caching_sha2_password,使用了密码哈希策略,密码设置要求更加严格(大小写、数字、特殊字符)。
caching_sha2_password需要使用ssl连接,需要客户端做ssl配置,所以一般我们不会使用
但是在一些python连接MySQL的框架中,有时候会出现账号密码正确且服务端口也是正常开放,但是还是连接不上MySQL,最可能的原因就是采用了高版本的MySQL,密码认证插件使用的是caching_sha2_password,比如:mysqlclient就不支持这种认证,故需要在MySQL中对账号密码认证策略进行修改。
ALTER USER 'test'@'localhost' IDENTIFIED WITH mysql_native_password BY 'testpassword'
FLUSH PRIVILEGES;
- 支持更多的新函数和新功能:如支持采用正则对字段数据进行查找;支持更好的对json格式数据进行处理(JSON_TABLE),这个在grafana中精确查找比较友好;支持窗口函数(分组之后支持对原始数据排序)
初始安装8.0版本MySQL步骤(官方文档安装)
详细查阅了官方文档,详细避坑
清除系统环境
# 1. 将系统中残留的MySQL或者mariadb相关的包进行删除
rpm -qa|egrep "mysql|mariadb"
# 2. 强制删除查找到的包
rpm -e --nodeps [package_name]
下载rpm包
# 去官方文档找到yum安装的对应自己操作系统版本的rpm软件包
# 官方网址:https://dev.mysql.com/downloads/repo/yum/
yum install -y mysql84-community-release-el7-1.noarch.rpm
# 如果提示找不到这个包就直接使用wget下载然后yum安装
wget https://dev.mysql.com/get/mysql84-community-release-el7-1.noarch.rpm
yum install -y mysql84-community-release-el7-1.noarch

最低0.47元/天 解锁文章
9482

被折叠的 条评论
为什么被折叠?



