我在同一台机器上安装了 mysql 5.5 和 percona 5.5。我无法识别正在运行的数据库是 mysql 还是 percona。有什么方法可以识别它们之间的区别吗?
答案1
当你连接到 MySQL 时,只需运行
SELECT SUBSTR(variable_value,1,
LOCATE(' ',variable_value) - 1) DBVersion
FROM information_schema.global_variables
WHERE variable_name='version_comment';
当你连接到 MySQL 时你应该会得到这个
mysql> SELECT SUBSTR(variable_value,1,
-> LOCATE(' ',variable_value) - 1) DBVersion
-> FROM information_schema.global_variables
-> WHERE variable_name='version_comment';
+-----------+
| DBVersion |
+-----------+
| MySQL |
+-----------+
1 row in set (0.00 sec)
mysql>
当你连接到 Percona Server 时你应该会得到这个
mysql> SELECT SUBSTR(variable_value,1,
-> LOCATE(' ',variable_value) - 1) DBVersion
-> FROM information_schema.global_variables
-> WHERE variable_name='version_comment';
+-----------+
| DBVersion |
+-----------+
| Percona |
+-----------+
1 row in set (0.00 sec)
mysql>
警告
我的建议适用于 MySQL 5.1+ 和 Percona Server 5.1+。
对于 MySQL 或 Percona Server 5.0+ 版本,您仍然可以通过以下方式获取它:
SQL="SHOW GLOBAL VARIABLES LIKE 'version_comment'"
MYSQL_CONN="-uroot -p..."
DB=`mysql ${MYSQL_CONN} --skip-column-names -Ae"${SQL}" | awk '{print $2}'`
echo ${DB}
试一试 !!!
答案2
运行以下命令
mysqladmin variables | grep version_comment | awk '{print $2}'
答案3
当你登录到 mysql 时,它将显示你正在运行的 Mysql 版本,如果你正在运行 Percona Mysql,它将显示 Percona Mysql 版本 xyz。