MariaDB 系统版本控制表即使在 MariaDB 升级后也无法在本地工作
MariaDB System Versioned Tables Do Not Work Locally Even After MariaDB upgrade
所以我以前通过自制软件在我的 mac 上安装了 mysql。我盯着卸载它,然后用 brew install mariadb
安装了 maria
这显示了这个版本
> mysql --version
mysql Ver 15.1 Distrib 10.7.3-MariaDB, for osx10.17 (arm64) using EditLine wrapper
还有这个:
mariadb --version
mariadb Ver 15.1 Distrib 10.7.3-MariaDB, for osx10.17 (arm64) using EditLine wrapper
我可以 运行 mariadb 并使用此命令连接到它:
mariadb -u root -p
但是,我无法使用称为系统版本表的 mariaDB 的新功能。
我已遵循此指南:https://mariadb.com/kb/en/system-versioned-tables/ 并输入此命令
MySQL [(none)]> CREATE TABLE t ( x INT ) WITH SYSTEM VERSIONING;
这给出了这个错误:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SYSTEM VERSIONING' at line 1
为了进一步测试,我在 aws 中创建了一个 MariaDB 实例,并使用运行良好的相同命令在本地连接到它。 RDS支持的版本是10.6
问题:“为什么我本地的mariadb实例不能识别关键字SYSTEM
?
我不知道如何在本地调试这个,我想知道为什么这个版本的 mariadb 无法在本地识别这些命令。寻找一些调试技巧。
编辑:另一件要检查的事情是在 mariadb 控制台中 select 版本
MySQL [(none)]> select version();
+-----------+
| version() |
+-----------+
| 8.0.28 |
+-----------+
8.0.28 是一个 MySQL 版本,它没有 System Versioned Tables,只有 MariaDB 有(无论如何在这篇文章发布时)。
如前所述,mysql --version
仅显示 MySQL(或通过兼容性链接的 MariaDB)客户端的版本。它不显示服务器版本。
所以我以前通过自制软件在我的 mac 上安装了 mysql。我盯着卸载它,然后用 brew install mariadb
这显示了这个版本
> mysql --version
mysql Ver 15.1 Distrib 10.7.3-MariaDB, for osx10.17 (arm64) using EditLine wrapper
还有这个:
mariadb --version
mariadb Ver 15.1 Distrib 10.7.3-MariaDB, for osx10.17 (arm64) using EditLine wrapper
我可以 运行 mariadb 并使用此命令连接到它:
mariadb -u root -p
但是,我无法使用称为系统版本表的 mariaDB 的新功能。
我已遵循此指南:https://mariadb.com/kb/en/system-versioned-tables/ 并输入此命令
MySQL [(none)]> CREATE TABLE t ( x INT ) WITH SYSTEM VERSIONING;
这给出了这个错误:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SYSTEM VERSIONING' at line 1
为了进一步测试,我在 aws 中创建了一个 MariaDB 实例,并使用运行良好的相同命令在本地连接到它。 RDS支持的版本是10.6
问题:“为什么我本地的mariadb实例不能识别关键字SYSTEM
?
我不知道如何在本地调试这个,我想知道为什么这个版本的 mariadb 无法在本地识别这些命令。寻找一些调试技巧。
编辑:另一件要检查的事情是在 mariadb 控制台中 select 版本
MySQL [(none)]> select version();
+-----------+
| version() |
+-----------+
| 8.0.28 |
+-----------+
8.0.28 是一个 MySQL 版本,它没有 System Versioned Tables,只有 MariaDB 有(无论如何在这篇文章发布时)。
如前所述,mysql --version
仅显示 MySQL(或通过兼容性链接的 MariaDB)客户端的版本。它不显示服务器版本。