web-dev-qa-db-ja.com

どのmysqlが実行されているかを見つけます

同じマシンにmysql5.5とpercona5.5をインストールしました。実行中のdbがmysqlであるかperconaであるかを識別できません。 IS違いを特定する方法はあります。

2
Bathakarai

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サーバーに接続するときにこれを取得する必要があります

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>

警告

私が提案したことは、MySQL5.1以降とPerconaServer5.1以降で機能します。

MySQLまたはPerconaServerのバージョン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}

試してみる !!!

3
RolandoMySQLDBA

次のコマンドを実行します

mysqladmin variables | grep version_comment | awk '{print $2}'
2
vdharan