【MySQL】MySQL8.0新特性整理

devtools/2024/11/28 20:33:09/

MySQL 8.0 引入了许多新特性和改进,旨在提升性能、安全性和易用性。以下是一些主要的新特性:

1. 默认字符集和排序规则

  • 默认字符集:MySQL 8.0 的默认字符集从 latin1 更改为 utf8mb4,支持更多的字符和表情符号。
  • 排序规则:默认排序规则从 utf8_general_ci 更改为 utf8mb4_0900_ai_ci,提高了排序的准确性和性能。

2. 窗口函数(Window Functions)

  • 窗口函数:MySQL 8.0 引入了窗口函数,如 ROW_NUMBER(), RANK(), DENSE_RANK(), LEAD(), LAG() 等,使得复杂的查询变得更加简单和高效。

3. 不可见索引(Invisible Indexes)

  • 不可见索引:可以通过 ALTER TABLE ... ALTER INDEX ... INVISIBLE 使索引对查询优化器不可见,用于性能调试和优化。

4. 降序索引(Descending Indexes)

  • 降序索引:支持在创建索引时指定降序排列,如 INDEX idx (col1 DESC)

5. 持久化变量(Persisted Variables)

  • 持久化变量:使用 SET PERSIST 命令可以将系统变量持久化到配置文件中,重启后仍然有效。

6. 资源组(Resource Groups)

  • 资源组:可以为不同的线程分配不同的 CPU 资源,提高资源管理和性能优化。

7. 数据库粒度只读(Database-Level Read-Only)

  • 数据库粒度只读:可以通过 ALTER DATABASE ... READ ONLY = 1 设置数据库级别的只读模式。

8. 克隆插件(Clone Plugin)

  • 克隆插件:支持从本地或远程克隆数据,简化了数据备份和恢复的过程。

9. 快速加列(Instant Add Column)

  • 快速加列:支持在线快速添加列,只需修改元数据,大大减少了大表加列所需的时间。

10. 隐藏主键(Hidden Primary Key)

  • 隐藏主键:可以通过 sql_generate_invisible_primary_key 参数为没有显式设置主键的表创建一个隐式的主键。

11. 优化的全文搜索(Improved Full-Text Search)

  • 全文搜索:支持 n-gram 全文解析器,提高了全文搜索的灵活性和性能。

12. 通用表表达式(Common Table Expressions, CTE)

  • CTE:支持递归和非递归的 CTE,使得复杂的查询更加清晰和易于管理。

13. 优化的 DDL 操作(Optimized DDL Operations)

  • DDL 操作:支持原子化的 DDL 操作,确保了数据的一致性和完整性。

14. 增强的安全性(Enhanced Security)

  • 角色管理:引入了角色管理功能,简化了权限管理。
  • 密码策略:支持更严格的密码策略,增强了安全性。

15. 性能增强(Performance Enhancements)

  • 并行 DDL:支持并行 DDL 操作,提高了索引创建和删除的速度。
  • 双写缓冲区改进:改进了双写缓冲区(doublewrite buffer),提高了性能和可靠性。

16. 其他改进

  • binlog 事务压缩:支持使用 zstd 算法压缩 binlog 事务,减少了磁盘空间占用。
  • 分区表的改进:支持更多的分区类型和优化的分区管理。
  • GIS 增强:支持地理和空间参考系统(SRS),增强了 GIS 功能。

http://www.ppmy.cn/devtools/137751.html

相关文章

计算机网络的功能

目录 信息交换 资源共享 分布式处理 可靠性增强 集中管理 信息交换 计算机网络最基本的功能之一是允许不同设备之间的数据通信。这包括电子邮件的发送和接收、即时消息的传递、文件传输等。通过网络,用户可以轻松地与全球各地的其他人进行沟通和协作。 信息交…

【贪心算法第二弹——2208.将数组和减半的最小操作数】

1.题目解析 题目来源 2208.将数组和减半的最小操作数——力扣 测试用例 2.算法原理(贪心策略) 3.实战代码 class Solution { public:int halveArray(vector<int>& nums) {priority_queue<double> hash;double sum 0.0;for(auto e : nums){hash.push(e);sum …

PostgreSQL 三种关库模式

PostgreSQL 三种关库模式 基础信息 OS版本&#xff1a;Red Hat Enterprise Linux Server release 7.9 (Maipo) DB版本&#xff1a;16.2 pg软件目录&#xff1a;/home/pg16/soft pg数据目录&#xff1a;/home/pg16/data 端口&#xff1a;5777PostgreSQL 提供了三种关库模式&…

js实现高斯-约旦消元法求解Homography矩阵

最小二乘法来求解矩阵 // 计算Homography矩阵 function calculateHomography(srcPoints, dstPoints) {if (srcPoints.length ! dstPoints.length || srcPoints.length < 4) {throw new Error(需要至少四个点进行计算);}// 设置矩阵方程 Ax blet A [];let b [];// 构建方…

无人机+无人车+机器狗+自组网:城市一空地体化指挥系统技术详解

无人机、无人车、机器狗与自组网技术的结合&#xff0c;为城市空地一体化指挥系统带来了革命性的突破。以下是对这一技术的详细解析&#xff1a; 一、系统架构与关键技术 1. 系统架构 控制中心&#xff1a;负责整体任务的规划、调度与监控&#xff0c;通过远程指令控制各个无…

Llmcad: Fast and scalable on-device large language model inference

题目&#xff1a;Llmcad: Fast and scalable on-device large language model inference 发表于2023.09 链接&#xff1a;https://arxiv.org/pdf/2309.04255 声称是第一篇speculative decoding边缘设备的论文&#xff08;不一定是绝对的第一篇&#xff09;&#xff0c;不开源…

部署自动清理任务解决ORA-00257: archiver error. Connect internal only, until freed

使用oracle数据库的时候&#xff0c;我们一般都会开启归档&#xff0c;确保数据库的日志连续和和数据安全。但随着数据库的运行&#xff0c;归档文件会越来越多&#xff0c;最终撑满磁盘空间&#xff0c;数据库无法继续归档&#xff0c;出现“ORA-00257: archiver error. Conne…

Web day02 Js Vue Ajax

目录 1.javascript: 1.js的引入方式&#xff1a; 2.js变量 & 数据类型 & 输出语句&#xff1a; 模板字符串&#xff1a; 3.函数 & 自定义对象&#xff1a; 4. json 字符串 & DOM操作&#xff1a; 5. js事件监听&#xff1a; 6.js的模块化导入或者导出&a…