返回顶部
首页 > 资讯 > 数据库 >Mysql8和mysql5.7的区别是什么
  • 404
分享到

Mysql8和mysql5.7的区别是什么

2023-06-29 11:06:42 404人浏览 泡泡鱼
摘要

本篇内容介绍了“Mysql8和Mysql5.7的区别是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.NoSql存储mysql从5.7

本篇内容介绍了“Mysql8和Mysql5.7的区别是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

1.NoSql存储

mysql从5.7 版本提供了NoSQL的存储功能,在8.0中这部分得到一些修改,不过这个在实际中用的极少

Mysql8和mysql5.7的区别是什么

2.隐藏索引

隐藏索引的特性对于性能调试非常有用,在8.0 中,索引可以被隐藏和显示,当一个索引隐藏时,他不会被查询优化器所使用

Mysql8和mysql5.7的区别是什么

也就是说可以隐藏一个索引,然后观察对数据库的影响.如果性能下降,就说明这个索引是有效的,于是将其”恢复显示”即可;如果数据库性能看不出变化,说明这个索引是多于的,可以删掉了

隐藏一个索引的语法

ALTER TABLE t ALTER INDEX i INVISIBLE;

恢复显示该索引的语法是:

ALTER TABLE t ALTER INDEX i VISIBLE;

当一个索引被隐藏时,我们可以从show index命令的输出汇总看出,该索引visible属性值为No

**注意:**当索引被隐藏时,他的内容仍然是和正常索引一样实时更新的,这个特性本身是专门为了优化调试而使用的,如果你长期隐藏一个索引,那还不如干掉,因为索引的存在会影响数据的插入\更新和删除功能

3.设置持久化

Mysql 的设置可以在运行时通过 SET GLOBAL 命令来更改,但是这种更改只会临时生效,到下次启动时数据库又会从配置文件中读取。 MySQL 8 新增了 SET PERSIST 命令,例如:

SET PERSIST max_connections = 500;

MySQL 会将该命令的配置保存到数据目录下的 mysqld-auto.cnf 文件中,下次启动时会读取该文件,用其中的配置来覆盖缺省的配置文件。

4.UTF-8 编码

从 MySQL 8 开始,数据库的缺省编码将改为 utf8mb4,这个编码包含了所有 emoji 字符。多少年来我们使用 MySQL 都要在编码方面小心翼翼,生怕忘了将缺省的 latin 改掉而出现乱码问题。从此以后就不用担心了。

5.通用表表达式(Common Table Expressions)

复杂的查询会使用嵌入式表,例如:

SELECT t1.*, t2.* FROM (SELECT col1 FROM table1) t1, (SELECT col2 FROM table2) t2;

而有了 CTE,我们可以这样写:

WITH    t1 AS (SELECT col1 FROM table1),    t2 AS (SELECT col2 FROM table2)SELECT t1.*, t2.* FROM t1, t2;

这样看上去层次和区域都更加分明,改起来也更清晰的知道要改哪一部分。 这个特性在很多报表场景是很有用的,也是mysql优化的一个很重要特性。

235窗口函数(Window Functions) MySQL 被吐槽最多的特性之一就是缺少 rank() 函数,当需要在查询当中实现排名时,必须手写 @ 变量。但是从 8.0 开始,MySQL 新增了一个叫窗口函数的概念,它可以用来实现若干新的查询方式。 窗口函数有点像是 SUM()COUNT() 那样的集合函数,但它并不会将多行查询结果合并为一行,而是将结果放回多行当中。也就是说,窗口函数是不需要 GROUP BY 的。

假设我们有一张 “班级学生人数” 表:

如果要对班级人数从小到大进行排名,可以这样利用窗口函数:

说明:在这里创建了名为 w 的 window,规定它对 stu_count 字段进行排序,然后在 select 子句中对 w 执行 rank() 方法,将结果输出为 rank 字段。 这个特性也是oracle11g有的一个新特性,在优化也是起着很重要的作用。

“Mysql8和mysql5.7的区别是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

您可能感兴趣的文档:

--结束END--

本文标题: Mysql8和mysql5.7的区别是什么

