MySQL 8.0 版本更新 要点 列表 (8.0-8.0.23)

开头还是介绍一下群,如果感兴趣 PolarDB ,MongoDB ,MySQL ,PostgreSQL ,Redis, Oceanbase, Sql Server 等有问题,有需求都可以加群群内有各大数据库行业大咖,可以解决你的问题。加群请联系 liuaustin3 ,(共 2370 人左右 1 + 2 + 3 + 4 +5 +6)新人分配到 6 群。


最近撰写 MySQL 的文章出现错误,实在抱歉

1 是犯了常识性的错误,主要知识未更新完全,对于 MySQL 的老观念还存在,新的一些特性并未梳理 2 未做详实的实验并验证某些论断

以此作为一个教训,后续对于任何数据库的新的概念要及时更新,并尽力在有精力的情况下,做相关的严谨的测试。最近会分几期梳理 MySQL 8.01-8.038在数据库版本更新中的一些核心更新的信息汇总,方便大家进行查询。信息从官方文档 中获得

https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-0.html

0aa4087725e3fd3ffc43063480e71f58.png


提示:由于更新的信息较多,此篇有未关注的一些信息具体详细完整的信息还请查询官方文档

8.0.0

版本更新功能网页连接/注释
支持配置信息命令修改后的固化https://dev.mysql.com/doc/refman/8.0/en/persisted-system-variables.html
数据目录及文件的存储方式更新数据文件和字典表不在分开存储
支持invisible索引https://dev.mysql.com/doc/refman/8.0/en/invisible-indexes.html
SQL Hint支持信息更新https://dev.mysql.com/doc/refman/8.0/en/optimizer-hints.html
SQL和union解析规则的变更例:SELECT 1 FOR UPDATE UNION SELECT 1 FOR UPDATE; 在8.0需要撰写为(SELECT 1 FOR UPDATE) UNION (SELECT 1 FOR UPDATE);

8.0.1

版本更新功能网页连接/注释
倒排索引的支持https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-1.html#mysqld-8-0-1-configuration
支持派生表table name功能原有语句SELECT * FROM (SELECT 1, 2, 3, 4) AS dt; 变为 SELECT * FROM (SELECT 1, 2, 3, 4) AS dt (a, b, c, d);
secure_file_priv值更改为NULL禁用导入和导出操作https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-1.html#mysqld-8-0-1-security

8.0.2

