分类文档存档:开发
MariaDB 10.0.0 发布于十多年前(2012 年 11 月 12 日),你可能会问自己 MariaDB 11.0.0 何时发布。如果是这样,我可以回答你:就在今天。
您现在可以从我们的专用下载页面下载 MariaDB Server 11.0 Alpha 预览版,并查看发行说明。
时光飞逝……
当然,我们启用新的首位版本号有比仅仅十年过去更好的理由。重要的新特性。与早期版本存在重大不兼容性。
…
向 MariaDB 或 MySQL 服务器实例添加功能的最直接方法之一是创建用户定义函数(UDF)。这些是可从动态二进制文件加载的编译函数,比用 SQL 编写的函数性能更高、更灵活,提供与内置函数相同的功能。
这些 UDF 通常用 C 或 C++ 编写,但现在有一个库可以轻松地用 Rust 编写它们。这篇博客讨论了编写这个库的一些理由,然后是一个非常基础的用法示例,无需任何 Rust 语言经验即可理解。
…
这可能早就该做了,但根据最近发生的事件,我们在 MariaDB Foundation 启动了行为准则项目。我们的目标是征集您的反馈,并在如果意见趋同的情况下,理想地在 1 月底之前制定出行为准则(CoC)。
与此同时,如果我们在 MariaDB 邮件列表或其他地方看到不可接受的行为,我们将采取行动。对于那些曾有过不愉快经历而我们过去未采取任何行动的人,我们在此表示歉意。
关于行为准则的措辞,我们的目标是力求简洁。宏伟的目标往往会引发分散注意力的争论;
…
MariaDB 10.11.0,我们的最新预览版本,包含相当多的改进。我们在这里将要讨论的是 replicate-rewrite-db。这个选项从 10.11.0 版本开始,基于 MDEV-15530 成为一个系统变量。在此版本之前,它只是 mariadbd 和 mariadb-binlog 二进制文件使用的选项。此选项的行为没有改变;它只是变成了一个动态变量。
如何尝试此功能
最快的方法是在 docker / podman 中试用 MariaDB 10.11(请参阅博客 mariadb-replication-using-containers),使用以下命令:
要启动一个主 10.11.0 MariaDB 容器,请克隆目录,导航到克隆的目录并运行以下命令:
docker run -d –rm –name mariadb-primary \
-v $PWD/config-files/primarycnf:/etc/mysql/conf.d:z \
-v $PWD/primaryinit:/docker-entrypoint-initdb.d:z \
-v $PWD/log-files-primary:/var/lib/mysql \
-e MARIADB_ALLOW_EMPTY_ROOT_PASSWORD=True \
quay.io/mariadb-foundation/mariadb-devel:10.11
要启动副本/secondary,请运行启动 mariadbd 进程的命令,并在命令行上指定 replicate-rewrite-db 选项:
docker run -d –rm –name mariadb-secondary-1 \
-v $PWD/config-files/secondary-1:/etc/mysql/conf.d:z \
-v $PWD/secondaryinit:/docker-entrypoint-initdb.d:z \
-v $PWD/log-files-secondary-1:/var/lib/mysql \
-e MARIADB_ALLOW_EMPTY_ROOT_PASSWORD=True \
quay.io/mariadb-foundation/mariadb-devel:10.11 –replicate-rewrite-db=’db1->db2′
除了将选项指定为命令行参数外,您还可以使用配置文件。
…
MariaDB 10.11.0,我们的最新预览版本,包含相当多的改进。我们今天将要讨论的是 GRANT … TO PUBLIC。
背景
MariaDB 有相当复杂的权限系统。其中大部分基于 SQL 标准规范;但我们确实有一些特定的 MariaDB 扩展。GRANT … TO PUBLIC (MDEV-5215) 是一个标准特性,现在在 MariaDB 10.11.0 中作为预览版提供。它与 ROLES 和 DEFAULT ROLE 相关,但涵盖了不同的用例。
ROLES 实际上是用户可以启用和禁用的“权限包”。
…
我已经在 MariaDB Foundation 工作了几个星期,担任首席贡献官,很高兴再次成为 MariaDB 大家庭的一员。我的工作一部分是帮助社区调整拉取请求,使其可以被合并。然而,我发现工作中糟糕的一点是不得不对那些显然花费了开发者大量时间和精力的贡献说“不”。
贡献可能因为多种原因被拒绝或至少需要修改。
…