10bet网址
MySQL 5.6版本说明
相关的文档10bet官方网站 下载这些版本说明
PDF(美国Ltr)- 2.3 mb
PDF (A4)- 2.3 mb
HTML下载(TGZ)- 462.4 kb
HTML下载(Zip)- 0.5 mb


MySQL 5.6版本说明/ MySQL 5.6.24的更改(2015-04-06,通用可用性)

MySQL 5.6.24的更改(2015-04-06,通用可用性)

MySQL企业笔记

  • MySQL企业版现在包括MySQL企业防火墙,这是一种应用程序级别的防火墙,允许数据库管理员根据对接受的语句模式白名单的匹配来允许或拒绝SQL语句的执行。这有助于增强MySQL Server对诸如SQL注入或试图利用应用程序在其合法查询工作负载特征之外使用它们的攻击的防御能力。

    每个注册到防火墙的MySQL帐户都有自己的语句白名单,支持为每个帐户量身定制保护。对于一个给定的帐户,防火墙可以以记录或保护模式运行,以训练接受的语句模式或防止不可接受的语句。有关更多信息,请参见MySQL企业防火墙

增加或更改的功能

  • CMake支持已更新为处理CMake3.1版。(错误# 20344207)

  • 服务器现在在写入初始值时包含它的版本号开始消息,以便更容易地确定应用于哪个服务器实例的错误日志输出。该值与可用的版本系统变量。(Bug #74917, Bug #20052694)

  • ALTER TABLE没有利用可能适用于要执行的操作的快速更改,如果表包含的时态列被发现为5.6.4以前的格式(时间DATETIME,时间戳不支持小数秒精度的列)。相反,它通过重建表来升级表。两个新的系统变量支持对这些列的升级控制,并提供关于它们的信息:

    • avoid_temporal_upgrade控制是否ALTER TABLE隐式升级5.6.4以前格式的时态列。默认情况下该变量是禁用的。启用它会导致ALTER TABLE不重建时间列,从而能够利用可能的快速更改。

    • show_old_temporals控制是否显示创建表输出包括标记5.6.4以前格式的时态列的注释。的输出COLUMN_TYPE的列INFORMATION_SCHEMA。列表也受到类似的影响。默认情况下该变量是禁用的。

    这两个变量都已弃用,将在未来的MySQL版本中删除。(Bug #72997, Bug #18985760)

  • 以前由Performance Schema完成的语句消化现在是在SQL级别完成的,而不管Performance Schema是否在SQL中编译,是否可用于服务器操作的其他方面,从而从中受益。可用于消化的默认空间是1024字节,但是可以在服务器启动时使用max_digest_length系统变量。

    参考文献:参见Bug #18304086, Bug #20015246。

错误修复

  • InnoDB:一个截断表临时表上的操作引发断言。重新加载时,临时表对象未完全构造SYS_TABLES.(Bug #20527363, Bug #72080)

  • InnoDB:全文短语搜索返回不正确的结果。对新插入的行进行标记时,空字符串处理错误。(Bug #20465273, Bug #75755)

  • InnoDB:优化全文Index引发断言。a的最后一个优化词全文索引存储在配置表格价值列,定义为CHAR(50)。当最后一个优化的单词长度大于50个字符时,将引发断言。的配置表格价值列定义为CHAR(200)在MySQL 5.6.24和MySQL 5.7.6。

    如果你的innodb_ft_max_token_size设置大于50时,建议重新创建现有的InnoDB全文在升级到MySQL 5.6.24或MySQL 5.7.6后,可以避免此问题。全文升级到MySQL 5.6.24或MySQL 5.7.6后创建的索引不受影响。(错误# 20418326)

  • InnoDB:一个InnoDBmemcachedextra_col_value []数组在未检查已分配标志的情况下被释放,导致服务器退出。(错误# 20400373)

  • InnoDB:在进行刷新操作时执行的DML操作会引发与memcached相关的断言。(错误# 20390277)

  • InnoDB:memcachedprocess_arithmetic_command提出了一个断言。为不存在的对象返回错误的错误代码12月关键。(错误# 20386835)

  • InnoDB:过期时间(exptime)使用memcached命令被忽略。InnoDBmemcached将过期时间设置为一个间隔值,而不是系统时间值。(Bug #20381342, Bug #70055)

  • InnoDB:在进行全文搜索时抛出了一个断言fts_savepoint_release ()函数释放了命名事务保存点和所有后续的保存点。应该只释放初始保存点。(错误# 20341916)

  • InnoDB:一个全文搜索优化操作提出了一个断言。(错误# 20281800)

  • InnoDB:由于MySQL 5.6.20引入了一个回归,mysqld停止没有阻止mysqld服务器进程,而InnoDBmemcached插件处于活动状态。(Bug #20078646, Bug #74956)

    这个问题是:Bug #18409840的回归。

  • InnoDB:一个修改表…重命名在桌子上失败了全文Index引发断言。(错误# 20043707)

  • InnoDB:日志应用阶段发生严重错误ALTER TABLE操作,将一个包含UTF-8字符集的表转换为ROW_FORMAT =冗余.(Bug #19843246, Bug #19895661, Bug #20219871)

  • InnoDB:创建虚拟表时,将使用autoinc_mutex的成员dict_table_t对象不必要地创建。类似地,zip_pad.mutex的对象dict_index_t对象为虚拟索引不必要地创建。为了避免不必要的互斥锁争用,autoinc_mutex而且zip_pad.mutex现在在第一次锁尝试时分配和初始化对象。(Bug #19788198, Bug #73361)

  • InnoDB:一个修改表…重命名操作引发无效断言。断言代码使用了错误的事务对象。(错误# 18523599)

    参考文献:此问题是Bug #17447500的回归。

  • InnoDB:一个memcached附加操作INT列导致分割错误。附加上的操作INT不支持列,现在被阻塞。(Bug #75200, Bug #20209756)

  • 分区:一些ALTER TABLE当分区表的写锁生效时,试图向分区表添加分区、列或索引的语句没有得到正确处理。(错误#74451,错误#74478,错误#74491,错误#74560,错误#74746,错误#74841,错误#74860,错误#74869,错误#19856162,错误#19864284,错误#19873019,错误#19891663,错误#19990815,错误#20026661,错误#20031966,错误#20033503,错误#19827845)

  • 复制:当从MySQL 5.7.6或更高版本的服务器复制到MySQL 5.6.23或更早版本的服务器时,如果旧版本的应用程序线程遇到Anonymous_gtid_log_event它导致了断言。这个修复确保了MySQL 5.7.6和更高版本中添加的这些新的日志事件不会在MySQL 5.6.24和更高版本的从库中引起这个问题。如果gtid_mode应用程序线程遇到一个Gtid_log_event,应用程序线程终止并出现错误。如果gtid_mode应用程序线程遇到一个Anonymous_gtid_log_event,应用程序线程终止并出现错误。(错误# 20436436)

  • 复制:automatic_sp_privileges变量设置后,服务器自动授予执行而且改变日常如果用户还没有这些特权,则将这些特权授予存储例程的创建者。当特权用户使用定义者作为主服务器上的非特权用户,当前用户被认为是特权用户mysql.procs_priv表未更新。当这样的语句被复制到slave时,非特权定义者被认为是从机上的当前用户,正在分配特权。这导致在主服务器和从服务器上分配的特权不同。该修复确保存储例程的创建者被添加到二进制日志中,从服务器现在首先检查用户是否存在,然后再授予特权。要保持与以前版本的兼容性,可以使用定义者时使用。调用程序不可用。作为此修复的一部分,可以使用匿名用户从主服务器复制到从服务器。(错误# 20049894)

  • 复制:当使用配置为使用特殊字符集(如UTF-16、UTF-32或UCS-2)的从机时,接收(I/O)线程连接失败。该修复确保在这种情况下,如果不支持从的字符集,则默认使用latin1字符集。(错误# 19855907)

  • 复制:二进制日志组提交的内部问题导致与threadpool插件。(错误# 18845301)

  • 复制:gtid_mode =对而且slave_net_timeout设置为较低的值,则从I/O线程可能出现挂起。这是因为当转储线程发现许多可以跳过的事件时,从心跳没有足够规律地发送。该修复确保在这种情况下心跳被正确发送。(Bug #74607, Bug #19975697)

  • CMake未能正确检测OpenSSL最新版本的OpenSSL版本(版本字符串的格式更改了)。(错误# 20756770)

  • 在执行准备好的语句时,没有检查审计日志插件是否返回错误,因此可能会错误地返回语句success。(错误# 20567900)

  • Debian软件包缺少一些依赖项。(错误# 20561621)

  • 在执行授予……授予选项语句时,使用视图执行准备好的语句可能会导致服务器退出。(错误# 20030284)

  • 名称为的用户event_scheduler可以查看事件调度器流程列表,而无需过程特权。(Bug #20007583, Bug #20754369)

  • 控件中删除列后,试图创建一个用户mysql.user表可能导致服务器退出。(错误# 19910140)

  • 用电脑点菜GROUP_CONCAT ()结果可能导致服务器退出。(Bug #19880368, Bug #20730220)

  • 一个畸形的mysql.proc表行可能导致的服务器出口删除数据库关联的数据库的proc行。(错误# 19875331)

  • 秀奖助金在使用代理用户连接之后,可以显示代理用户的密码哈希。(错误# 19817663)

  • 的大值transaction_prealloc_size系统变量可能导致服务器分配过多的内存。最大值已经调整到128K。也做了类似的更改transaction_alloc_block_size.如果需要,事务仍然可以分配超过128K;此更改减少了可预分配的数量,以及增量分配块的最大大小。(Bug #19770858, Bug #20730053)

  • 的某些查询INFORMATION_SCHEMA。INNODB_FT_CONFIG表可能导致服务器退出。(错误# 19703520)

  • 类比较两行的查询可能会出现服务器出口< = >操作符和行属于不同的字符集。(Bug #19699237, Bug #20730155)

  • 某些InnoDB错误导致存储函数和触发条件处理程序被忽略。(Bug #19683834, Bug #20094067)

  • 由于不正确地将不正确的字段与临时表关联,优化器可能会引发断言。(Bug #19612819, Bug #20730129)

  • 未对连接事件进行审计日志过滤。(错误# 19509398)

  • audit_log_connection_policy =错误,成功的COM_QUIT事件被错误地写入审计日志。与audit_log_statement_policy =没有,则没有连接事件写入审计日志,无论当前audit_log_connection_policy设置。(Bug #19509373, Bug #21027210)

  • 的值Audit_log_events状态变量不等于其他审计日志计数器的总和。(错误# 19509336)

  • Audit_log_events_filtered在过滤审计日志事件时,状态变量没有增加。(错误# 19509263)

  • MySQL 5.6.20的审计日志插件增加了许多新特性,但版本号没有增加。版本已经升级到1.1。(错误# 19502900)

  • 由于优化器未能分配足够的内存来解析外部引用,服务器可能退出。(Bug #18782905, Bug #19892803)

  • 如果在服务器启动时发现审计日志文件被损坏,则不会总是写入适当的错误消息。此外,如果加载了插件,它将被初始化,而不管日志是否损坏,除非重命名日志文件失败。(错误# 14584292)

  • 创建一个联邦有扶手的桌子AUTO_INCREMENT列使用就像子句导致服务器退出。(错误# 12671631)

  • 修正了许多代码问题,这些问题导致编译器对数组边界、可能未初始化的变量和已设置但未使用的变量发出警告。(Bug #75735, Bug #20458574)

  • 作为表达式不能识别为计算性能模式语句摘要的文字。(Bug #74813, Bug #20015246)

  • group_concat_max_len可以在运行时将系统变量设置为最大值,但不能在选项文件中设置。(Bug #74037, Bug #19670915)

  • 服务器警告错误消息引用了过时的table_cache系统变而不来table_open_cache.感谢Daniël van Eeden提供补丁来修复一些实例。(Bug #73373, Bug #19285052, Bug #75081, Bug #20135780)

  • DIGEST_TEXT列的性能模式语句事件表,引用系统变量的形式@@var_name存储为@ @var_name.(Bug #71634, Bug #18304086)

  • 如果WITH_SSLCMake选项指定了错误的SSL安装路径或不支持的(太旧的)SSL安装路径,则该选项将隐式更改为捆绑value和yaSSL代替。现在CMake退出并显示错误,以便用户知道必须更改选项值。(Bug #69744, Bug #17162055)

  • mysql_real_connect ()如果服务器没有运行,可以关闭文件描述符两次。(Bug #69423, Bug #19226740)

  • 只有在启用了通用查询日志的情况下,审计日志插件才会收到通用日志的事件通知。现在,不管是否启用了通用查询日志,都会发布通知。(Bug #60782, Bug #12368204, Bug #20536590, Bug #75796, Bug #20479643)