版本更新功能网页连接/注释
字符集中多字节可变长度排序得到改进属于(Bug #25750527, Bug #85546, WL #9554)
数据字典的变化,innodb不再使用自己数据库引擎的数据字典,而是使用mysql数据字典https://dev.mysql.com/doc/refman/8.0/en/data-dictionary.html
master_info_repository和relay_log_info_repository信息默认写入数据表早起版本这两个参数的数值默认写入到mysql下的文件中


8.0.3

版本更新功能网页连接/注释
MySQL支持原子数据定义语句https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-3.html#mysqld-8-0-3-atomic-ddl
SELECT /*+ SET_VAR(sort_buffer_size = 16M) */ name FROM people ORDER BY name;8.03支持Set_var单独指定变量属性的工作
INSERT /*+ SET_VAR(foreign_key_checks=OFF) */ INTO t2 VALUES(2);8.03支持Set_var单独指定变量属性的工作
max_allowed_packet系统变量默认值从4MB变更到64MBhttps://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-3.html
sql_log_bin 全局系统变量在8.03被取消,改为仅在session范围有效(WL #10922)
log_bin系统变量被改为默认开启要禁用二进制日志记录,您可以在启动时指定--skip-log-bin或--disable-log-bin选项。
增加innodb_dedicated_server设置选项开启后会自动设置innodb_buffer_pool_size,innodb_log_file_size,innodb_flush_methodhttps://dev.mysql.com/doc/refman/8.0/en/innodb-dedicated-server.html
innodb_flush_neighbors默认值从1更改为0(WL #9631)

8.0.4

版本更新功能网页连接/注释
原有的install plugin 改为 install componentINSTALL COMPONENT 'file://component_validate_password';
expire_logs_days 系统变量被弃用binlog_expire_logs_seconds作为唯一的binlog过期时间的设定https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-log.html#sysvar_binlog_expire_logs_seconds
default_authentication_plugin 默认插件已经从 mysql_native_password 改为 caching_sha2_password.https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-4.html

8.0.5 -8.0.10

版本更新功能网页连接/注释
版本无更新https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-5-through-10.html

8.0.11

版本更新功能网页连接/注释
提高innodb_buffer_pool的性能缓冲池初始化提供多线程功能(Bug #22963374, Bug #80784)
对于redo缓冲区的优化https://dev.mysql.com/doc/refman/8.0/en/optimizing-innodb-logging.html
大量的Bug Fixed在innodb 数据库引擎,复制,组复制等部分都有大量的bug 修复

8.0.12

版本更新功能网页连接/注释
支持explain 对insert ,update,delete等语句进行解析https://dev.mysql.com/doc/refman/8.0/en/explain-extended.html
支持MySQL接受的SQL语句重写的功能插件https://dev.mysql.com/doc/refman/8.0/en/rewriter-query-rewrite-plugin.html
大量的bug fixed针对innodb数据库引擎,分区,数据复制

8.0.13

版本更新功能网页连接/注释
支持在blob,text,Geometry,Json中提供默认值设施功能(WL #9418)
SELECT @var, @var:=@var+1 赋予变量的方式有风险,后续的版本将兼容,此功能后续会清除(WL #12131)

8.0.14

版本更新功能网页连接/注释
为数据库更改密码,应用当时不用停机的功能,https://dev.mysql.com/doc/refman/8.0/en/password-management.html#dual-passwords
慢查询SQL开始时间信息的加入https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_log_slow_extra
events_statements_current,events_statements_history,events_statements_history_long 三个PS view 添加 statement_id并自行维护递增(WL#12165)
windows 版本MySQL 有大量的更新
大量的innodb 数据库引擎,replication 数据复制的bug fixed

8.0.15

版本更新功能网页连接/注释
修复在检查点操作中持续进行数据字典的操作,有丢失数据的风险Bug #29120297

8.0.16

版本更新功能网页连接/注释
提供了skip scan Range Access 方法https://dev.mysql.com/doc/refman/8.0/en/range-optimization.html#range-access-skip-scan

8.0.17

版本更新功能网页连接/注释
提供utf8mb4_0900_bin 排序规则相较utf8mb4_bin功能排序的速度有提升https://dev.mysql.com/doc/refman/8.0/en/charset-unicode-sets.html
innodb 支持多值数组索引CREATE INDEX zips ON t1( (CAST(data->'$.zipcode' AS UNSIGNED ARRAY)) )
大量innodb数据库引擎的bug fixed

8.0.18

版本更新功能网页连接/注释
支持zstd算法的客户端传输数据到Server端数据的压缩(WL #12039, WL #12475)
支持hash join 需为等值连接SELECT * FROM t1 JOIN t2 ON t1.c1 = t2.c1;
大量innodb 数据库引擎,复制,组复制的bug fixed

8.0.19

版本更新功能网页连接/注释
支持MySQL账号在输入错误密码后的锁定时间https://dev.mysql.com/doc/refman/8.0/en/password-management.html
optimizer_switch中的hash_join优化器开关无效https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_optimizer_switch

8.0.20

版本更新功能网页连接/注释
max_length_for_sort_data 系统变量弃用(WL #13600)
INSERT ... ON DUPLICATE KEY UPDATE 语句中在进行列值的计算中需要带有表的别名INSERT INTO t1 (a,b,c) VALUES (1,2,3),(4,5,6) AS new ON DUPLICATE KEY UPDATE c = new.a+new.b;
双写缓冲区的存储区域已从系统表空间移动到双写文件将双写缓冲区存储区域移出系统表空间可减少写容量,增加吞吐量,并提供双写缓冲区页面放置的灵活性
添加如下系统变量innodb_doublewrite_dir,innodb_doublewrite_files,innodb_doublewrite_pages,innodb_doublewrite_batch_sizehttps://dev.mysql.com/doc/refman/8.0/en/innodb-doublewrite-buffer.html

8.0.21 - 8.0.22

版本更新功能网页连接/注释
group_replication_ip_whitelistsystem系统变量被弃用group_replication_ip_allowlist替代原有的变量被使用(WL #14175)
START SLAVE,STOP SLAVE,SHOWSLAVE STATUS,SHOW SLAVE HOSTS和RESET SLAVE 命令被弃用新命令START REPLICA, STOP REPLICA, SHOW REPLICA STATUS, SHOW REPLICAS, RESET REPLICA (WL #14171)
在optimizer_switch system 变量添加prefer_ordering_index,控制在order by group by 子句中是否使用排序索引优化查询部分情况下打开prefer_ordering_index 会产生查询使用错误的索引导致查询的性能降低
在8.018的基础上增加了查询中的强制类型转换(WL #13456)
原有在组复制中需要设置Binlog_checksum = none,自8.021版本不需要进行此项设置(WL #9038)
可以开启或关闭重做日志redo log,INNODB_REDO_LOG_ENABLEhttps://dev.mysql.com/doc/refman/8.0/en/innodb-redo-log.html#innodb-disable-redo-logging
锁系统互斥量(lock_sys->mutex)被分片锁取代(WL #10314)
8.0.21有对replication group有诸多的改善
8.022添加对符合条件的查询实现了派生条件下推,即某些情况下可将外层条件下推到派生表https://dev.mysql.com/doc/refman/8.0/en/switchable-optimizations.html#optflag_derived-condition-pushdown

8.0.23

版本更新功能网页连接/注释
change master 语句被弃用,替换为change replicaiton sourcehttps://dev.mysql.com/doc/refman/8.0/en/change-replication-source-to.html
添加了autoextend_size 增加表空间变满自动扩展大小的设置https://dev.mysql.com/doc/refman/8.0/en/innodb-tablespace-autoextend-size.html

8.0.24-8.0.37 待.....


置顶文章:

生成式 AI 能否取代 DBA  结尾有炸弹

临时工说:数据库厂商官方媒体干不过 “破落户” 这究竟是为哪般?

临时工说:DBA转售前,练习怎么写数据库客户案例

PolarDB VS PostgreSQL  "云上"性能与成本评测 -- PolarDB 比PostgreSQL 好?

PostgreSQL 版本升级到PG14后,pgbouncer 无法使用怎么回事?

临时工访谈:NoSQL 大有前景,MongoDB DBA 被裁员后谋求新职位

临时工访谈:问金融软件开发总监  哪些业务不用传统数据库

PolarDB for PostgreSQL  有意思吗?有意思呀

PolarDB  Serverless POC测试中有没有坑与发现的疑问

PolarDB 数据库架构 测试 serverless 后的 三字真言  稳定,灵活,省钱(的用对地方)

往期热门文章:

临时工说:如果DBA大龄被裁员了怎么办?

临时工访谈:DBA 考PMP 有用没有用,访谈专业的项目管理人士的意见

临时工说:炮轰阿里云MongoDB司令部 低质高价技术差 你是要疯!!!!

MySQL 的SQL引擎很差吗?由一个同学提出问题引出的实验

临时工访谈:从国产数据库 到 普罗大众的产品 !与在美国创业软件公司老板对话

PostgreSQL 如何通过工具来分析PG 内存泄露

MySQL 的SQL引擎很差吗?由一个同学提出问题引出的实验

临时工访谈:我很普通,但我也有生存的权利,大龄程序员 求职贴

PolarDB  Serverless POC测试中有没有坑与发现的疑问

临时工访谈:PolarDB  Serverless  发现“大”问题了  之 灭妖记 续集

临时工访谈:庙小妖风大-PolarDB 组团镇妖 之 他们是第一

临时工说: 快速识别 “海洋贝壳类” 数据库方法速递

临时工说:国产 数据库 销售人员  图鉴

MongoDB 不是软柿子,想替换就替换

PostgreSQL PG_DUMP 工作失败了怎么回事及如何处理

MySQL 八怪(高老师)现场解决问题实录

PostgreSQL 为什么也不建议 RR隔离级别,MySQL别笑

临时工访谈:OceanBase上海开大会,我们四个开小会 OB 国产数据库破局者

MONGODB  ---- Austindatabases  历年文章合集

MYSQL  --Austindatabases 历年文章合集

POSTGRESQL --Austindatabaes 历年文章整理

POLARDB  -- Ausitndatabases 历年的文章集合

PostgreSQL  查询语句开发写不好是必然,不是PG的锅

SQL SERVER 如何实现UNDO REDO  和PostgreSQL 有近亲关系吗

MongoDB 2023纽约 MongoDB 大会 -- 我们怎么做的新一代引擎 SBE Mongodb 7.0双擎力量(译)

Austindatabases 公众号,主要围绕数据库技术(PostgreSQL, MySQL, Mongodb, Redis, SqlServer,PolarDB, Oceanbase 等)和职业发展,国外数据库大会音译,国外大型IT信息类网站文章翻译,等,希望能和您共同发展。

54a84a0564ca4d04202ab80d7699b020.png

已发布文章1161篇

b17d0b539ee2a09bdaa911b329958c47.png

  • 14
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值