我维护一个支持多个数据库后端的OpenSource项目。用户可以MySQL,Mariadb,Postgres等。

MySQL和MariadB之间的行为有所不同,我需要确定正在使用哪个数据库服务器。

只有一个MySQL连接:如何确定与之交谈的MySQL Server味道? mysql还是Mariadb?有魔术SQL查询吗?

注意:select version();没有提供有关我们是否与MySQL或MariaDB服务器交谈的任何信息。

分析解答
show variables like 'version%';

mysql:https://dbfiddle.uk/jiksphR2

Variable_name Value
version 8.0.30
version_comment MySQL Community Server - GPL

Mariadb:https://dbfiddle.uk/o_jYif0i

Variable_name Value
version 10.6.9-MariaDB-1:10.6.9+maria~deb11
version_comment mariadb.org binary distribution

对于操作系统,体系结构等,还有其他版本变量,但是上面的两个是最相关的。