这个版本的一个已知的限制:
如果你有InnoDB
如果你正在从MySQL 5.6.10升级到MySQL 5.6.18版本,服务器将无法在升级后启动(Bug#72079)。这个错误在MySQL 5.6.19中被修复。作为一种变通方法,请在升级之前删除全文搜索索引,并在升级完成后重新构建全文搜索索引。
的惟一支持的值
innodb_mirrored_log_groups
系统变量为1,因此该变量现在已弃用。在启动时将其设置为1会导致警告。在启动时将其设置为1以外的值将导致错误并退出服务器。这个变量将在未来的版本中删除。
不可能将社区RPM升级为商业RPMrpm -uvh或百胜localupdate.为了解决这个问题,MySQL 5.6.11中更新了RPM规范文件,这有以下后果:
对于非升级安装(没有安装现有的MySQL版本),可以使用百胜.
对于升级,有必要清理任何早期的MySQL安装。实际上,更新是通过删除旧的安装并安装新安装来执行的。
详情如下。
对于MySQL 5.6.11的非升级安装,可以使用百胜:
shell> yum install MySQL-server-新版本.glibc23.i386.rpm
对于MySQL 5.6.11的升级,将通过删除旧的安装并安装新的安装来执行升级。要做到这一点,请使用以下步骤:
删除现有的5.6。
X
安装。OLDVERSION
是要删除的版本。shell> rpm -e MySQL-server-OLDVERSION.glibc23.i386.rpm
对所有已安装的MySQL rpm重复此步骤。
安装新版本。
新版本
是要安装的版本。shell> rpm -ivh MySQL-server-新版本.glibc23.i386.rpm
或者,也可以使用百胜:
shell> yum remove MySQL-server-OLDVERSION.glibc23.i386.rpmshell> yum install MySQL-server-新版本.glibc23.i386.rpm
(Bug #16445097, Bug #16445125, Bug #16587285)
复制:的函数
GTID_SUBTRACT ()
而且GTID_SUBSET ()
以前可在libmysqld
只有在使用复制支持构建时才会这样。现在,在使用这个库时,无论它是如何构建的,这些函数总是可用的。MySQL不再使用默认的OpenSSL压缩。(错误# 16235681)
现在有一个明显的错误代码(
ER_MUST_CHANGE_PASSWORD_LOGIN
),以获取由服务器发送给使用过期密码进行身份验证的客户端的错误。(错误# 16102943)mysql_config_editor现在支持
——港口
而且——套接字
选项,用于指定TCP/IP端口号和Unix套接字文件名。(错误# 15851247)mysqlcheck有一个新的
——skip-database
选择。选项值是应该跳过检查的数据库的名称(区分大小写)。mysql_upgrade将此选项添加到mysqlcheck中的系统表的升级命令mysql数据库的表之前:它升级
mysql
数据库,然后所有数据库,除了mysql
数据库。这避免了在升级系统表之前升级用户表可能出现的问题。(Bug #14697538, Bug #68163, Bug #16216384)
不兼容的更改;分区:的变化
关键
与数字、日期和时间一起使用的分区哈希函数,枚举
,集
列在MySQL 5.5使表使用分区或子分区关键
在与MySQL 5.1服务器不兼容的MySQL 5.5或更高版本服务器上创建的。这是因为MySQL 5.5或更高版本服务器计算的分区id几乎肯定与MySQL 5.1服务器对相同表定义和数据计算的分区id不同,这是这些函数更改的结果。本金的变化
关键
在MySQL 5.5的分区实现中导致这个问题的原因如下:用于数字、日期和时间列的哈希函数从二进制变为基于字符的。2.用于哈希的基枚举
而且集
列从latin1 ci中的一个
字符转换为二进制。解决方案包括在MySQL 5.5中添加功能,以及稍后选择使用哪种类型的哈希
关键
分区,它是用新的算法
扩展至按键分区
选择创建表
而且ALTER TABLE
.指定按密钥算法分区=1 ([
导致服务器使用在MySQL 5.1中实现的散列函数;使用列
])算法= 2
导致服务器使用MySQL 5.5及更高版本的哈希函数。算法= 2
是默认值。使用适当的值算法
,可执行以下任何一项任务:创建
关键
MySQL 5.5及以后版本中与MySQL 5.1兼容的分区表使用创建表…按键算法划分=1(…)
.降级
关键
分区表是在MySQL 5.5或更高版本中创建的,以便与MySQL 5.1兼容,使用修改表…按键算法划分=1(…)
.升级
关键
原来在MySQL 5.1中创建的分区表使用散列,如MySQL 5.5和以后的版本,使用修改表…按密钥算法划分=2(…)
.重要的:在这样的表升级后,它们不能在MySQL 5.1中继续使用,除非它们首先被降级再次使用
修改表…按键算法划分=1(…)
在MySQL服务器上支持这个选项。
此语法不向后兼容,在旧版本的MySQL服务器中会导致错误。当生成
创建表…按键分区
语句,, mysqldump括号中任何出现的算法= 1
或算法= 2
在有条件的注释中,这样它就会被版本不至少为5.5.31的MySQL服务器忽略。升级的另一个考虑因素是MySQL 5.6之前的MySQL 5.6.11服务器不会忽略算法
选项,因为这些条件注释引用的是5.5.31版本;在这种情况下,您必须手动编辑转储,并删除或注释掉出现的选项,然后再尝试将其加载到MySQL 5.6.10或更早的MySQL 5.6服务器。这对于MySQL 5.6.11或更高版本生成的转储不是问题, mysqldump,其中注释所使用的版本为5.6.11。有关更多信息,请参见ALTER TABLE分区操作.作为修复的一部分,一个虚假的断言
InnoDB
也删除了之前已读取的已删除行,导致服务器在删除该行时断言该行位于错误的分区。(Bug #14521864, Bug #66462, Bug #16093958, Bug #16274455)参考文献:参见Bug #11759782。
不兼容的更改:对于调试版本,在严格的SQL模式下创建一个InnoDB表,违反了最大键长度限制,导致服务器退出。
此错误修复导致的行为变化:在严格SQL模式下,违反键长度限制现在会导致错误(并且不会创建表),而不是发出警告并将键截短到最大键长度。适用于所有存储引擎。(错误# 16035659)
重要的变化;复制
重要的这个修复在MySQL 5.6.12中被恢复。看到MySQL 5.6.12(2013-06-03,通用版本).
执行执行隐式提交的语句,但不记录其更改
gtid_next
设置为除自动
是不允许的。在这种情况下,语句会失败并出现错误。这包括以下列表中的语句:(错误# 16062608)
参考文献:参见:Bug #16484323。
重要的变化;复制:报告的版本号mysqlbinlog
——版本
已增加到3.4。(Bug #15894381, Bug #67643)重要的注意;复制:使用基于行的日志记录从表复制到同名视图会导致从服务器失败。现在,在使用基于行的日志记录时,在执行任何DML之前检查目标对象类型,如果从服务器上的目标实际上不是表,则给出一个错误。
请注意使用基于语句的日志记录,仍然可以从表复制到同名视图。
(Bug #11752707, Bug #43975)
性能;InnoDB:对象使用的MySQL表InnoDB memcached接口(使用
@@
通过读取关于每个表使用的缓存策略的缓存信息,使其更加高效。这种优化使您可以在使用memcached接口的会话期间频繁地在表之间切换,而不必每次检查表元数据而产生I/O开销。(错误# 16206654)性能;InnoDB:对于那些删除了许多行但尚未删除的表的操作,性能得到了提高清除.类执行批量删除或更新的工作负载主要适用此加速主键列,以及系统足够繁忙的地方清洗滞后.(Bug #16138582, Bug #68069)
性能;InnoDB:的
删除表
语句用于表using压缩可能比需要的慢,导致几秒钟的失速。MySQL正在进行不必要的解压页面在缓冲池与表相关的部分下降
操作。(错误# 16067973)性能;InnoDB:时使用的I/O例程AIO子系统的效率更高,可以将连续的I/O请求合并到单个操作中。此补丁解决了5.6开发周期中引入的性能问题。(Bug #16043841, Bug #67973)
InnoDB:当
添加主键
类中的列被重新排序ALTER TABLE
语句(例如:在表t1中添加主键(a,b),将a改为INT AFTER b
),日志申请更新
操作未能找到行。(错误# 16586355)InnoDB:
ALTER TABLE
上的操作InnoDB
添加了主键
使用列前缀可能会产生不正确的结果。(错误# 16544336)InnoDB:为
ALTER TABLE
上的操作InnoDB
对于需要表复制操作的表,表上的其他事务可能在复制期间失败。但是,如果这样的事务发出部分回滚,则回滚被视为完全回滚。(错误# 16544143)InnoDB:解析带分隔符的搜索字符串时,例如”abc-def”在全文搜索中,
InnoDB
现在使用与相同的单词分隔符MyISAM
.(错误# 16419661)InnoDB:解决了InnoDB的命名不一致问题
PERFORMANCE_SCHEMA
重要声明。(错误# 16414044)InnoDB:中的状态值
innodb_ft_config
表将不会更新。的innodb_ft_config
用于内部配置,不应用于统计信息目的。为避免混淆,将用于内部使用的列值从innodb_ft_config
表格此修复程序还删除innodb_ft_config
表和其他与全文搜索相关的内部表。(Bug #16409494, Bug #68502)InnoDB:的崩溃恢复失败
recv_no_log_write !
在读取页面时断言。(错误# 16405422)InnoDB:此修复程序禁止在压缩表上对聚集索引叶页进行额外拆分。额外的页面分割只是为了为将来的更新保留空间,这样就可以避免将来的页面分割。(错误# 16401801)
InnoDB:为
InnoDB
表,如果主键
在一个VARCHAR
列(或前缀)为空,索引页压缩可能失败。(错误# 16400920)InnoDB:的
InnoDB
分页算法可能会过度递归。(错误# 16345265)InnoDB:期间,不适当地测试引用和被引用之间的兼容性
修改表…增加外国
键可能导致服务器退出。(错误# 16330036)InnoDB:导入带配置文件的表空间不会导入数据文件。当使用复制和重命名方法更改表后,没有从缓冲池刷新所有页时,将发生此问题。此修复确保在使用复制和重命名方法更改表时,从缓冲池刷新所有页。(错误# 16318052)
InnoDB:回滚不包括只读事务对临时表所做的更改。(错误# 16310467)
InnoDB:当使用
ALTER TABLE
设置AUTO_INCREMENT
列值设置为用户指定的值,InnoDB将设置AUTO_INCREMENT
值设置为用户指定的值AUTO_INCREMENT
值大于用户指定的值。此修复确保AUTO_INCREMENT
value被设置为用户指定值的最大值和MAX(auto_increment_column)+1,这是预期的行为。(错误# 16310273)InnoDB:
重命名表
会导致MySQL互斥锁获取死锁导致挂起。(错误# 16305265)InnoDB:对于调试版本,
InnoDB
状态导出受制于可能导致服务器退出的竞态条件。(错误# 16292043)InnoDB:与
innodb_api_enable_mdl =了
,一个ALTER TABLE
操作InnoDB
需要表拷贝的表可能导致服务器退出。(错误# 16287411)InnoDB:会发生断言失败
heap->magic_n == MEM_BLOCK_MAGIC_N . heap
由于出现了竞态条件row_merge_read_clustered_index ()
返回错误。(错误# 16275237)InnoDB:InnoDB现在通过调用
abort ()
直接发挥作用,就像在其他平台上一样。(错误# 16263506)InnoDB:此修复删除了与只影响调试构建的page_hash锁相关的不必要调试断言。调试断言不再有效,应该在MySQL 5.6中引入hash_lock数组时删除。(错误# 16263167)
InnoDB:当内部读操作实际上是异步的时,它们可能被错误地分类为同步。当I/O请求比预期更快返回时,线程调度效率可能会很低。这个问题主要影响预读请求,因此对用户查询执行的I/O的影响相对较小。(Bug #16249505, Bug #68197)
InnoDB:的
lock_validate
函数获取和释放互斥锁,以避免占用互斥锁,该函数只存在于调试版本中。这种行为引入了一个窗口,在该窗口中,当代码遍历同一组数据时,可以对哈希表进行更改。此修复程序更新lock_validate
逻辑来收集必须验证锁的所有记录,释放互斥锁,并运行一个循环来验证记录锁。(错误# 16235056)InnoDB:
ALTER TABLE
函数将执行检查InnoDB是否处于只读模式(srv_read_only_mode = true
).如果InnoDB处于只读模式,检查将返回一个成功的状态,而不做其他任何事情。此修复程序取代了srv_read_only_mode
用调试断言检查条件。(错误# 16227539)InnoDB:当InnoDB缓冲池几乎被4KB的压缩页填满时,插入16KB的压缩表将产生8KB的空间
pages_free
增加,这可能会减慢或停止插入。(错误# 16223169)InnoDB:的InnoDB代码更新
ha_innodb.cc
而且handler0alter.cc
使用表::key_info
而不是两者都有表::key_info
而且TABLE_SHARE: key_info
.(错误# 16215361)InnoDB:在修改InnoDB锁定代码时,无意中删除了一个注册锁定等待的调用。这个修复将回调添加到InnoDB锁定代码中。(错误# 16208201)
InnoDB:对象执行清除操作时,如果MySQL服务器在特定时刻停止改变缓冲,该操作可能在下次重启时再次错误执行。一个解决方法是设置配置选项
innodb_change_buffering =变化
,以关闭清除操作的更改缓冲。(Bug #16183892, Bug #14636528)InnoDB:InnoDB的memcached插件在高负载下可能会遇到严重的错误,比如基准测试运行时产生的错误。(Bug #16182660, Bug #68096)
InnoDB:直接呼叫
trx_start_if_not_started_xa_low ()
函数将导致调试断言。(错误# 16178995)InnoDB:在锁等待外键表中的插入的情况下,
InnoDB
可能报告错误的字典更改错误,并导致插入失败而不是重试。(错误# 16174255)InnoDB:一个合适的
ALTER TABLE
在一个InnoDB
表中删除旧主键的统计信息可能失败mysql.innodb_index_stats
表格(错误# 16170451)InnoDB:在某些情况下,死锁检测不起作用,导致会话挂起等待锁定等待超时。(错误# 16169638)
InnoDB:的页压缩期间的算术下溢
创建表
在一个InnoDB
表可能导致服务器退出。(错误# 16089381)InnoDB:对于调试版本,联机
ALTER TABLE
操作InnoDB
在表重建期间,表可能导致服务器退出。(错误# 16063835)InnoDB:在某些情况下
InnoDB
清除协调器没有使用所有可用的清除线程,导致清除活动不理想。(错误# 16037372)InnoDB:在不能处理未对齐的内存访问的系统上,取决于堆栈帧对齐方式
rt_signal_lease
启动过程中可能发生错误。在Solaris 64位系统上观察到这个问题。(错误# 16021177)InnoDB:
ALTER TABLE
为InnoDB
表并不是完全原子的。(错误# 15989081)InnoDB:当
innodb_mirrored_log_groups
当MySQL服务器被设置为非默认值1时,在加载InnoDB memcached插件时,MySQL服务器在启动时遇到了严重的错误。在早期版本中,当此设置被更改时,服务器将拒绝启动(但不会显示错误)。此修复程序将清除此配置选项不支持的值的错误处理。(Bug #15907954, Bug #67670)InnoDB:的
innodb_sync_array_size
变量在运行时被错误地允许配置。作为记录,innodb_sync_array_size
必须在MySQL实例启动时配置,不能在启动后更改。此修复程序更改innodb_sync_array_size
转换为非动态变量。(错误# 14629979)InnoDB:文件系统级别的错误,例如打开的文件太多,可能会在操作期间导致未处理的错误
ALTER TABLE
操作。该错误可能伴随着Valgrind警告和以下断言消息:断言”!is_set()的失败。Mysqld收到信号6;
(Bug #14628410, Bug #16000909)
InnoDB:服务器可能在尝试时退出
InnoDB
重新组织或压缩已压缩的辅助索引页。(错误# 14606334)InnoDB:时执行的DML操作
重命名表
操作等待表空间上挂起的I/O操作完成将导致死锁。(错误# 14556349)InnoDB:一个
重命名表
语句在超时前可能会暂停几分钟。此问题可能发生在使用压缩,改变缓冲启用。(错误# 14556349)InnoDB:方法启动服务器
skip-innodb
选项,或InnoDB
否则无法启动,查询任何这些信息模式表都会导致严重错误:(错误# 14144290)
InnoDB:在线DDL是否有限制,阻止重命名列和添加涉及该列的外键
ALTER TABLE
声明。现在,在单个语句中允许这种操作组合。(错误# 14105491)InnoDB:当打印出长信号量等待诊断时,
sync_array_cell_print ()
遇到由竞态条件引起的分割违例(SEGV)。此修复程序通过允许在打印单元格时释放单元格来解决竞态条件。(错误# 13997024)InnoDB:的值
innodb_version
变量没有在MySQL 5.1的InnoDB Plugin的所有服务器版本中一致更新InnoDB
MySQL 5.5、5.6及更高版本中的组件。自InnoDB
和MySQL Server的开发周期完全集成和同步,现在返回的值innodb_version
变量与版本
变量。(Bug #13463493, Bug #63435)InnoDB:试图替换默认值
InnoDB
全文搜索(FTS)停止词列表通过创建InnoDB
表具有相同的结构INFORMATION_SCHEMA。在NODB_FT_DEFAULT_STOPWORD
会导致错误。显示创建表
揭示了新的InnoDB
表是用CHARSET = utf8
.的InnoDB
FTS停词表有效性检查只支持latin1。此修复扩展了对所有支持的字符集的有效性检查。(Bug #68450, Bug #16373868)InnoDB:此修复将删除遗留的原型代码
srv_parse_log_group_home_dirs
,以及相关的头注释。(Bug #68133, Bug #16198764)InnoDB:当再次使用同一个表(游标)实例时,终止一个查询会导致InnoDB断言失败。这是修复Bug#14704286所引入的回归错误的结果。该修复引入了一个检查来处理长时间运行的查询的终止信号,但游标没有恢复到正确的状态。(Bug #68051, Bug #16088883)
InnoDB:在启动时,InnoDB在64位Linux和64位Windows系统上报告了一条消息,说明CPU不支持crc32指令。在Windows上,InnoDB不使用crc32指令,即使CPU支持。这个修正修改了消息的措辞,并实现了crc32指令的可用性检查。(Bug #68035, Bug #16075806)
InnoDB:没有检查内部生成的外键名的长度。如果内部生成的外键名超过64个字符的限制,这将导致无效的DDL
显示创建表
.此修复程序检查内部生成的外键名的长度,如果超出限制就报告错误消息。(Bug #44541, Bug #11753153)分区:
算法= inplace
对于在分区表上操作的DDL语句,在MySQL 5.6.10中是不允许的。(错误# 16216513)参考文献:参见Bug #14760210。
分区:对按范围和using分区的表的查询
TO_DAYS ()
作为一个分区函数,在剪枝时总是包含表的第一个分区。这种情况的发生与使用的范围无关之间的
这种查询的子句。(Bug #15843818, Bug #49754)分区:执行
修改表…删除分区
视图导致服务器崩溃,而不是像预期的那样出现错误。(错误# 14653504)分区:如果两者都是,则查询结果不排序
截然不同的
而且命令
,并对底层表进行了分区。(错误# 14058167)分区:对象中插入任意数量的行
存档
表使用超过1000个分区,然后试图删除表导致MySQL服务器失败。(Bug #13819630, Bug #64580)复制:当使用gtid和二进制日志自动定位时,每当从服务器重新连接时(由于I/O线程故障或主服务器更改等原因),在向从服务器发送任何事件之前,主服务器必须扫描所有二进制日志。现在,主服务器从包含从服务器上没有找到的任何GTID的最老的二进制日志开始。(Bug #16340322, Bug #68386)
复制:当主服务器的服务器版本大于或等于10时,复制到具有较低服务器版本的从服务器失败。(Bug #16237051, Bug #68187)
复制:当复制到MySQL 5.6主服务器到旧的从服务器时,错误1193 (ER_UNKNOWN_SYSTEM_VARIABLE)被记录为这样的消息master上的未知系统变量'SERVER_UUID',可能是一个非常老的master.这条消息已被改进,包括更多的信息,类似于这一条:主服务器上的未知系统变量“SERVER_UUID”。一个可能的原因是主服务器(版本:5.5.31)不支持该变量,尽管它在从服务器(版本:5.6.11)上.(Bug #16216404, Bug #68164)
复制:当MTS打开并应用事务时,当遇到事务事件上的校验和错误时,从协调器将挂起。这是由于死锁情况造成的,在这种情况下,协调器假定正常停止,而工作人员等待协调器分派更多事件。对于调试构建,问题表现为断言失败,这是由于没有设置协调器造成的
螺纹- > is_error ()
当遇到错误时。(错误# 16210351)复制:用户变量的零长度名称(例如
@ ' '
)在从二进制日志读取时被错误地认为是数据或网络损坏的迹象。(Bug #16200555, Bug #68135)复制:mysqlbinlog可以连接到远程服务器并读取其二进制日志。在MySQL 5.6及更高版本中,该工具还可以等待服务器生成并发送额外的事件,实际上就像从服务器连接到主服务器一样。如果服务器发送了心跳信号,mysqlbinlog无法妥善处理。因此,mysqlbinlog此时失败,没有从服务器读取更多事件。为了解决这个问题,mysqlbinlog现在忽略任何类型的二进制日志事件
HEARTBEAT_LOG_EVENT
它接收。(错误# 16104206)复制:
停止奴隶
与诸如?之类的语句并发时,可能导致死锁显示状态
检索一个或多个状态变量的值Slave_retried_transactions
,Slave_heartbeat_period
,Slave_received_heartbeats
,Slave_last_heartbeat
,或Slave_running
.(Bug #16088188, Bug #67545)参考文献:参见Bug #16088114。
复制:撇号(
`
)字符在内部生成的SQL语句中并不总是正确处理,这有时会导致从服务器上出现错误。(Bug #16084594, Bug #68045)参考文献:这个问题是:Bug #14548159, Bug #66550的回归。
复制:为了使用gtid提供或恢复服务器,可以设置
gtid_purged
到一个列出所导入事务的给定GTID集。该操作要求全局gtid_executed
而且gtid_purged
服务器系统变量为空。(这样做是为了避免重写服务器生成的gtid的可能性。)错误消息GTID_PURGED只能在GTID_EXECUTED为空时设置在没有满足这一要求时提出的这个问题可能会引起混淆或误导,因为它没有说明受影响变量的范围。为了防止这种情况发生,现在引用与gtid相关的变量的错误消息在这样做时指定任何此类变量的范围。(Bug #16084426, Bug #68038)
复制:的会话级别值
gtid_next
在slave上为所有回滚错误重置,这意味着gtid可能在多语句事务中丢失,导致slave在ER_GTID_NEXT_TYPE_UNDEFINED_GROUP错误。现在,只有当一个完整的事务正在回滚时,或者当自动提交
启用。(错误# 16084206)复制:使用
——复制- *
选项(见复制服务器选项和变量)在某些情况下可能导致从服务器上的内存泄漏。(Bug #16056813, Bug #67983)复制:在某些情况下,当从服务器无法识别主服务器的服务器版本时,这可能会导致从服务器失败。(错误# 16056365)
复制:在某些情况下,转储线程可能会发送与格式描述事件不同步的心跳。这个问题的影响之一是,在从备份数据目录配置新服务器并进行设置之后
——gtid-mode =
以及启用自定位(参见CHANGE MASTER TO语句),复制启动失败,出现错误从主机读取无效事件….同样的问题还可能导致基于gtid的复制由于计划外关闭主服务器后跳过的事件而失败。(错误# 16051857)复制:复制中使用的表id定义为类型
ulong
在主和使用uint
在奴隶上。此外,二进制日志事件中表id的最大值为6字节(281474976710655)。这些因素结合在一起导致了以下问题:当一个表被分配的ID大于时,slave上的数据可能会丢失
使用uint
.大于281474976710655的表id被写入二进制日志为281474976710655。
当slave遇到两个具有相同表ID的表时,这将导致停止slave。
为了解决这些问题,现在主和从都将id定义为类型
ulonglong
但是被限制在0到281474976710655的范围内,当它超过这个值时从0重新启动。(Bug #14801955, Bug #67352)复制:用于中继日志信息的内部对象在释放它们的内存之前只被部分删除。(错误# 14677824)
复制:在某些情况下(在转储线程读事件循环中检测到EOF之后,以及在决定是否更改到新的二进制日志文件之前),可以在做出此决定之前将新事件写入二进制日志。如果此时发生日志旋转,则在EOF检测之后发生的任何事件都将被丢弃,从而导致数据丢失。现在,在这种情况下,将采取步骤确保在允许发生日志旋转之前处理所有事件。(Bug #13545447, Bug #67929)
参考文献:参见Bug #16016886。
复制:如果在写入二进制日志时磁盘已满,服务器将挂起,直到手动释放空间。在完成此操作后,MySQL服务器可能会失败,因为在不需要的时候设置了内部状态值。在这种情况下,我们不会尝试设置这个状态,而是在错误日志中写入一个警告。(Bug #11753923, Bug #45449)
微软的Windows操作系统:服务器以以下方式启动
——共享内存
为了支持共享内存连接,在接收来自多个线程的请求时可能会崩溃。(错误# 13934876)Solaris:mysql_install_db不能在Solaris 10稀疏根区域工作。(Bug #68117, Bug #16197860)
InnoDB
现在将行锁和表锁报告给线程池插件。否则线程组内可能会发生死锁。(错误# 16448639)未能正确处理全文搜索通配符可能导致服务器退出。(错误# 16446108)
显示引擎performance_schema状态
可以报告错误的内存分配值时,正确的值超过4GB。(错误# 16414644)如果准备好的语句试图在SQL处理程序打开时使用现有视图的名称创建表,则服务器可能退出。(错误# 16385711)
降低了性能模式语句标记化开销。(错误# 16382260)
类中的长数据库名
格兰特
语句可能导致服务器退出。(错误# 16372927)在Linux上,一个竞态条件涉及
epoll ()
可能导致线程池插件错过事件。这很可能发生在超过16核的系统上。(错误# 16367483)一些聚合查询试图分配过多的内存。(错误# 16343992)
对于调试构建,如果语句失败,并且在操作之前启用了自动提交,则可能引发断言
XA开始
发表了声明。(错误# 16341673)非常小的
join_buffer_size
值可能导致引发断言。(错误# 16328373)的
BUILD-CMAKE
的正确URL更新了MySQL发行版中的CMake信息。(错误# 16328024)类中包含子查询的准备语句时,优化器试图删除冗余子查询子句,从而引发断言
在
子查询中连接的子句。(错误# 16318585)这个问题是Bug #15875919的回归。
类中包含子查询的查询将返回不正确的结果
在
载有XOR
在在哪里
条款。(错误# 16311231)如果发生故障,可能会发生Valgrind故障
创建用户
语句被记录到通用查询日志和old_passwords
系统变量设置为2。(错误# 16300620)对于调试版本,检查密码约束可能会引发更新密码语句的断言。(错误# 16289303)
将数值转换为
位
可能会产生意想不到的结果。(错误# 16271540)修正了使用XCode 4.6编译时的警告。修正了编译时的警告
_XOPEN_SOURCE
或isoctal
宏已经在环境中定义了。(Bug #16265300, Bug #60911, Bug #12407384)在范围优化器中,索引合并失败可能导致服务器退出。(错误# 16241773)
对于升级操作,RPM包会出现无法访问等不必要的错误
.err
文件。(错误# 16235828)使用使用LooseScan半连接策略计算的范围谓词的查询可能返回重复的行。(错误# 16221623)
这个问题是Bug #14728469的回归。
一定的法律
有
条款因无效而被驳回。(错误# 16221433)yaSSL没有执行适当的填充检查,而是只检查cleartext的最后一个字节,并使用它来确定要删除多少字节。(错误# 16218104)
的性能模式可能返回不正确的值
PROCESSLIST_INFO
的列线程
表格(错误# 16215165)使用布尔模式的全文查询在某些情况下,当搜索词是引用的短语时,可能返回零结果:
如果引用的短语前面有一个+号。例如,布尔+运算符和短语的组合将返回零结果:
WHERE MATCH(content) AGAINST(布尔模式中由于加号"'而要求的术语)
引用的短语是否包含任何停顿词。例如,短语中的停止词“the”会导致查询返回零结果:
WHERE MATCH(content) AGAINST(短语"'中的'"停止词)
(Bug #16206253, Bug #68150)
mysql_config——填词显示错误的输出。(错误# 16200717)
对象的范围优化器的调用
零
选择导致服务器退出。(错误# 16192219)如果,在
选择
,有
子句包含函数调用,该函数调用本身包含所选表达式的别名,服务器有时会退出。(错误# 16165981)对于调试构建,服务器可能会因为涉及的连接的适用索引计算不正确而退出
常量
表。(错误# 16165832)范围优化中的一个bug有时会导致索引合并合并的条件计算不正确。这可能导致丢失行。(Bug #16164031, Bug #68194, Bug #16229746)
对于一个
创建表(…
语句,其中col_name
时间戳默认值current_timestamp…)选择选择
没有提供值时间戳
列,该列被设置为'0000-00-00 00:00:00',而不是当前的时间戳。(错误# 16163936)使用
分组通过rollup
可能导致服务器退出。(错误# 16163596)启用线程池插件后,大量的连接可能会导致Valgrind恐慌或客户端无法连接。(Bug #16088658, Bug #16196591)
从工作线程缺少性能模式检测。(错误# 16083949)
服务器执行
解释格式= JSON
对于一些格式不正确的查询。(错误# 16078557)使用基于语句的二进制日志记录,删除一个
临时
InnoDB
表可能导致分割错误。(错误# 16076275)设置
slave_rows_search_algorithms
将系统变量设置为不适当的值可能导致服务器退出。(错误# 16074161)设置密码
而且授予……确认的
对使用认证插件访问mysql外部存储的密码进行认证的用户的密码没有影响。用户表。但当试图修改这样一个用户的密码时,却没有产生任何警告,导致人们误以为密码被修改过,但实际上并没有。现在MySQL发出一个ER_SET_PASSWORD_AUTH_PLUGIN
警告,表明该尝试被忽略。(错误# 16072004)目录名操作可能导致OS X和Windows上的堆栈溢出。(错误# 16066243)
最初的
测验
数据库包含dummy.bak
阻止的文件删除数据库
从工作。不再包含此文件。同样,一个db.opt
现在包含的文件包含以下行:default-character-set = latin1默认校对= latin1_swedish_ci中的一个
(错误# 16062056)
发出一个
准备
语句使用存储函数和用户变量的某些组合导致服务器退出。(错误# 16056537)将系统变量设置为
默认的
可能导致服务器退出。(错误# 16044655)对于调试构建,如果启动服务器时禁用了二进制日志记录,则正在执行
显示中继日志事件
从存储过程中抛出断言。(错误# 16043173)查询解析器由于某些语法错误而泄漏内存。(错误# 16040022)
在关闭期间,服务器可能试图锁定一个未初始化的互斥锁。(错误# 16016493)
的
——default-authentication-plugin
选项允许无效的插件值,并且不总是设置old_passwords
系统变量设置为与指定插件相适应的值。(错误# 16014394)的
——character-set-server
选项可以将连接字符集系统变量设置为诸如ucs2
那是不允许的。(Bug #15985752, Bug #23303391)在某些情况下,mysql——secure-auth允许使用旧的(4.1之前的)散列格式将密码发送到服务器。(错误# 15977433)
当一个分区丢失时,输入代码
ha_innodb.cc
会重试10次,每次抱着的时候睡一微秒吗LOCK_open
.分区表的重试逻辑是作为Bug#33349的修复而引入的,但没有包含验证它的测试用例。此修复程序删除了分区表的重试逻辑。如果Bug#33349报告的问题再次出现,将探索不同的解决方案。(错误# 15973904)连接32个表,并且包含一个
有
子句返回空结果。(错误# 15972635)一个
mysys
库字符串格式化例程可能会错误处理宽度说明符。(错误# 15960005)表创建操作将条目添加到
file_instances
表,但在表删除操作时并不总是删除这些表。(错误# 15927620)启用索引条件下推后,下推条件在所使用的索引中不包含列的查询可能会变慢。(错误# 15896009)
带有
/ / /任何存在
的子查询命令
子句按类型的外列排序团
不在选择列表中的,会触发断言。(错误# 15875919)参考文献:参见Bug #14728142。
在特殊情况下,优化器不考虑适用于查询处理的索引,从而导致潜在的次优执行和错误执行
解释
输出。(Bug #15849135, Bug #16094171)创建一个
InnoDB
有扶手的桌子全文
如果表名包含非字母数字字符,索引可能会遇到严重错误。(Bug #14835178, Bug #16036699)在高客户机争用期间启用查询缓存可能导致服务器退出。(错误# 14727815)
MSI安装程序安装MySQL在”每个用户”模式,如果两个用户在同一台机器上安装了MySQL,则可能导致冲突或无法检测现有的安装。现在MSI安装程序使用”每台机器”安装模式。(错误# 14711808)
服务员有时不尊重人
MAX_CONNECTIONS_PER_HOUR
限制用户连接。(错误# 14627287)对象转换后,优化器可能返回不正确的结果
在
具有聚合函数的子查询存在
子查询。(错误# 14586710)设置密码
对于匿名用户无法正常工作。(错误# 14561102)当客户端程序失去与MySQL服务器的连接,或者在客户端执行后服务器开始关闭时
mysql_stmt_prepare ()
,下一个mysql_stmt_prepare ()
返回一个错误(如预期),但随后发生mysql_stmt_execute ()
调用会使客户端崩溃。(错误# 14553380)以前,如果多个
——登录路径
他们给出了选择,mysql_config_editor除了最后一个,其他都忽略了。现在多个——登录路径
选项将导致错误。(错误# 14551712)的
sha256_password_private_key_path
而且sha256_password_public_key_path
的关键文件sha256_password
验证插件,但服务器无法正确检查密钥文件是否有效。现在,如果其中一个密钥文件无效,服务器将记录错误并退出。(错误# 14360513)集
可能导致服务器退出。现在禁止使用这种语法,因为在var_name
=值(col_name
)集
上下文没有列名,语句返回ER_BAD_FIELD_ERROR
.(错误# 14211565)的
COM_CHANGE_USER
客户端/服务器协议中的命令没有正确使用命令报文中的字符集号,导致报文中其他值的字符集转换错误。处理步骤(错误# 14163155)调用
FORMAT ()
函数带有区域设置和非常大的数字,可能导致服务器退出。(错误# 14040155)yaSSL拒绝了一些有效的服务器SSL证书。(错误# 13777928)
某些插件相关的条件可以使用户帐户不可用:
帐户需要一个身份验证插件,但没有加载。
帐户要求
sha256_password
认证插件,但服务器启动时没有启用SSL或RSA,如该插件所要求的。
服务器现在默认情况下检查这些条件,并为不可用的帐户产生警告。这种检查减慢了服务器初始化和
冲洗的特权
,所以它是可选的通过新validate_user_plugins
系统变量。默认情况下,该变量是启用的,但如果不需要额外的检查,可以在启动时禁用它,以避免性能下降。(Bug #13010061, Bug #14506305)将未知的时区规范传递给
CONVERT_TZ ()
导致内存泄漏。(错误# 12347040)过时了的
linuxthreads.txt
而且glibc-2.2.5.patch
的文件文档
MySQL发行版目录已被删除。(错误# 11766326)mysql_install_db没有逃脱
“_”
写入授予表的语句的主机名中。(错误# 11746817)与
explicit_defaults_for_timestamp
启用,插入零
成一个时间戳不是空的
列现在产生一个错误(就像它已经为other所做的那样非空
数据类型),而不是插入当前时间戳。(Bug #68472, Bug #16394472)的处理
SQL_CALC_FOUND_ROWS
结合命令
而且限制
可能导致不正确的结果FOUND_ROWS ()
.(Bug #68458, Bug #16383173)如果
INET6_NTOA ()
或INET6_ATON ()
返回零
对于结果集中的一行,还返回以下行零
.(Bug #68454, Bug #16373973)类中具有聚合的非分组外部查询和聚合的非分组子查询的语句
选择
列表可能返回不正确的结果。(Bug #68372, Bug #16325175)添加一个
命令
后的条款在
子查询可能导致返回重复的行。(Bug #68330, Bug #16308085)如果服务器是用
——skip-grant-tables
,修改用户…密码到期
导致服务器退出。(Bug #68300, Bug #16295905)配置与
-DWITH_SSL = /道路/ / openssl
由于选择错误导致链接错误libcrypto
.(Bug #68277, Bug #16284051)如果mysql是建立与捆绑
libedit
库,该库是作为静态代码构建的,以避免在运行时链接到不同的动态版本。动态链接可能导致使用不同的、不兼容的版本和段错误。(Bug #68231, Bug #16296509)在Performance Schema收集的统计数据中,服务器在调用存储引擎时执行的一些表I/O缺失。(Bug #68180, Bug #16222630)
的Perl版本mysql_install_db错误处理了一些错误消息。(Bug #68118, Bug #16197542)
对于小数秒大于6小数点的参数,
SEC_TO_TIME ()
截断的,而不是四舍五入的。(Bug #68061, Bug #16093024)类中具有许多值的查询
在()
子句运行缓慢,这是因为在非调试版本中包含了调试代码。(Bug #68046, Bug #16078212)参考文献:参见Bug #58731, Bug #11765737。
ALTER TABLE
插入tbl_name
添加一列col_name
更新current_timestamp时默认的current_timestamp0000-00-00就是
而不是当前的时间戳,如果更改是在适当的位置进行的,而不是通过进行表复制。(Bug #68040, Bug #16076089)mysqld_safe使用不可携带的
- e
测试构造。(Bug #67976, Bug #16046140)非空间索引只支持对空间列的精确匹配查找,但是优化器使用错误
范围
访问,导致不正确的结果。(Bug #67889, Bug #15993693)为
解释删除
而且解释更新
的possible_keys
列列出了所有索引,而不仅仅是适用的索引。(Bug #67830, Bug #15972078)如果配置了MySQL,则构建失败
WITH_LIBWRAP
启用。(Bug #67018, Bug #16342793)CMake是否没有检查系统
zlib
有MySQL所需的某些功能,导致构建错误。现在它检查并回落到绑定zlib
如果函数缺失。(Bug #65856, Bug #14300733)如果转储文件包含具有一个字符集和排序规则的视图,并且在具有不同字符集和排序规则的视图上定义了排序规则,则尝试使用”非法混合整理”错误。(Bug #65382, Bug #14117025)
如果服务器启动时没有
——datadir
选项,显示变量
的空值datadir
系统变量。(Bug #60995, Bug #12546953)对于调试构建,使用
选择……从双
嵌套子查询引发断言。(Bug #60305, Bug #11827369)的
——log-slow-admin-statements
而且——log-slow-slave-statements
命令选项现在在运行时作为log_slow_admin_statements
而且log_slow_slave_statements
系统变量。它们的值可以使用显示变量
.变量是动态的,因此可以在运行时设置它们的值。(实际上,选项是取代通过系统变量,但由于系统变量可以在服务器启动时设置,没有选项功能丢失。)内存不足的情况可能在处理内存不足的错误时发生,导致错误处理中的递归。(Bug #49514, Bug #11757464)
的
替换()
函数在将用户变量作为参数提供且对多行执行操作时,会产生错误的结果。(Bug #49271, Bug #11757250)联盟
类型转换可能会错误地将无符号值转换为有符号值。(Bug #49003, Bug #11757005)设置
max_connections
设置为小于当前打开连接数的值,将导致服务器退出。(Bug #44100, Bug #11752803)对于这种访问方法不适用的某些查询,优化器使用松散索引扫描(Loose Index Scan)。(Bug #42785, Bug #11751794)
在低内存条件下的视图访问可能会引发调试断言。(Bug #39307, Bug #11749556)