从MySQL 8.0.29版本开始,myisam_repair_threads系统变量和myisamchk的--parallel-recover选项已被弃用。预计在未来的MySQL版本中将不再支持这两个功能。
此外,从MySQL 8.0.29版本开始,对于myisam_repair_threads的非默认值(1),会发出警告提示。
以前,MySQL允许在DATE、TIME、DATETIME和TIMESTAMP字面值中包含任意数量的分隔符字符,以及在日期和时间部分之间、前后有任意数量的空白字符的DATETIME和TIMESTAMP字面值。从MySQL 8.0.29版本开始,当字面值包含以下任何内容时,服务器会引发弃用警告:
- 一个或多个非标准的分隔符字符
- 多余的分隔符字符
- 非空格字符(' ', 0x20)的多余空白字符
- 多余的空格字符
每个时间值都会发出一次弃用警告,即使它有多个问题。在严格模式下,这个警告不会升级为错误,因此在启用严格模式时,仍然可以成功执行包含这样值的INSERT操作。
您应该预期这种非标准行为将在未来的MySQL版本中被移除,并立即采取措施确保您的应用程序不依赖于它。确保您的应用程序不依赖于这种非标准行为。
从MySQL 8.0.29版本开始,replica_parallel_type系统变量及其相关的服务器选项--replica-parallel-type已被弃用。从这个版本开始,读取或设置该值会引发弃用警告,并预计在未来的MySQL版本中将删除该功能。
从MySQL 8.0.30版本开始,设置replica_parallel_workers系统变量(或等效的服务器选项)为0已被弃用,并引发警告提示。当您希望一个副本使用单线程处理时,应该使用replica_parallel_workers=1,这将产生相同的结果,但不会引发警告。
从MySQL 8.0.30版本开始,--skip-host-cache服务器选项已被弃用,并预计在未来的MySQL版本中将被移除。请改用host_cache_size系统变量替代。
从MySQL 8.0.30版本开始,用于向后兼容非常早期(5.0.3之前)版本的--old-style-user-limits选项已被弃用。现在使用它会引发警告。您应该预期这个选项将在将来的MySQL版本中被移除。
从MySQL 8.0.30版本开始,innodb_log_files_in_group和innodb_log_file_size变量已被弃用。这些变量的替代方案是innodb_redo_log_capacity变量。
CREATE TABLE `full` (c1 INT, c2 INT);
从MySQL 8.0.34版本开始,binlog_format服务器系统变量已被弃用,并有可能在将来的版本中被移除。改变二进制日志格式也被弃用,预计删除binlog_format后,行级别的二进制日志记录(在MySQL 8.0中已经是默认设置)将成为MySQL唯一支持和使用的二进制日志格式。因此,新安装的MySQL应该只使用行级别的二进制日志记录;现有采用binlog_format=STATEMENT或binlog_format=MIXED日志格式的复制设置应迁移到行级别格式。
在MySQL 8.0.34及更高版本中,设置或选择binlog_format的值会触发警告。因此,建议按照建议迁移至行级别的二进制日志格式,并遵循官方文档中关于迁移过程的指导。
从MySQL 8.0.34版本开始,mysqlpump客户端工具程序已被弃用,并有可能在将来的MySQL版本中被移除。由于MySQL提供了其他执行数据库导出和备份任务的方式,包括mysqldump和MySQL Shell等工具,因此mysqlpump被认为是冗余的。