MySQL 8.0 中删除了哪些功能?


一些功能已过时,并已从 MySQL 8.0 中移除。当显示这些移除项的替代方案时,需要使用它们以避免进一步的复杂性。

  • 已移除系统变量 ‘innodb_locks_unsafe_for_binlog’。
  • 可以使用 ‘READ COMMITTED’ 隔离级别,因为它具有类似的行为。
  • 将系统升级到 MySQL 8.0.3 或更高版本后,必须升级引用先前 InnoDB INFORMATION_SCHEMA 视图名称的脚本。

一些帐户管理属性已被移除。下面列出了一些。

  • 不要使用 ‘GRANT’ 创建用户,请使用 ‘CREATE USER’。
  • 已移除查询缓存。
  • 已弃用的查询缓存项仍然已弃用,并且无效。它们可能会在即将发布的 MySQL 版本中移除。
  • 数据字典提供有关数据库对象的信息,因此服务器不会检查数据目录中的目录名称以查找数据库。
  • 这表明 ‘--ignore-db-dir’ 选项和 ‘ignore_db_dirs’ 系统变量不再需要,因此已移除。
  • 已移除系统变量 ‘tx_isolation’ 和 ‘tx_read_only’。可以使用 ‘transaction_isolation’ 和 ‘transaction_read_only’ 来代替它们。
  • 已移除系统变量 ‘secure_auth’ 和 ‘multi_range_count’、客户端选项 ‘--secure-auth’ 以及 ‘mysql_options()’ C API 函数的 ‘MYSQL_SECURE_AUTH’ 选项。
  • 已移除系统变量 ‘log_warnings’ 和服务器选项 ‘--log-warnings’。需要使用系统变量 ‘log_error_verbosity’ 来代替。
  • 解析器不再将 \N 作为 SQL 语句中 NULL 的同义词处理。因此,必须改用 ‘NULL’ 值。
  • 已移除 PROCEDURE ANALYSE() 语法。
  • 已移除服务器选项 ‘--temp-pool’。
  • 已移除系统变量 ‘ignore_builtin_innodb’。
  • 已移除实用程序 ‘resolveip’。可以使用 ‘nslookup’、‘host’ 或 ‘dig’ 来代替。
  • 已移除对 DTrace 的支持。
  • 已移除 ‘JSON_APPEND()’ 函数。可以使用 ‘JSON_ARRAY_APPEND()’ 来代替。

更新于:2021年2月24日

553 次浏览

开启您的职业生涯

通过完成课程获得认证

开始学习
广告