10.7 功能预览:杂项功能

“杂项功能”预览版包括所有未能放入单独专用预览二进制文件的其他功能。


MariaDB 服务器 10.7 包含 JSON_EQUALS 函数,该函数将输入作为 JSON 对象进行比较,忽略空格、键顺序或数字格式。

(更多…)

10.7 预览功能:密码重用检查插件

默认情况下,MariaDB 不检查用户是否重复使用密码。某些安全策略要求用户每次都选择新密码,MariaDB 10.7.0 预览版中提供的密码重用检查插件可以实现此功能。

旧密码存储在 mysql.password_reuse_check_history 表中,其保留时长由 password-reuse-check-interval 系统变量决定,该变量指定天数。默认情况下,此值为零,表示无限期保留。

该插件可与其他密码验证插件结合使用,例如 Simple Password Check pluginCrackLib Password Check plugin

10.7 预览功能:CONVERT PARTITION

如果您正在使用表分区,您可能听说过 ALTER TABLE … EXCHANGE PARTITION … WITH TABLE … 命令。它在 MariaDB 中一直存在。但是如果您查阅手册任何手册)或在网上搜索,您会发现它几乎唯一的用例是将分区转换为独立的非分区表,或将独立的非分区表转换为分区。

当时的设计使得其用法一点也不直观。要将分区转换为表,您首先需要创建一个与分区结构相同的空表,然后将其与分区进行交换,最后删除该空分区。

10.7 预览功能:类 Python 字符串格式化

有时需要将不同列的数据组合成一个字符串。例如,

SELECT CONCAT(first_name, ‘ ‘, last_name) FROM employees;

这看起来还不错,但如果您需要做更复杂的事情,它很快就会变得难以控制。例如,假设我们还需要在这里提及薪水

SELECT CONCAT(first_name, ‘ ‘, last_name, ‘ -‘, CAST(FORMAT(salary, 0) AS VARCHAR(10)), ‘ ‘, currency) FROM employees;

此预览展示了 MariaDB 10.7 的一项新功能,该功能由 Alan Cueva 在导师 Vicențiu Ciorbaru 的指导下,作为 Google Summer of Code (MDEV-25015) 的一部分开发。