您的位置:首页 > 数据库 > MySQL

Mysql8.0官方介绍新亮点

2016-10-22 11:21 369 查看
Mysql8.0与2016年9月16号发布,就新特性做一个翻译总结。纯英文版本的参考上面原文地址,下面是具体的对应的翻译 。

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

MySQL 8.0.0里程碑版本是可用的

MySQL开发团队很高兴的宣布mysql8.0.0是一个开发的里程碑发布(DMR),现在可以在dev.mysql.com上下载。源码下载地址在GitHub。你可以找到全部的修改变化列表和bug修改在8.0.0 Release Notes.

这里给出的是亮点,令人振奋的地方。

1.事务性数据字典(
Transactional Data Dictionary


MySQL 8.0将会拥有一个真正的数据字典来实现一系列的SQL表存储在InoDB,并且在这次8.0.0里程碑版本中我们提供了大部分这种存储。frm,trg,par这种文件将不再有。在数据字典表中Information Schema作为视图已经被重新实现。DDL语句成为原子和故障安全性可用性增强。MyISAM现在原则上可选的所有系统表已经从MyISAM和InnoDB。这篇文章将解释一些深度的新数据字典,但首先我们交付的其他特性和变化在这个8.0.0 DMR。

2. SQL的角色 (
SQL roles


Roles (WL#988) —这项工作由克里斯汀Petterson MySQL

8.0中实现了标准的SQL的角色。一个角色是一个命名的权限集合。可以授予角色,授予角色、创建角色、删除角色,并决定哪些角色适用在一个会话。
grant    roles, grant to roles, create roles, drop roles,
我们还提供了一个SQL函数ROLES_GRAPHML()返回一个graphml文档子图代表的作用。在未来,我们希望利用“系统角色”当超级特权分解成更细粒度的组件。

3. 字符集设置 (
Character Sets


utf8mb4 collations (WL#9108 and WL#9125)— 这项工作由
Xing Z. Zhang
是一个更大的一部分努力改善我们UTF8支持。总体目标是改变默认的字符集设置中
latin1
utf8mb4
,和默认排序中
latin1_swedish_ci
变为
utf8mb4_800_ci_ai
UTF8
是网络的控制字符编码,这些改变将对绝大多数的MySQL用户来说使用更容易。在8.0.0版本中,我们又增加了21中特定语言的不分大小写
utf8mb4
排序(see WL#9108)除了
utf8mb4_800_ci_ai
(see WL#9125)。如果时间允许,我们还将添加口音和区分大小写排序。默认字符集8.0.0并未改变,但在GA版本发布之前我们计划这样做。

Unicode
数据升级到9.0.0(WL # 9479)——这项工作由
Xing Z. Zhang
升级我们的排序权重和案例映射建立我们的新数据和排序整理最新
Unicode
数据。
Unicode 9.0.0
Unicode委员会宣布在2016年6月21日。

支持无形的索引(WL # 8697)——这项工作由马丁·汉森的可见性增加了切换的能力指数(有形和无形)。一个看不见的指数不是由优化器考虑当查询执行计划。然而,该指数仍保持在后台所以便宜,让它再次可见。的目的,这是一个DBA / DevOp可以确定一个索引可以删除。如果你怀疑一个索引使用的不是你第一次看不见,然后监控查询性能,最后删除索引如果没有经验丰富的查询慢下来。这个功能已经被许多用户要求,例如Dropbox。看到也特性请求登录Bug#70299.

位操作操作二进制数据类型(WL # 8699)——这项工作由Catalin Besleaga 扩展了我们现有的位操作操作(
‘bitwise AND’, etc
),这与长整型数字,
[VAR]BINARY/[TINY|MEDIUM|LONG]BLOB
。8.0位操作操作只支持整数(而不是二进制文件)。如果你使用位操作二进制文件的操作参数是隐式地把长整型数字(64位)操作前,因此可能失去一些。从8.0.0和开始位操作操作适用于所有二进制和BLOB数据类型,铸造参数,这样不会丢失。

我们有改善可用性的IPv6操作:在MySQL 5.6中我们介绍了INET6_ATON()和INET6_NTOA()函数的文本形式之间转换IPv6地址(如“fe80::226:b9ff:fe77:eb17”)和VARBINARY(16)。然而,直到现在,我们不能把这些IPv6函数和位操作操作,因为这样的操作——错误地将输出转换为长整型数字。与王# 8699这是固定的。例如,如果我们有一个IPv6地址,想测试它对网络掩码,我们现在可以使用INET6_ATON(地址)& INET6_ATON(网络)因为INET6_ATON正确()返回VARBINARY(16)数据类型(128位)。

我们有改善可用性的UUID操作(WL # 8920)——这项工作由铸塑酚醛塑料Besleaga提高可用性的UUID操作通过实现三个新的SQL函数:UUID_TO_BIN(),BIN_TO_UUID(),和IS_UUID()。第一个从UUID格式的文本转换为VARBINARY(16),第二个从VARBINARY(16)UUID格式的文本,最后一个检查一个UUID格式文本的有效性。UUID存储为VARBINARY(16)可以被索引使用函数索引。UUID_TO_BIN功能()和UUID_TO_BIN()也可以洗牌开始的与时间相关的部分,他们使其指数友好,避免随机插入在b -树,这样减少了插入时。缺乏这样的功能一直被认为是使用UUID的缺点之一。

总而言之,MySQL没有特殊的IPv6地址的数据类型或uuid,而是鼓励使用VARBINARY(16)。MySQL提供功能将从文本IPv6 / UUID交涉和更紧凑的VARBINARY(16)数据类型。MySQL现在提供位操作操作VARBINARY(16)数据类型。IPv6 / UUID函数结合位操作操作可用于测试,提取,或结合部分(子结构)IPv6 / UUID,即定义一个函数通过IPv6 / UUID的内容。这个函数可以用于定义在一个虚拟的内容生成的列可以被索引。

待续。。。。。。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: