0

我正在尝试检查 mysql 查询输出并将结果与​​我的 Nagios 服务检查的一些值进行比较。
可能有更好的方法来解决这个问题(如果是这样 - 请分享:))......现在,我正在尝试这种方法:

./check_mysql_health --username root --password MyPassw0rd --mode sql --name 'show variables like 'max_connections'' --name2 "max_connections 4096"

PS:我的 max_connections 是 4096

mysql -Bse "show variables like 'max_connections';"
max_connections 4096

输出是:

Use of uninitialized value $value in numeric gt (>) at ./check_mysql_health line 1237.
    Use of uninitialized value $value in numeric gt (>) at ./check_mysql_health line 1238.
    OK - max_connections 4096:

如果我将 name2 中的值更改为不等于“max_connections 4096”的值,例如“G1Li”,则输出返回 OK 状态。

    ./check_mysql_health --username root --password MyPassw0rd --mode sql --name 'show variables like 'max_connections'' --name2 "G1Li" 
Use of uninitialized value $value in numeric gt (>) at ./check_mysql_health 

line 1237.
    Use of uninitialized value $value in numeric gt (>) at ./check_mysql_health line 1238.
    OK - g1li:
# echo $?
0

有任何想法吗?

吉利

4

1 回答 1

0

我对此也很陌生,这可能会有所帮助,

./check_mysql_health --username root --password MyPassw0rd --mode sql \
--name 'show 1,variables like 'max_connections'' --name2 "status max_connections 4096"

我们将其用于 Oracle。我不确定那个状态,但那个 1 是正确的。

或者您可以根据需要在该插件中添加更多模式(有两个主要部分,一个用于远程/本地执行 sql 查询,另一个用于解析 nagios/icinga 的结果数据)!那将是一个更好的解决方案。

于 2016-10-21T15:56:18.867 回答