【MySQL】5.7新特性之二

本系列基于5.7.12 版本来讲述MySQL的新特性,从安装,文件结构,SQL  ,优化 ,运维层面 复制,等几个方面展开介绍5.7 的新特性和功能,同时也建议大家跟踪官方blog和文档,以尽快知悉其新的变化。
1 SQL_MODE的变化
官方文档上表述, 5.7 版本默认的SQL_MODE="ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, and NO_ENGINE_SUBSTITUTION" 。而实际上我自己的测试环境中默认添加了 STRICT_TRANS_TABLES 属性。

  1. mysql> select @@sql_mode;
  2. +--------------------------------------------+
  3. | @@sql_mode |
  4. +--------------------------------------------+
  5. | STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION |
  6. +--------------------------------------------+
  7. 1 row in set (0.00 sec)

 STRICT_TRANS_TABLES 意思是说要存储的字段的长度大于字段定义的大小,直接报错而非像5.6版本以及之前,截断数据进行存储,同时抛出一个warning。注意同一个会话调整 sql_mode 必须退出之后在进入sql_mode才会生效。详细了解SQL_MODE 请移步《sql_mode官方文档》 注意5.7 对于null,'00000000 00:00:00' 这类default值的影响.

2 online ddl支持 rename index name .个人感觉这个功能比较鸡肋,通常改变索引名称的时候 本身索引的结构需要增删字段,新建的索引名称也要修改合适的名称。

  1. mysql> alter table yy rename index idx_name to idx_nm;
  2. Query OK, 0 rows affected (0.01 sec)
  3. Records: 0 Duplicates: 0 Warnings: 0

3 新增内置的full text 插件,支持中文 ,韩文,日文全文索引。
  之前的版本 只能依赖单词之间空格进行分词,对于依赖于语义分词而非空格分词的其他语言种类,5.7 版本的引入支持解析中文,韩文,日文的全文索引--ngram full-text parser解决了该问题。具体请移步《ngram Full-Text Parser

参考文章
《what is new in MySQL 5.7》

时间: 2024-10-27 10:46:24

【MySQL】5.7新特性之二的相关文章

MySQL · 特性分析 ·MySQL 5.7新特性系列四

继上三期月报:MySQL 5.7新特性之一介绍了一些新特性及兼容性问题MySQL 5.7新特性之二介绍了临时表的优化和实现MySQL 5.7新特性之三介绍了undo表空间的truncate功能 这期我们一起来学习下MySQL 5.7的并行复制. 1. 背景 MySQL的master<->slave的部署结构,使用binlog日志保持数据的同步,全局有序的binlog在备库按照提交顺序进行回放. 由于新硬件的发展,SSD的引入和多core的CPU,master节点的并发处理能力持续提升,slav

MySQL · 特性分析 ·MySQL 5.7新特性系列三

继上两期月报,MySQL5.7新特性之一介绍了一些新特性及兼容性问题,MySQL 5.7新特性之二介绍了临时表的优化和实现. 这期我们一起来学习下undo空间管理,重点介绍truncate功能. 1. 背景 InnoDB存储引擎中,undo在完成事务回滚和MVCC之后,就可以purge掉了,但undo在事务执行过程中,进行的空间分配如何回收,就变成了一个问题. 我们亲历用户的小实例,因为一个大事务,导致ibdata file到800G大小. 我们先大致看下InnoDB的undo在不同的版本上的一

MySQL 5.0新特性教程 存储过程:第一讲

mysql|存储过程|教程 作者:mysql AB;翻译:陈朋奕 Introduction 简介 MySQL 5.0 新特性教程是为需要了解5.0版本新特性的MySQL老用户而写的.简单的来说是介绍了"存储过程.触发器.视图.信息架构视图",在此感谢译者陈朋奕的努力. 希望这本书能像内行专家那样与您进行对话,用简单的问题.例子让你学到需要的知识.为了达到这样的目的,我会从每一个细节开始慢慢的为大家建立概念,最后会给大家展示较大的实用例,在学习之前也许大家会认为这个用例很难,但是只要跟着

MySQL 5.0新特性教程 存储过程:第一讲

Introduction 简介 MySQL 5.0 新特性教程是为需要了解5.0版本新特性的MySQL老用户而写的.简单的来说是介绍了"存储过程.触发器.视图.信息架构视图",在此感谢译者陈朋奕的努力. 希望这本书能像内行专家那样与您进行对话,用简单的问题.例子让你学到需要的知识.为了达到这样的目的,我会从每一个细节开始慢慢的为大家建立概念,最后会给大家展示较大的实用例,在学习之前也许大家会认为这个用例很难,但是只要跟着课程去学,相信很快就能掌握. Conventions and St

MySQL 5.0 新特性--存储过程(1)

Introduction 简介 MySQL 5.0 新特性教程是为需要了解5.0版本新特性的MySQL老用户而写的.简单的来说是介绍了"存储过程.触发器.视图.信息架构视图",在此感谢译者陈朋奕的努力. 希望这本书能像内行专家那样与您进行对话,用简单的问题.例子让你学到需要的知识.为了达到这样的目的,我会从每一个细节开始慢慢的为大家建立概念,最后会给大家展示较大的实用例,在学习之前也许大家会认为这个用例很难,但是只要跟着课程去学,相信很快就能掌握. Conventions and St

MySQL 5.0 新特性--存储过程

Introduction 简介 MySQL 5.0 新特性教程是为需要了解5.0版本新特性的MySQL老用户而写的.简单的来说是介绍了"存储过程.触发器.视图.信息架构视图",在此感谢译者陈朋奕的努力. 希望这本书能像内行专家那样与您进行对话,用简单的问题.例子让你学到需要的知识.为了达到这样的目的,我会从每一个细节开始慢慢的为大家建立概念,最后会给大家展示较大的实用例,在学习之前也许大家会认为这个用例很难,但是只要跟着课程去学,相信很快就能掌握. Conventions and St

Exchange 2007 新特性与二次开发

Exchange Server2007 已经面市将近一年了,相信大家一定对它的强大功能已经有所体验了,其中值得我们关注的就是Exchange Server 2007将web service的应用开发引入到CAS(Client Access Server)中,给开发人员带来了福音.现在就让我们一起来学习一下Exchange Server 2007 Web Service的新特性和它的二次开发的相关技术吧. 一. Exchange Server 2007 Web Service新特性  用Web

Exchange 2007新特性与二次开发

Exchange Server2007 已经面市将近一年了,相信大家一定对它的强大功能已经有所体验了,其中值得我们关注的就是Exchange Server 2007将web service的应用开发引入到CAS(Client Access Server)中,给开发人员带来了福音.现在就让我们一起来学习一下Exchange Server 2007 Web Service的新特性和它的二次开发的相关技术吧. 一. Exchange Server 2007 Web Service新特性 用Web Se

MySQL 5.7 新特性 generated columns

MySQL 5.7的一个新特性,generated column http://dev.mysql.com/doc/refman/5.7/en/create-table.html#create-table-generated-columns 即generated column的值是普通column产生值,有点像视图,但是又有别于视图,因为它可以选择是否存储generated column产生的值. CREATE TABLE triangle ( sidea DOUBLE, sideb DOUBL