Mysql5.7新特性_MySQL
Mysql在被sun,继而被oracle收购之后,并没有被oracle这个巨人雪藏,反而近几年的发展速度极为之快,谁都知道,你oracle做不好mysql,开源的市场就会被别人取代,pg,MariaDB,percona server,如果说开源又不挣钱,我就只能呵呵了。这里我选的版本是最新的开发版,5.7.8.只为了看一下最新最近的技术,当然,这个版本是不可能被用到生产中去的,因为还不够成熟,还需要在实验室呆上很久,如果说mysql5.6已经做的够好了,那么mysql5.7一定会让你眼前一亮。Mysql在被sun,继而被oracle收购之后,并没有被oracle这个巨人雪藏,反而近几年的发展速度极为之快,谁都知道,你oracle做不好mysql,开源的市场就会被别人取代,pg,MariaDB,percona server如果说开源又不挣钱,我就只能呵呵了。(本来这个文档做了个word,粘了很多图片进去,csdn的图片加载不太友好,就不贴图片了。) 在列出新特性之前,还是得先写出mysql5.7版本在安装上与5.6的不同。 一般喜欢二进制包去安装,简单方便。很容易理解。 真正的安装过程也是一波三折。 特性一: 安全性增强了,具体的增强,有以下几点: 2,密码可以设置自动失效的时间, 5.6 user表结构 5.7 user表结构 5.7增加了Password_lifetime 这个字段,来设置密码自动失效的时间。 [mysqld] ALTER USER ‘jeffrey’@’localhost’ PASSWORD EXPIRE INTERVAL 90 DAY;(设置某个用户90天失效) ALTER USER ‘jeffrey’@’localhost’ PASSWORD EXPIRE NEVER;(用户密码用不失效) ALTER USER ‘jeffrey’@’localhost’ PASSWORD EXPIRE DEFAULT;(使此用户按照global设置) 3,用户账户锁定: , 使用如下方式解锁: 再次登录,ok 这里有一段注释:Locking an account does not affect being able to connect using a proxy user that assumes the identity 4, To make it easier to support secure connections, MySQL servers compiled using OpenSSL 5,mysql安装使用(应该是初始化)mysqld –initialize 命令, 二 三 在线更改索引名称; 在之前的5.6版本是做不到的。 四 下面比较关心的来了,innodb的增强功能。 1,可以使用alter table 功能更改varchar类型的字段长度。 此处的ALGORITHM=INPLACE,只能增加字段的长度,不能减少,增加的时候不能跨越256这个值,但是两边可以增加。 2,使用DML创建innodb临时表的性能得到了提高,这个到底提高到了哪,什么程度,我也不晓得。。 3,这个是说临时表不在存放在innnodb的共享表空间的意思吧。具体有什么好处呢? 6,checksum在功能上的加强 7,5.7.2首次引进了一个新的日志,叫做non-redo undo log,它跟临时表一样,会被存放放在lbtmp1里面,此文件在data目录下。 首先增加了两个,innodb_buffer_pool_dump_pct,innodb_buffer_pool_chunk_size innodb_page_cleaners,定义了dirty pages clean线程的个数 9,这 10,double write技术在一下支持原子写的磁盘上失效。 Fusion-io Non-Volatile Memory (NVM) from 5.7.4 11, 这个特性是说,在5.7.4之前,只能copy非分区表到别的server,而之后,分区表也是支持的。具体以前为什么不可以,现在为什么可以了还不清楚。 12 13, 16, 主要说了一些情况,mysql可以在不做stop slave 的操作情况下,就change master to。 17, |