本文链接: https://lsjlt.com/news/324302.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Mysql8和mysql5.7的区别是什么
    本篇内容介绍了“Mysql8和mysql5.7的区别是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.NoSql存储Mysql从5.7...
    99+
    2023-06-29
  • Mysql8和mysql5.7有什么区别
    小编给大家分享一下Mysql8和mysql5.7有什么区别,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!1. NoSql存储Mysql从5.7 版本提供了NoSQL的存储功能,在8.0中这...
    99+
    2024-04-02
  • mysql5.7和mysql8有什么区别
    这篇文章将为大家详细讲解有关mysql5.7和mysql8有什么区别,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、隐藏索引的特性对性能调试非常有用。在8.0中,当索引被隐藏时,它不会被查询优化器使用。...
    99+
    2023-06-20
  • 浅谈Mysql8和mysql5.7的区别
    目录1.NoSql存储2.隐藏索引3.设置持久化4.UTF-8编码5.通用表表达式(CommonTableExpressions)1.NoSql存储 Mysql从5.7 版本提供了N...
    99+
    2024-04-02
  • MySQL5.7和MySQL8.0的区别是什么
    MySQL5.7和MySQL8.0的区别是什么  1.MySQL5.7和MySQL8的区别? MySQL 5.7和MySQL 8.0之间有以下几个主要区别: 版本功能区别:MySQL 5.7版本已经是一个非常稳定的成熟的版本,主要是针对5....
    99+
    2023-09-01
    mysql 数据库 服务器
  • 浅谈MySQL8和MySQL5.7在自增计数上的区别
    目录Auto-Incrementmysql 5.7 的自增MySQL 8 的自增持久化示例对比MySQL 8 的解决方案总结Auto-Increment 自增(Auto-Increment)计数功能可以为主键列生成唯一值...
    99+
    2023-10-09
    MySQL8自增计数 MySQL5.7自增计数
  • mysql8.0和mysql5.7的有什么区别
    这篇文章主要介绍了mysql8.0和mysql5.7的有什么区别,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。区别:mysql8.0的索引可以被...
    99+
    2024-04-02
  • php === 和==的区别是什么
    本文操作环境:windows7系统、PHP7.1版、DELL G3电脑php === 和==的区别是什么?php中的==和===的用法及区别在开发中进场遇到数值匹配的问题,那么在进行匹配时,遇到下面的情况,你觉得结果是什么?<php ...
    99+
    2021-03-17
    php
  • ./ 和 sh 的区别是什么
    ./ 和 sh 的区别是什么?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。./ 和 sh的使用区别使用“./”执行脚本,对应的xxx.sh脚本必须要有执行权限;使用“sh”...
    99+
    2023-06-09
  • php和j2ee的区别是什么
    本文操作环境:Windows10系统、PHP7.1版、Dell G3电脑。php和j2ee的区别是什么J2EE Java 2 Platform ,Enterprise Edition Java 2平台,企业版J2EE可以创建分布式的大型跨平...
    99+
    2020-10-13
    php
  • php4和php5的区别是什么
    本教程操作环境:windows10系统、PHP7.1版、DELL G3电脑php4和php5的区别是什么构造函数和析构函数在 PHP4 中,当函数与对象同名时,这个函数将成为该对象的构造函数,并且在 PHP4 中没有析构函数的概念。在 PH...
    99+
    2015-12-28
    PHP
  • php5.6和php7的区别是什么
    本教程操作环境:windows10系统、PHP7.1版、DELL G3电脑php5.6和php7的区别是什么一、俩者的区别PHP7.0比PHP5.6性能提升了俩倍。PHP7.0全面一致支持64位。PHP7.0之前出现的致命错误,都改成了抛出...
    99+
    2018-06-05
    PHP
  • android和java的区别是什么
    从整体来讲,java和android的区别在于android程序是基于组件和配置的,而且android开发以java语言为开发工具,表面上看他们有点同宗不同门,但实际上区别十分大,android是一个主流智能手机操作系统,java是一种开发...
    99+
    2019-02-19
    java教程 android java 区别
  • c 和java的区别是什么
    Java和C都是指令式语言(Imperative Language),不同的是Java有面向对象(OO)成分在里面,而C是完全面向过程的,C的高级版本C++、C#支持面向对象。另外一个不同是,Java跨平台,既不同的操作系统都可以通过JVM...
    99+
    2019-02-23
    java教程 c java 区别
  • j2ee和java的区别是什么?
    什么是java?java是一种编程语言,java不仅有着c++的优点,还放弃了一些难以理解的名词,目前java是一种面向对象的代表,java语言简单易用,而且功能强大,因此很多程序员使用java编程桌面程序,和嵌入式系统。Java是一种可以...
    99+
    2020-12-18
    java入门 j2ee java
  • js和java的区别是什么?
    Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。js(JavaScript)是一种直译式脚本语言,是一种动态类型、弱类型、基于原型...
    99+
    2015-02-08
    js java
  • php5.4和5.6的区别是什么
    PHP5.4和5.6的区别是:1、5.6版本在定义变量时允许使用之前定义的常量进行计算,并且允许常量作为函数参数默认值,而5.4版本则不允许;2、5.6版本命名空间支持常量和函数,而5.4版本不支持。本文操作环境:Windows10系统、P...
    99+
    2022-06-22
    php
  • PHP7.1和5.6的区别是什么
    PHP7.1和5.6的区别:1、7.1版本全面一致支持64位,而5.6版本则没有全部支持;2、7.1版本移除了一些老的不再支持的服务端应用编程端口的扩展,而5.6版本则没有移除;3、7.1版本新增了函数的返回类型声明和匿名类,而5.6版本中...
    99+
    2022-06-23
    php
  • Memcache和Redis的区别是什么
    这篇文章将为大家详细讲解有关Memcache和Redis的区别,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Memcache与Redis的概念memcach...
    99+
    2024-04-02
  • MYSQL中#和$的区别是什么
    小编给大家分享一下MYSQL中#和$的区别是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!他们之间的区别用最直接的话来说就是...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作