温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

MYSQL8安装中经常遇到的一些问题及汇总

发布时间:2021-09-16 10:45:30 来源:亿速云 阅读:351 作者:chen 栏目:大数据

本篇内容主要讲解“MYSQL8安装中经常遇到的一些问题及汇总”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MYSQL8安装中经常遇到的一些问题及汇总”吧!

1 在SQL_MODE的地方添加

ONLY_FULL_GROUP_BY, 这个一直是被其他数据库DBER诟病的地方,在之前MYSQL 的GROUP BY 经常因为不严谨,而被吐槽,添加这个参数后,MYSQL的GROUP BY 和其他数据库的 GROUP BY 的方式会一致,不严谨的写法将被禁止。(不严谨的写法就是,写GROUP BY 语句的 select 列和 group by 中的列不一致)。

2 以下配置就不要在MY.CNF中存在,因为MYSQL 8 的格式统一为barracuda

innodb_file_format = Barracuda

innodb_file_format_max = Barracuda

3 expire_logs_day 将在未来的版本中被消灭,取代他的是binlog_expire_logs_seconds=432000  来代替,这里可以尝试把天换算成秒

4  Undo table space 的设置不在设置中,MYSQL 会自动默认进行设置2 个undo 空间,如果还有问题,需要自己去创建undo table space

5 原来的密码插件,被MYSQL8.0 变为密码组件,首先在原来的my.cnf中药去掉如下设置

#disconnect_on_expired_password=disable

#default_password_lifetime=0

#validate_password_policy=LOW #STRONG

#validate-password=FORCE_PLUS_PERMANENT

以及在开始启动时加载的  validate_password.so

官方文档,中解释道 通过 yum 或 rpm方式安装的MYSQL 都包括了 component_validata_password 的组件。

如果是通过其他方式,(这里是通过percona 二进制方式安装的),在进入到MYSQL后直接键入

INSTALL COMPONENT 'file://component_validate_password';

MYSQL8安装中经常遇到的一些问题及汇总

MYSQL8安装中经常遇到的一些问题及汇总

validate_password.check_user_name 是对密码中是否包含用户名进行比对,默认是打开的,如果密码中包含用户的名字则密码生成会错误。

validate_password.mixed_case_count 是对密码中的用户名进行判断是否有大小写的设置,0 是不需要混合,1 是默认需要进行大小写混合

validate_password.policy= low  这是对密码的复杂度进行的要求,low 是要求密码的长度, MEDIUM 是要求大小写,数字和密码成都, STRONG 是除了上述的要求外,还要想字典文件中的内容。

最后MYSQL在MYSQL8 中加入了 connection-control plugin ,这个插件的主要作用在于对于原来没有对服务器进行连接管理的内容补充,意在对服务器不断的尝试性访问失败后,如何处理这些不断进行的连接。

可以在配置文件加入以下内容

connection-control=FORCE_PLUS_PERMANENT

connection-control-failed-login-attempts=FORCE_PLUS_PERMANENT

connection_control_failed_connections_threshold=4

connection_control_min_connection_delay=1500

并在此之前安装好插件

plugin-load-add=connection_control.so

并在MYSQL 中执行命令

INSTALL PLUGIN CONNECTION_CONTROL
 SONAME 'connection_control.so';
INSTALL PLUGIN CONNECTION_CONTROL_FAILED_LOGIN_ATTEMPTS

 SONAME 'connection_control.so';


在设置好后,通过

connection_control_failed_connections_threshold来继续判断客户端尝试多少次连接失败的情况下

开始进行超过连接后的连接超时时间

connection_control_min_connection_delay=1500 单位是毫秒


这有效的弥补了之前MYSQL 在这方面的缺陷,更加保证了连接的安全性和如何弥补攻击性的连接的处理方式


除此以外还有一些默认值的改变

1 max_allow_packet 从原来的 4MB 变为 64MB

2 table_open_cache 从原来的 2000 变为 4000

3 log_error_verbosity 从原来的notes 变为 warnings

4 innodb_flush_neighbors 从原来的 1 变为 0

5 innodb_max_dirty-pages_pct 从原来的 75% 到 90%

6 transaction-write-set-extraction 从原来的off变为 XXHASH64

7 Slave_rows_search_algorithms 从原来的 index_scan, table scan 变为 index_scan hash_scan

8 event_scheduler 从原来的 0 变为 1

到此,相信大家对“MYSQL8安装中经常遇到的一些问题及汇总”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI