MySQL 8.0.0 开发里程碑版发布

2016-09-17 16:21:01 +08:00
 zrj766

原文链接: http://mobile.163.com/16/0916/23/C14CPV6S00118023.html

MySQL 8.0.0 亮点

事务性数据字典,完全脱离了 MyISAM 存储引擎

真正将数据字典放到了 InnoDB 中的一些表中,从此不再需要 FRM 、 TRG 、 PAR 文件啦! Information Schema 现在以数据字典表的一个视图出现。原则上可以完全不需要 MyISAM 数据表类型了,所有的系统表都可以放到 InnoDB 之中。

SQL 角色

角色是一系列权限的集合。可以创建角色,给某个用户授予和去除角色。这对于权限管理很方便。

utf8mb4 字符集将成为默认字符集,并支持 Unicode 9

默认字符集将从 latin1 改为 utf8mb4 ,默认定序 collation 将从 latin1_swedish_ci 改为 utf8mb4_800_ci_ai 。

不可见索引

可以将一些索引设置为不可见,这样 SQL 优化器就不会用到它,但是它会继续在后台保持更新。当有需要时,可以随时恢复可见。

对二进制数据可以进行位操作

不仅仅可以对 BIGINT 进行位操作,从 8.0 开始也支持对 [VAR]BINARY/[TINY|MEDIUM|LONG]BLOB 进行位操作了。

改进了对 IPv6 和 UUID 的操作

INET6_ATON() 和 INET6_NTOA() 现在可以进行位操作了,因为 INET6_ATON()现在返回的是 VARBINARY(16) 数据类型( 128 位)。改进了 UUID 操作,引入了三个新的函数 UUID_TO_BIN(), BIN_TO_UUID()和 IS_UUID() 。 MySQL 并没有特殊的 IPv6 和 UUID 数据类型,而是以 VARBINARY(16) 数据类型保存的。

持续性的全局变量

可以用 SET PERSIST 来设置持久性的全局变量,即便服务器重启也会保持下来。

性能数据库 Performance Schema 的改进

比如对性能数据库增加了 100 多个索引,可以检索更快。

重构 SQL 分析器

持续不断的逐步改进 SQL 分析器。旧的分析器由于其语法复杂性和自顶向下的分析方式从而有严重的限制,导致难以维护和扩展。

成本模型

InnoDB 缓冲区现在可以估算主内存缓存区中的有多少表和索引,这可以让优化器选择访问方式时知道数据是否可以存储在内存中还是必须存储到磁盘上。

直方图 Histograms

通过使用直方图,用户或 DBA 可以对数据分布进行统计,这可以用于查询优化以寻找优化的查询方案。

改进扫描性能

改进了 InnoDB 范围查询的性能,可提升全表查询和范围查询 5-20% 的性能。

重构 BLOB

重构 BLOB 加速了片段读取 /更新操作,可以加速 JSON 数据的操作。

持久化自增值

InnoDB 会持久化保持自增序列的最大值到 redo 日志中。这个改进还修复了一个非常老的 199 号 bug 。

临时表

取消对压缩临时表的支持,并存储临时表的元数据到内存中。

其它的更多重要改进和细节,请参考 MySQL 8.0.0 发布公告[1]和这里[2]。

下载

目前 8.0.0 还是开发版本,如果你希望体验和测试最新特性,可以从 dev.mysql.com 下载各个平台的安装包。不过, MySQL 软件包是越来越大了, Linux 平台上的二进制打包后就将近有 1 GB 。如果在产品环境中使用,在 8.0 没有进入稳定版本之前,请继续使用 5.7 系列,当前最新的版本是 5.7.15 GA 版本——这只有 600 M 多。

最新的源代码放在 GitHub 上,感兴趣的朋友可以去看看,其中有不少是中国人的贡献。

http://dev.mysql.com/doc/relnotes/mysql/8.0/en/

http://mysqlserverteam.com/the-mysql-8-0-0-milestone-release-is-available/

http://dev.mysql.com/downloads/mysql/

3742 次点击
所在节点    MySQL
8 条回复
jalena
2016-09-17 18:15:07 +08:00
吐槽啥好呢!
CFO
2016-09-17 18:17:30 +08:00
@jalena 版本号啊
jasontse
2016-09-17 18:18:16 +08:00
@jalena
吐槽没了 MyISAM 内存在哭泣
mingyun
2016-09-17 18:58:39 +08:00
版本帝啊
yuewolf
2016-09-17 23:58:48 +08:00
@mingyun 咋回事?我还在用 5.5 和 5.6 ,是跳版本号了的意思吗?
Lao9
2016-09-18 08:32:10 +08:00
阿里爸爸提出的要求部分被实现了
Outshine
2016-09-18 10:59:24 +08:00
低配的机器上已经安装不上 5.7 了~8 就更无力了!
wps353
2016-10-08 11:24:32 +08:00
@Outshine 低配装 5.6 都蛋蛋疼

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/306762

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX