https://cloud.tencent.com/developer/article/2353798

MySQL新的进化版8.2.0于2023年10月25日发行,让我们一起快速浏览一下该版本发生哪些变化。

审计日志

* 添加了新的“audit_log_filter_uninstall.sql”脚本,简化删除“MySQL Enterprise Audit”的过程。认证 * “mysql_native_password”插件已弃用,用户可以在服务器启动时将其禁用。如果服务器端“mysql_native_password”认证方法被禁用,使用该方法的旧的客户端插件将无法连接服务器,并在错误日志中写入“Access denied”消息。

* MySQL 企业版现在支持MySQL服务器使用智能卡、安全设备等方法进行身份验证。该身份验证方法基于FIDO 和 FIDO2 标准。它使用服务器端的“authentication_webauthn”和客户端的“authentication_webauthn_client”实现C API。

* 客户端库现在支持使用查询预处理语句的属性,并引入一个新的 C API声明函数“mysql_stmt_bind_named_param()”,用以替换现已弃用的“mysql_stmt_bind_param()”函数。与 “mysql_stmt_bind_param() ”不同,“mysql_stmt_bind_named_param()” 允许绑定预处理语句的未命名和命名参数。

* mysql_ssl_set() C API 函数已弃用,并且在未来的 MySQL 版本中删除。与其等效的函数为“mysql_options()” TLS 选项。

弃用和删除

* 兼容性的变化:“WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS()” SQL 函数,在 MySQL 8.0 中已弃用,现已被删除。用户可以使用“WAIT_FOR_EXECUTED_GTID_SET()”替代。

* 复制:“binlog_transaction_dependency_tracking”服务器系统变量现已弃用,并将在 MySQL 的未来版本中删除。设置或检索该变量的值会触发警告。

* “expire_logs_days”服务器系统变量,在 MySQL 8.0 中已弃用,现已删除。用户可以使用“binlog_expire_logs_seconds”替代。

* 在 MySQL 8.0 中已弃用的服务器启动选项“--abort-slave-event-count”和“--disconnect-slave-event-count”,现已删除。

* 服务器系统变量“old”和“new”现在已弃用,将在 MySQL 的未来版本中删除。

* “--character-set-client-handshake”服务器选项,现已弃用,并将在 MySQL 的未来版本中删除。

* 使用字符 “%” 和 “_” 作为通配符,对数据库进行授权功能现已弃用,未来将删除通配符功能。另外,服务器将“%”视为“localhost”的同义词,检查权限时(即授予 'myuser'@'%' 的权限也予'myuser'@'localhost') 也从 MySQL 8.2.0开始被弃用,未来版本删除。

* “INFORMATION_SCHEMA.PROCESSLIST”已弃用,未来版本删除。因此,使用该表实现的“SHOW PROCESSLIST”也已弃用。推荐使用Performance_schema。

* SET_USER_ID 权限已弃用,未来版本删除。它现在已被这些新的权限替代:

  • SET_ANY_DEFINER 用于创建定义者对象。
  • ALLOW_NONEXISTENT_DEFINER 用于孤立对象 保护。

* “TLS_AES_128_CCM_8_SHA256”密码套件已弃用,未来版本删除。

防火墙

* MySQL Enterprise Firewall 允许其内存缓存定期重新加载防火墙中存储的数据表。以往仅在服务器启动时或服务器端插件启动时重新加载缓存。新的“mysql_firewall_reload_interval_seconds”系统变量可以设置用于重新加载表数据的日程表。

* MySQL Enterprise Firewall 以往仅能在mysql系统数据库中存储所需的表、函数和存储过程。新的 “mysql_firewall_database”服务器系统变量允许用户在服务器启动时,指定自定义的库。此外,新的脚本“uninstall_firewall.sql”简化了删除防火墙的工作。

SQL 语法

