MySQL 5.7版本简介

2023-10-26

MySQL的优势

MySQL的主要优势如下:
(1)速度:运行速度快。
(2)价格:MySQL对多数个人来说是免费的。
(3)容易使用:与其他大型数据库的设置和管理相比,其复杂程度较低,易于学习。
(4)可移植性:能够工作在众多不同的系统平台上,例如:Windows、Linux、Unix、
Mac OS等。
(5)丰富的接口:提供了用于C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和
Tcl等语言的API。
(6)支持查询语言:MySQL可以利用标准SQL语法和支持ODBC(开放式数据库连
接)的应用程序。
(7)安全性和连接性:十分灵活和安全的权限和密码系统,允许基于主机的验证。连
接到服务器时,所有的密码传输均采用加密形式,从而保证了密码安全。并且由于
MySQL是网络化的,因此可以在因特网上的任何地方访问,提高数据共享的效率。

MySQL 5.7的新功能

和MySQL5.6相比,MySQL5.7的新功能主要包括以下几个方面。
1.支持JSON
JSON(Java Script Object Notation的缩写)是一种存储信息的格式,可以很好地替
代XML。从MySQL 5.7.8版本开始,MySQL将支持JSON,而在此版本之前,只能通过
strings之类的通用形式来存储JSON文件,这样做的缺陷很明显,就是必须要自行确认
和解析数据、解决更新中的困难、在执行插入操作时忍受较慢的速度。
2.性能和可扩展性
改进InnoDB的可扩展性和临时表的性能,从而实现更快的网络和大数据加载等操作。
3.改进复制以提高可用性的性能
4.性能模式提供更好的视角
增加了许多新的监控功能,以减少空间和过载,使用新的SYS模式显著提高易用性。
5.安全
以安全第一为宗旨,提供了很多新的功能,从而保证数据库的安全。
6.优化
重写了大部分解析器、优化器和成本模型,这提高了可维护性、可扩展性和性能。
7.GIS
MySQL 5.7全新的功能,包括InnoDB空间索引,使用Boost.Geometry,同时提高完整
性和标准符合性。
MySQL存储引擎简介
MySQL的核心就是存储引擎。
MySQL提供了多个不同的存储引擎,包括处理事务安全表的引擎和处理非事务安全表的
引擎。在MySQL中,不需要在整个服务器中使用同一种存储引擎,针对具体的要求,可
以对每一个表使用不同的存储引擎。MySQL 5.7支持的存储引擎有:InnoDB,
MyISAM,Memory,Merge,Archive,Federated,CSV,BLACKHOLE等。可以使
用SHOW ENGINES语句查看系统所支持的引擎类型。
**InnoDB是事务型数据库的首选引擎,**支持事务安全表(ACID),支持行锁定和外键。MySQL 5.5.5之后,InnoDB作为默认存储引擎。
**MyISAM基于ISAM的存储引擎,**并对其进行扩展。它是在Web、数据存储和其他应用环
境下最常使用的存储引擎之一。MyISAM拥有较高的插入、查询速度,但不支持事务。
在MySQL 5.5.5之前的版本中,MyISAM是默认存储引擎。
MEMORY存储引擎将表中的数据存储到内存中,为查询和引用其他表数据提供快速访
问。
存储引擎的选择
不同存储引擎都有各自的特点,以适应不同的需求,如表3.1所示。为了做出选择,首先
需要考虑每一个存储引擎提供了哪些不同的功能。
存储引擎比较
在这里插入图片描述

  • 如果要提供提交、回滚和崩溃恢复能力的事务安全(ACID兼容)能力,并要求实现并发
    控制,InnoDB是个很好的选择。
  • 如果数据表主要用来插入和查询记录,则MyISAM引擎能提供较高的处理效率;
  • 如果只是临时存放数据,数据量不大,并且不需要较高的数据安全性,可以选择将数据保存在内存中的Memory引擎,MySQL中使用该引擎作为临时表,存放查询的中间结果。
  • 如果只有INSERT和SELECT操作,可以选择Archive引擎,Archive存储引擎支持高并发的插入操作,但是本身并不是事务安全的。Archive存储引擎非常适合存储归档数据,如记录日志信息可以使用Archive引擎。
    使用哪一种引擎要根据需要灵活选择,一个数据库中多个表可以使用不同引擎以满足各
    种性能和实际需求。使用合适的存储引擎,将会提高整个数据库的性能。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL 5.7版本简介 的相关文章

