MySQL5.x和8.0

  • 区别
  • 1. 性能:MySQL 8.0 的速度要比 MySQL 5.7 快 2 倍
    • MySQL 8.0 在以下方面带来了更好的性能:读/写工作负载、IO 密集型工作负载、以及高竞争("hot spot"热点竞争问题)工作负载
  • 2. NoSQL:MySQL 从 5.7 版本开始提供 NoSQL 存储功能,目前在 8.0 版本中这部分功能也得到了更大的改进
    • 该项功能消除了对独立的 NoSQL 文档数据库的需求,而 MySQL 文档存储也为 schema-less 模式的 JSON 文档提供了多文档事务支持和完整的 ACID 合规性
  • 3. 窗口函数(Window Functions):从 MySQL 8.0 开始,新增了一个叫窗口函数的概念,它可以用来实现若干新的查询方式
    • 窗口函数与 SUM()、COUNT() 这种集合函数类似,但它不会将多行查询结果合并为一行,而是将结果放回多行当中
    • 即窗口函数不需要 GROUP BY
  • 4. 隐藏索引:在 MySQL 8.0 中,索引可以被“隐藏”和“显示”
    • 当对索引进行隐藏时,它不会被查询优化器所使用
    • 我们可以使用这个特性用于性能调试,例如我们先隐藏一个索引,然后观察其对数据库的影响
    • 如果数据库性能有所下降,说明这个索引是有用的,然后将其“恢复显示”即可;
    • 如果数据库性能看不出变化,说明这个索引是多余的,可以考虑删掉
  • 5. 取消查询缓存:MySQL 8.0 出于性能和可维护性方面的考虑取消了查询缓存,通过使用索引、更好的查询计划优化、以及缓存结果集而不是整个查询
    • 这些方法更有效地提高了查询性能,同时避免了查询缓存可能引入的问题
  • 6. 降序索引:MySQL 8.0 为索引提供按降序方式进行排序的支持,在这种索引中的值也会按降序的方式进行排序
  • 7. 通用表达式(Common Table Expressions CTE):在复杂的查询中使用嵌入式表时,使用 CTE 使得查询语句更清晰
  • 8. UTF-8 编码:从 MySQL 8 开始,使用 utf8mb4 作为 MySQL 的默认字符集
  • 9. JSON:MySQL 8 大幅改进了对 JSON 的支持,添加了基于路径查询参数从 JSON 字段中抽取数据的 JSON_EXTRACT() 函数,以及用于将数据分别组合到 JSON 数组和对象中的 JSON_ARRAYAGG() 和 JSON_OBJECTAGG() 聚合函数
  • 10. 可靠性:InnoDB 现在支持表 DDL 的原子性,也就是 InnoDB 表上的 DDL 也可以实现事务完整性,要么失败回滚,要么成功提交,不至于出现 DDL 时部分成功的问题,此外还支持 crash-safe 特性,元数据存储在单个事务数据字典中
  • 11. 高可用性(High Availability):InnoDB 集群为您的数据库提供集成的原生 HA 解决方案
  • 12. 安全性:对 OpenSSL 的改进、新的默认身份验证、SQL 角色、密码强度、授权

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/227344.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微服务网关Gateway

springcloud官方提供的网关组件spring-cloud-starter-gateway,看pom.xml文件,引入了webflux做响应式编程,请求转发用到了netty的reactor模型,支持的请求数在1W~1.5W左右。hystrix停止维护后,官方推荐resilience4j做服务熔断,网关这里也能看到依赖。 对于网关提供的功能…

什么是CI/CD?如何在PHP项目中实施CI/CD?