* 复制:此版本继续发布与MySQL 复制相关功能中使用的术语 。MySQL 8.2 弃用了一些SQL 语句,包括 “RESET MASTER”(使用 “RESET BINARY LOGS AND GTIDS” 代替),“SHOW MASTER STATUS”(“使用 SHOW BINARY LOG STATUS”),“SHOW MASTER LOGS”(使用 “SHOW BINARY LOGS”)和 “PURGE MASTER LOGS”(使用“BINARY LOGS”)。

此外,“DISABLE ON SLAVE” 选项在“CREATE EVENT” 和 “ALTER EVENT”上已弃用。相关变更包括以下内容:

  • mysqldump 添加了一个选项 “--output-as-version”定义转储中使用的术语级别对于与副本和事件相关的声明,使得创建转储成为可能与以前版本的 MySQL 兼容,仅接受现已弃用的术语。此选项的有效值为 “SERVER”、 “BEFORE_8_0_23” 和 “BEFORE_8_2_0” 。默认是 “SERVER”,这会令 “mysqldump” 获取服务器版本并输出命令与该版本兼容。
  • “terminology_use_previous” 服务器系统变量添加了一个新值 “BEFORE_8_2_0”。
  • SLAVESIDE_DISABLED 现已弃用。
  • Com_show_master_status 系统状态变量重新命名为 “Com_show_binary_log_status”。以前的名称已弃用,但仍支持向后兼容性。

* EXPLAIN 现在支持 “FOR SCHEMA” 或 “FOR DATABASE” 选项。该选项将假设语句已经已在选项指定的数据库中运行。

添加或更改的功能

* 非兼容更改:升级绑定的 libfido2 v1.13.0 库。该libfido2版本需要 OpenSSL 1.1.1 或更高版本。

* 重要更改:适用于支持绑定 OpenSSL 的平台,用于MySQL服务器链接的OpenSSL 库已更新至版本3.0.10。

* 重要更改:添加了对 Debian 12、Fedora 39、 macOS 14 和 Ubuntu 23.10的支持。

* mysqldump:添加了 “--ignore-views” 选项以跳过 生成的转储文件中的表视图。* mysqldump:添加了 “--init-command” 和 “--init-command-add” 选项以允许连接或重新连接MySQL后执行SQL语句。

* mysql:添加了 “--init-command-add” 选项,该选项添加连接或重新连接到 MySQL 服务器后要执行的附加 SQL 语句。它类似于“--init”命令选项。

* 添加了新的 “--no-login-paths” 命令行选项,禁止处理登录路径。已添加至每个具有 “--login-path” 选项的 MySQL 客户端。

以上内容是关于MySQL 8.2.0的简单介绍,详细内容请访问官网手册。

[转帖]MySQL 8.2.0 GA的更多相关文章

  1. mysql 5.7.9(GA) 安装

    mysql 5.7.9(GA) 终于发布了,感受一下. 一.下载 下载页面 http://dev.mysql.com/downloads/mysql/ 选择相应系统的版本下载. 本文OS为centos ...

  2. Nacos 发布 1.0.0 GA 版本,可大规模投入到生产环境

    经过 3 个 RC 版本的社区体验之后,Nacos 正式发布 1.0.0 GA 版本,在架构.功能和 API 设计上进行了全方位的重构和升级. 1.0.0 版本的发布标志着 Nacos 已经可以大规模 ...

  3. phpMyAdmin - 错误 您应升级到 MySQL 5.5.0 或更高版本,解决办法。。。

    折腾自己的个人网站,装了个数据库管理工具,遇到您应升级到 MySQL 5.5.0 或更高版本... 采用降级phpmyadmin版本的方法解决了: 查找phpmyadmin/libraries/com ...

  4. Export Data from mysql Workbench 6.0

    原文地址:export-data-from-mysql-workbench-6-0 问题描述 I'm trying to export my database, using MySQL Workben ...

  5. MySQL主机127.0.0.1与localhost区别总结

    1. mysql -h 127.0.0.1 的时候,使用TCP/IP连接, mysql server 认为该连接来自于127.0.0.1或者是"localhost.localdomain&q ...

  6. mysql awr v1.0.1发布

    现发布mysql awr v1.0.1 修复问题: 1.galera cluster下flush table/index_statistcs时如果系统中业务ddl频繁可能会导致很多进程处于prepar ...

  7. MySQL Server 5.0安装教程

    相信很多朋友刚开始接触mysql数据库服务器,下面是mysql的安装教程,步骤明细也有详细的说明. 工具/原料   mysql MySQL安装的图解   1 打开下载的mysql安装文件mysql-5 ...

  8. MySQL服务器的安装和配置,MySQL Workbench 8.0.12安装,MySQL的基本使用

    一 MySQL服务器的安装和配置 二 MySQL Workbench 8.0.12安装 三 MySQL的基本使用 一MySQL服务器的安装和配置 MySQL是目前最为流行的开放源码的数据库,是完全网络 ...

  9. Win10环境下载安装MySQL Community 8.0.12

    1.下载MySQL Community 8.0.12的免安装版,下载地址:https://dev.mysql.com/downloads/mysql/ 2.解压到D:\Program Files\My ...

  10. [转帖] mysql 用户 权限 密码等操作记录

    前言 From :https://blog.csdn.net/yu12377/article/details/78214336 mysql5.7版本中用户管理与以前版本略有不同,在此记录,以备忘 登陆 ...