随机推荐

  • 使用cefsharp在winform中嵌套浏览器,解决程序闪退问题,你也可以做一个红芯浏览器^v^

    使用cefsharp在winform中嵌套浏览器 简单使用cefsharp在winform中嵌套浏览器 在上一节 我们学习了如何简单地在winform中嵌入chromium浏览器 我在使用这个开发项目时 需要点击一个按钮 弹出嵌入浏览器的窗
  • 测试bug 类型及原因分类

    空间管理 测试bug 类型及原因分类 Bug类型 QA设置 代码错误 界面优化 设计缺陷 配置相关 安装部署 安全相关 性能问题 标准规范 测试脚本 其他 bug状态更新备注 DE更新 设计如此 重复bug 外部原因 已解决 无法重现 延期
  • 怎么将英文网页整篇翻译成中文

    作为一个实打实的英语渣渣 这个技能还是需要必备的 英语大神勿笑 当然英语遛的大神是不会知道我们英语渣渣的苦的 话不对说 今天我就跟大家分享一下将一个整篇的英文网页翻译成中文的小技巧 大神跳过 工具 这么牛逼的操作当然要用到Google的Ch
  • Gson实现接口自定义反序列化

    在项目中同样遇到了对json字符串进行反序列化时 遇到了多态情况下 无法找到对应类 所以写这篇文章来mark一下 首先抛出原始代码 再给上解决方案 原始代码 原始json串 type int specs min 1 max 12 unit
  • iOS开发设置状态栏字体颜色

    状态栏的字体为黑色 UIStatusBarStyleDefault 状态栏的字体为白色 UIStatusBarStyleLightContent 一 在info plist中 将View controller based status ba
  • 蓝桥杯C/C++省赛:剪格子

    目录 题目描述 思路分析 AC代码 题目描述 如图p1 jpg所示 3 x 3 的格子中填写了一些整数 我们沿着图中的红色线剪开 得到两个部分 每个部分的数字和都是60 本题的要求就是请你编程判定 对给定的m x n 的格子中的整数 是否可
  • Tensorflow——端到端车牌识别(数据制作、训练、评估、预测)

    利用周末时间断断续续实现端到端车牌识别项目 具备完整的数据集 数据制作 训练 评估 预测业务 项目特点 采用tensorflow中的keras库 训练时数据生成器data generator 对学习keras API有一些参考意义 项目地址
  • TCP窗口字段理解

    TCP窗口字段理解 转载自 https blog 51cto com shjrouting 1612855 TCP数据传输过程中 序列号增长的单元是包的个数 解释 这是初学者最常犯的一个错误 原因是绝大多数老师为了方便学生理解 刚开始举例子
  • C++14几种计时方法的对比

    1 C 14 版本 程序如下 include
  • Mysql中索引的最左前缀原则图文剖析(全)

    目录 前言 1 定义 2 全索引顺序 3 部分索引顺序 3 1 正序 3 2 乱序 4 模糊索引 5 范围索引 前言 之所以有这个最左前缀索引 归根结底是mysql的数据库结构 B 树 在实际问题中 比如 索引index a b c 有三个
  • 多个空格的正则表达式

    一 借鉴别人 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
  • webpack5

    为什么有webpack web1 0阶段 还没有明确前端岗位 主要职责是编写静态页面 用Js来进行表单验证或动画效果 为了在页面上动态填充数据 后面也出现了php jsp这种开发模式 web2 0阶段 伴随ajax的诞生 不止负责展示界面
  • C# this.InvokeRequired

    C 为控件单独开辟了一个线程 当另外一个线程的方法需要修改控件或者调用控件的方法时 需要通过控件的InvokeRequired方法来进行 InvokeRequired
  • tp5如何跨数据库查询

    gt 当然前提是 这两个的数据库都在同一个服务器上才可以的 如果没有在同一个服务器上 gt 解决办法 mysql设置一下权限 a 可以对b进行select的操作权限 tp5使用原生查询 代码如下 admin Db query SELECT
  • orangepi5使用sata ssd启动系统

    使用sata ssd启动香橙派官方的Ubuntu系统 以Orangepi5 1 1 0 ubuntu jammy server linux5 10 110为例 因为烧录系统到外接的ssd需要另一个系统辅助所以我们还要烧录一个带桌面的系统到T
  • 解决 LINK : fatal error LNK1104: 无法打开文件“freeglutd.lib”问题

    最近跑程序 发现总有这样的错误 如下图 开始我以为是缺少了freeglutd lib这个文件 之后才发现压根没有这个文件 于是找到了解决办法 鼠标右键单击项目 选择属性 出现如下图 找到C C 预处理器 点开预处理器定义 点编辑 添加 ND
  • libevent源码学习(0):libevent库安装与简单使用

    目录 1 下载并解压libevent库 2 安装libevent库 3 简单使用libevent库 1 下载并解压libevent库 这里下载的是libevent 2 0 21 stable版本的 使用wget命令如下所示 下载地址可通过h
  • .git文件夹_Git入门细致讲解

    什么是 git 分布式的版本管理与协作系统 安装 Git 下载安装就不详说了 安装之后 右键会出现 Git bush here 在当前文件夹打开 bash 是一个小型的 linux shell 可以在上面进行关于 git 的操作 他自带 m
  • 妙用mov edi,edi和5个nop实现inline hook

    妙用mov edi edi和5个nop实现inline hook 2008年2月22日 分类 其它技术 标签 inline hook nop 这方法MJ很早时就说过了 简单重复下 大家应该发现大部分API的第一条指令都是mov edi ed
  • MySQL 5.7版本简介

    MySQL的优势 MySQL的主要优势如下 1 速度 运行速度快 2 价格 MySQL对多数个人来说是免费的 3 容易使用 与其他大型数据库的设置和管理相比 其复杂程度较低 易于学习 4 可移植性 能够工作在众多不同的系统平台上 例如 Wi