本文共 2252 字,大约阅读时间需要 7 分钟。
MySQL 5.7 引入了许多新功能,同时也弃用了部分功能,并删除了某些不再支持的功能。以下是对这些变化的详细说明。
MySQL 5.7 提供了多项安全增强功能:
ONLY_FULL_ON_COMMIT
、TRANSITIONAL_ONLY
和 INNODB_ONLY
模式,默认情况下启用这些模式,并计划未来将其作为显式模式删除。支持重命名索引的子句,可以就地更改表,无需表复制操作,适用于所有存储引擎。
引入了内置的全文 ngram 解析器插件,支持中文、日语和韩语;以及可安装的 MeCab 解析器插件,专用于日语。
InnoDB 提供了多项改进:
MySQL 5.7.8 开始支持 JSON 数据类型,提供了丰富的 JSON 函数和聚合功能:
JSON_CREATE_ARRAY()
、JSON_CREATE_OBJECT()
、JSON_CREATE_STRING()
等函数。JSON_EXTRACT()
、JSON_OBJECTAGG()
、JSON_ARRAYAGG()
。性能架构表中的系统和状态变量信息现在在 INFORMATION_SCHEMA
中可用,影响查询和操作。
SQL_MODE
、SQL92_MODE
和 SQL99_MODE
已弃用,但默认情况下处于启用状态。未来计划将其作为显式模式删除。mysql.user
表中 IDENTIFIED_BY_PASSWORD
语法已弃用,建议改用 IDENTIFIED_WITH
。OLD_PASSWORD()
函数已弃用,改用 PASSWORD()
。SQL_CACHE
、SQL_NO_CACHE
及相关变量已弃用。COUNT_WRITE_DELAYED
等相关列已删除。--innodb
及相关选项已弃用,改用 InnoDB
系统变量。sql_log_bin
全局变量已弃用,只能使用会话变量。mysql_shutdown()
函数已弃用,建议直接关闭服务器。--secure-auth
和 --skip-secure-auth
选项已弃用。TICK
表已删除,相关信息可通过其他方式获取。mklink
创建。innodb_mirrored_log_groups
:不再支持镜像日志组,改用其他方法管理多主机环境。thread_concurrency
:该系统变量已不再有用。binary-configure.sh
:脚本已删除,建议使用其他配置方法。以上内容全面涵盖了 MySQL 5.7 的新功能、弃用和删除功能,供开发人员和数据库管理员参考。
转载地址:http://knbfk.baihongyu.com/