MySQL商业服务器的链接OpenSSL库已更新到1.0.1s版本。有关此版本中修复的问题的描述,请参见http://www.openssl.org/news/vulnerabilities.html.
此更改不影响oracle生产的MySQL服务器的MySQL社区构建,它使用的是yaSSL库。(Bug #22685885, Bug #22923458)
MySQL客户端程序现在支持
——ssl-mode
选项,该选项使您能够指定到服务器的连接的安全状态。如果不指定该选项,则默认值为禁用
(建立非加密连接)。——ssl-mode =要求
可指定为要求加密连接,或在无法获得加密连接时失败。这些客户支持
——ssl-mode
:mysql,mysqladmin,mysqlcheck,, mysqldump,mysqlimport,mysqlshow,mysqlpump,mysqlslap,mysqltest,mysql_upgrade.有关更多信息,请参见加密连接的命令选项.
请注意在MySQL 5.7及更高版本中,C客户端库提供了对需要加密连接的本地支持
mysql_options ()
C API函数,传递MYSQL_OPT_SSL_MODE
选项,其值为SSL_MODE_REQUIRED
.在MySQL 8.0中,客户端库不提供这样的支持,因为这样做会破坏与本系列中以前的库版本的二进制兼容性。需要加密连接的客户端必须自己实现逻辑。为了在MySQL 8.0中要求加密连接,标准的MySQL客户端程序使用以下技术
——ssl-mode =要求
时,客户端程序打开SSL,连接到服务器,并检查生成的连接是否加密。否则,客户端退出并返回一个错误。必须能够要求加密连接的第三方应用程序可以使用相同的技术。有关详细信息,请参见mysql_ssl_set ().
InnoDB;分区:当
优化表
重建一个分区InnoDB
表中,它将生成的分区表空间文件(* .ibd
方法指定的目录),而不是使用数据目录
选择。(Bug #75112, Bug #20160327)InnoDB:运行
取代
多个连接上的操作会导致挂起。(Bug #22530768, Bug #79185)InnoDB:MySQL在同步
InnoDB
全文索引缓存。(Bug #22516559, Bug #16510576, Bug #73816)InnoDB:一个
创建表……数据目录
创建表操作失败innodb_flush_method
被设置为O_DIRECT
.(Bug #22180006, Bug #79200)这个问题是Bug #21113036的回归。
InnoDB:的
innodb_open_files
设置可能超过打开文件的限制。(错误# 22111472)复制:发行
停止奴隶
造成一个假的从服务器读取数据包错误:在查询过程中与MySQL服务器失去连接要写入错误日志的消息。通过此修复,当与主服务器的连接丢失时,将abort_slave
标志被选中,只有在未设置标志时才打印错误消息。(Bug #22305605, Bug #79504)参考文献:参见Bug #12977988, Bug #22290309。
复制:当多线程从站因错误而停止时,相同的错误消息将打印三次。现在,SQL线程的kill接受状态被保存,并且只打印一次。(Bug #21198611, Bug #77237)
复制:mysqlbinlog——详细显示二进制而且VARBINARY数据作为普通字符串,导致任何单引号(”'”)或反斜杠(”\”),这会让用户感到困惑,而且在使用反斜杠的情况下,还会导致跳过下一个字符。这种修复mysqlbinlog打印字符的十六进制值(”\ x27”对于单引号和”\ x5c”反斜杠)。(错误# 20836250)
复制:测试用例
main.merge
当变量binlog_format
被设置为”行,
”因为服务器试图在打开子表之前获取创建表的信息。通过此修复,服务器将跳过为该情况下的表获取信息。(Bug #20574550, Bug #75976)复制:如果主服务器上的查询产生错误,并且部分结果被写入二进制日志,例如由于
删除表(如果存在)
语句应用于多个表,会破坏外键约束,当配置了复制筛选器的从机遇到查询时,它可能被错误地二进制记录。这会导致以下错误:Last_SQL_Error:查询导致主、从端错误不同。master上的错误:message (format)='无法删除或更新父行:外键约束失败'错误码=1217;slave上的错误:实际消息='no Error ',错误代码=0。默认数据库:“db1”。查询:'DROP TABLE IF EXISTS ' table1 ' /*由服务器生成*/'
这个错误需要进行两个修复。
(Bug #77684, Bug #21435502)
参考文献:参见Bug #20797764, Bug #76493。
在客户端握手处理过程中可能发生整数溢出,导致服务器退出。(错误# 22722946)
RHEL6或更老版本的System-V初始化脚本未能启用
mysqld
默认服务。(错误# 22600974)当
ExtractValue ()
没有找到与提供的表达式匹配的,它返回零
而不是预期的空字符串。此问题只影响MySQL 5.6.28和5.6.29。(错误# 22552615)
X509证书中不适当的主机名检查可能允许中间人攻击。(Bug #22295186, Bug #22738607)
布尔模式全文搜索导致分割错误。(错误# 22176795)
并行选择和刷新
联邦
表,同时杀死访问它的连接可能导致服务器退出。(错误# 21918190)执行
授权代理
语句修改后的定义mysql.user
系统表可能导致服务器退出。(错误# 21699037)某些错误消息包含产生它们的部分SQL语句,可能会暴露数据。(错误# 21682356)
尽管可以使用前缀创建非临时表
# sql
, Performance Schema假定使用此前缀命名的表是临时的,可以忽略。Performance Schema现在使用表属性而不是名称来标识临时表。(Bug #21105475, Bug #22532368, Bug #79934)帐户过滤
audit_log
插件错误地使用了命名的帐户用户()
功能而不是CURRENT_USER ()
函数(后者是用于身份验证的帐户)。(Bug #19509471, Bug #22454245, Bug #77553)上的字符集转换操作
零
准备语句的参数可能导致服务器退出。(错误# 18823979)对于具有相等条件的查询,没有选择松散索引扫描。(错误# 18109609)
如果使用5.7数据目录,则MySQL 5.6服务器在启动过程中退出
mysql.plugin
表MyISAM
来InnoDB
.在这种情况下,安全关机就会发生。(Bug #79290, Bug #22216779)为
插入
而且更新
的操作引起的外键
约束违反时,报告错误,而不是警告忽略
使用关键字。(Bug #78853, Bug #22037930)参考文献:参见Bug #23135731。
对于某些查询,当范围扫描的成本相同或更低时,会选择索引合并访问计划而不是范围扫描。(Bug #77209, Bug #21178196)
当内部字符串操作产生
零
指针而不是空字符串。(Bug #74500, Bug #19875294, Bug #13358486, Bug #79988, Bug #22551116)的进程列表状态信息未正确更新
加载数据
可以显示不同的状态执行
.(Bug #69375, Bug #16912362)