CI/CD(持续集成/持续交付或持续部署)是一种软件开发和交付方法,它旨在通过自动化和持续集成来提高开发速度和交付质量。以下是CI/CD的基本概念和如何在PHP项目中实施它的一般步骤: 持续集成(Continuous Integration -…

Unity 使用AddTorque方法给刚体施加力矩详解

给刚体施加力,除了使用AddForce方法,我们还可以使用AddTorque方法。该方法是通过施加力矩给刚体以力。AddTorque方法从形式上跟AddForce差不多,它也有4个重载方法: 1、AddTorque(Vector3 torque);使用Vector3类型参数…

YOLO v8 目标检测识别翻栏

一、行人翻栏识别背景介绍 1.1跨越围栏是人类活动中一个普遍但需要引起警惕的行为。它不仅可能导致各种意外事故,甚至可能对个人的生命安全构成威胁。在交通领域,跨越围栏可能导致严重的交通事故,造成人员伤亡。在公共场所,如公园…

华为、新华三、锐捷常用命令总结

华为、新华三、锐捷常用命令总结 一、华为交换机基础配置命令二、H3C交换机的基本配置三、锐捷交换机基础命令配置 一、华为交换机基础配置命令 1、创建vlan&#xff1a; <Quidway> //用户视图&#xff0c;也就是在Quidway模式下运行命令。 <Quidway>system-view…

B+树和索引

B树概念 是一种平衡多路搜索树&#xff08;Balanced Multiway Search Tree&#xff09;&#xff0c;常用于数据库和文件系统的索引结构。相比于其他的树型数据结构&#xff0c;如二叉搜索树和B树&#xff0c;B树在大数据量下的性能表现更优秀。 B树的基本特性&#xff1a; 多…

Ansible如何处理play错误的?Ansible角色?

Ansible如何处理play错误的&#xff1a;Ansible审查每个任务的返回代码&#xff0c;以确定任务是否成功或失败。默认情况下&#xff0c;当一个任务失败时&#xff0c;Ansible会立即中止该主机上的其他操作&#xff0c;并跳过所有后续任务。 实际生产中&#xff0c;若希望即使任…

在Node.js中MongoDB查询分页的方法

本文主要介绍在Node.js中MongoDB查询分页的方法。 目录 Node.js中MongoDB查询分页使用原生的mongodb驱动程序查询分页使用Mongoose库进行查询分页注意项 Node.js中MongoDB查询分页 在Node.js中使用MongoDB进行查询分页&#xff0c;可以使用原生的mongodb驱动程序或者Mongoose库…

【web安全】密码爆破讲解,以及burp的爆破功能使用方法

前言 菜某总结&#xff0c;欢迎指正错误进行补充 密码暴力破解原理 暴力破解实际就是疯狂的输入密码进行尝试登录&#xff0c;针对有的人喜欢用一些个人信息当做密码&#xff0c;有的人喜欢用一些很简单的低强度密码&#xff0c;我们就可以针对性的生成一个字典&#xff0c;…

【Linux】文件系统、文件系统结构、虚拟文件系统

一、文件系统概述 1. 什么是文件系统&#xff1f;2. 文件系统&#xff08;文件管理系统的方法&#xff09;的种类有哪些&#xff1f;3. 什么是分区&#xff1f;4. 什么是文件系统目录结构&#xff1f;5. 什么虚拟文件系统Virtual File System &#xff1f;6. 虚拟文件系统有什…

【华为数据之道学习笔记】5-6非结构化数据入湖

1. 非结构化数据管理的范围 非结构化数据包括无格式的文本、各类格式的文档、图像、音频、视频等多样异构的格式文件。相较于结构化数据&#xff0c;非结构化数据更难以标准化和理解&#xff0c;因而非结构化数据的管理不仅包括文件本身&#xff0c;而且包括对文件的描述属性&a…

OpenAI开源超级对齐方法:用GPT-2,监督、微调GPT-4

12月15日&#xff0c;OpenAI在官网公布了最新研究论文和开源项目——如何用小模型监督大模型&#xff0c;实现更好的新型对齐方法。 目前&#xff0c;大模型的主流对齐方法是RLHF&#xff08;人类反馈强化学习&#xff09;。但随着大模型朝着多模态、AGI发展&#xff0c;神经元…

Julia调用Matlab, Python以及R的微分方程求解器

文章目录 从其他语言翻译来的求解器重新封装版本 SciML教程系列&#xff1a; Julia求解常微分方程解Lorentz方程求解简谐振动的微分方程求解单摆 从其他语言翻译来的求解器 对于熟悉MATLAB/Python/R的程序员&#xff0c;可先使用下表中的求解器&#xff0c;因为这些求解器是…

Spring Boot SOAP Web 服务端和客户端

一. 服务端 1. 技术栈 JDK 1.8&#xff0c;Eclipse&#xff0c;Maven – 开发环境SpringBoot – 基础应用程序框架wsdl4j – 为我们的服务发布 WSDLSOAP-UI – 用于测试我们的服务JAXB maven 插件 – 用于代码生成 2.创建 Spring Boot 项目 添加 Wsdl4j 依赖关系 编辑pom…

小程序分享图片(JAVA+小程序端)

第一次做小程序海报分享&#xff0c;感觉canvas还是有点难度的。 所以用了JAVA后端生成&#xff0c;JAVA用了 ImageCombiner 组件去开发&#xff0c;整体来说感觉还是便捷很多的。 <dependency><groupId>com.freewayso</groupId><artifactId>image-c…

cesium 自定义贴图,shadertoy移植教程。

1.前言 cesium中提供了一些高级的api&#xff0c;可以自己写一些shader来制作炫酷的效果。 ShaderToy 是一个可以在线编写、测试和分享图形渲染着色器的网站。它提供了一个图形化的编辑器&#xff0c;可以让用户编写基于 WebGL 的 GLSL 着色器代码&#xff0c;并实时预览渲染结…

006 Windows共享

一、共享要求 一般是局域网内使用 1、物理上处于统一局域网 同一公司的网络同一家庭的网络连接同一手机热点的主机 2、逻辑上处于同一局域网 直接可以ping对方主机&#xff08;能够直接访问到&#xff09; 二、共享权限 1、共享权限 一般设置为everyone完全控制 2、NTF…

基于3D-CGAN的跨模态MR脑肿瘤分割图像合成

3D CGAN BASED CROSS-MODALITY MR IMAGE SYNTHESIS FOR BRAIN TUMOR SEGMENTATION 基于3D-CGAN的跨模态MR脑肿瘤分割图像合成背景贡献实验方法Subject-specific local adaptive fusion&#xff08;针对特定主题的局部自适应融合&#xff09;Brain tumor segmentation model 损失…

K8s投射数据卷

目录 一.Secret 1.secret介绍 2.secret的类型 3.创建secret 4.使用secret 环境变量的形式 volume数据卷挂载 二ConfigMap 1.创建ConfigMap的方式 2.使用ConfigMap 2.1作为volume挂载使用 2.2.作为环境变量 三.Downward API 1.以环境变量的方式实现 2.Volume挂载 一.S…

深入解析 Spring 和 Spring Boot 的区别

目录 引言 1. 设计理念 1.1 Spring 框架的设计理念 1.2 Spring Boot 的设计理念 2. 项目配置 2.1 Spring 框架的项目配置 2.2 Spring Boot 的项目配置 3. 自动配置 3.1 Spring 框架的自动配置 3.2 Spring Boot 的自动配置 4. 微服务支持 4.1 Spring 框架的微服务支持…