2.8. 从 MariaDB 10.5 升级到 MariaDB 10.11
这部分论述了在 RHEL 9 中从 MariaDB 10.5 迁移到 MariaDB 10.11。
2.8.1. MariaDB 10.5 和 MariaDB 10.11 之间的显著区别 复制链接链接已复制到粘贴板!
MariaDB 10.5 和 MariaDB 10.11 之间的显著变化包括:
-
新的
sys_schema
功能是一个视图、功能和流程的集合,用来提供有关数据库使用情况的信息。 -
CREATE TABLE
,ALTER TABLE
,RENAME TABLE
,DROP TABLE
,DROP DATABASE
以及相关的数据定义语言(DDL)语句现在都是原子的。语句必须全部完成,否则更改会被恢复。请注意,当使用DROP TABLE
删除多个表时,只有每个单独的删除是原子的,而不是表的完整列表。 -
新的
GRANT … TO PUBLIC
权限可用。 -
SUPER
和READ ONLY ADMIN
权限现在是分开的。 -
现在,您可以在新的
UUID
数据库数据类型中存储通用的唯一标识符。 - MariaDB 现在支持安全套接字层(SSL)协议版本 3。
- MariaDB 服务器现在需要正确配置的 SSL 才能启动。在以前的版本中,MariaDB 默默禁用 SSL,并在 SSL 配置错误的情况下使用不安全连接。
-
MariaDB 现在支持通过
natural_sort_key()
函数的自然排序。 -
新的
SFORMAT
功能现在用于任意文本格式化。 -
utf8
字符集(和相关排序规则)现在默认是utf8mb3
的别名。 - MariaDB 支持 Unicode Collation Algorithm (UCA) 14 排序规则。
-
MariaDB 的
systemd
套接字激活文件现在在/usr/share/
目录中提供。请注意,与上游不同,它们不是 RHEL 中默认配置的一部分。 -
错误消息现在包含
MariaDB
字符串,而不是MySQL
。 - 错误消息现在以中文提供。
- 默认的 logrotate 文件已发生了很大变化。在迁移到 MariaDB 10.11 前检查您的配置。
-
对于 MariaDB 和 MySQL 客户端,命令行上指定的连接属性(如
--port=3306
)现在强制客户端和服务器之间的协议通信类型,如tcp
、socket
、pipe
或memory
。例如,在以前的版本中,如果 MariaDB 客户端通过 UNIX 套接字连接,则指定的端口会被忽略。
2.8.2. 从 RHEL 9 的 MariaDB 10.5 版本升级到 MariaDB 10.11 复制链接链接已复制到粘贴板!
此流程描述了使用 dnf
和 mariadb-upgrade
工具从 mariadb-server
RPM 软件包提供的 MariaDB 10.5 升级到 mariadb:10.11
模块流。
mariadb-upgrade
实用程序由 mariadb-server-utils
子软件包提供,该子软件包作为 mariadb-server
软件包的依赖项安装。
先决条件
- 在执行升级前,备份存储在 MariaDB 数据库中的所有数据。
流程
停止 MariaDB 服务器:
systemctl stop mariadb.service
# systemctl stop mariadb.service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 从非模块化 MariaDB 10.5 切换到模块化 MariaDB 10.11 :
dnf module switch-to mariadb:10.11
# dnf module switch-to mariadb:10.11
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
调整配置,以便位于
/etc/my.cnf.d/
中的选项文件只包含对 MariaDB 10.11 有效的选项。详情请查看 MariaDB 10.6 和 MariaDB 10.11 的上游文档。 启动 MariaDB 服务器。
在升级独立运行的数据库时:
systemctl start mariadb.service
# systemctl start mariadb.service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在升级 Galera 集群节点时:
galera_new_cluster
# galera_new_cluster
Copy to Clipboard Copied! Toggle word wrap Toggle overflow mariadb
服务将自动启动。
执行 mariadb-upgrade 工具来检查和修复内部表。
在升级独立运行的数据库时:
mariadb-upgrade
# mariadb-upgrade
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在升级 Galera 集群节点时:
mariadb-upgrade --skip-write-binlog
# mariadb-upgrade --skip-write-binlog
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
有一些与原位升级相关的风险和已知问题。例如,一些查询可能无法正常工作,或者它们以与升级前不同的顺序运行。有关这些风险和问题的更多信息,以及有关原位升级的常规信息,请参阅 MariaDB 10.11 发行注记。