随机推荐

  1. 【OpenCV】 OpenCV 源码编译并实现 CUDA 加速 (Windows)

    目录 1. 环境准备 1.1 软件环境 1. 2 源码下载 2. CMake编译项目 2.1 创建cmake项目 2.2 设置编译配置 2.3 解决异常 2.3.1 文件下载异常 2.3.2 解决CU ...

  2. 搭建vulfocus靶场

    搭建vulfocus靶场 第一种方法 docker pull一下执行如下命令即可 docker pull vulfocus/vulfocus:latest docker run -d -p 8081: ...

  3. 当创建一个ingress后,kubernetes会发什么?

    本文分享自华为云社区<当创建一个ingress后,kubernetes会发什么?>,作者:可以交个朋友. 一.Ingress概述 Ingress是一组路由转发规则合集,将集群内部服务通过7 ...

  4. TeeChart 的使用从入门到精通

    1.首先nutGet 进行使用 2.如果需要使用管方的Key 进行激活 3.直接上写的Demo代码 1 using System; 2 using System.Collections.Generic ...

  5. Docker下的SqlServer发布订阅启用

    一.准备一个Docker的sqlserver #创建挂载数据文件夹 mkdir -p /home/mssql/data #创建挂载日志文件夹 mkdir /home/mssql/log #给文件夹权限 ...

  6. C#开源的一款友好的.NET SDK管理器

    前言 今天推荐一款由C#开源的.友好的.NET SDK管理器:Dots. 工具介绍 Dots 是一款 .NET SDK 管理器,可让您轻松安装.卸载和切换 .NET SDK.它是一款跨平台工具,可在 ...

  7. UE5:相机震动CameraShake源码分析

    本文将会分析UE5中相机震动的调用流程,会简要地分析UCameraModifier_CameraShake.UCameraShakeBase等相关类的调用过程. 阅读本文,你至少需要使用或者了解过Ca ...

  8. Cesium中用到的图形技术——Computing the horizon occlusion point

    译者注:本文翻译自Cesium官方博文<Computing the horizon occlusion point>,by KEVIN RING. 你厌倦了地平线剔除吗? 太好了,我也没有 ...

  9. 《语义增强可编程知识图谱SPG》白皮书

    语义増强可编程图谱框架:新一代知识图谱语义框架/引擎.SPG+LLM双驱架构及应用相关进展和应用.<语义增强可编程知识图谱SPG>白皮书 v1.0.pdf: https://url39.c ...

  10. 互斥锁Mutex:鸿蒙轻内核中处理临界资源独占的“法官”

    摘要:本文带领大家一起剖析鸿蒙轻内核的互斥锁模块的源代码,包含互斥锁的结构体.互斥锁池初始化.互斥锁创建删除.申请释放等. 本文分享自华为云社区<鸿蒙轻内核M核源码分析系列十 互斥锁Mutex& ...