$ mysql mysql> status
除此之外,还有没有其他方法可以使用ssh来远程检查状态? 由于有很多mysql服务器,我不想ssh到他们每个人。 谢谢。
试试mysqladmin ,它可以查询数据库的状态。
在本地主机上,您可以将密码存储在〜/ .my.cnf文件中 (确保权限是严格的)。 以下是MySQL 5.1手册中的一个例子:
[client] # The following password will be sent to all standard MySQL clients password="my_password"
然后,你可以像这样自动查询远程MySQL服务器:
mysqladmin --host=db1.example.org --user=admin status Uptime: 884637 Threads: 1 Questions: 5534424 Slow queries: 144 Opens: 4444 Flush tables: 21 Open tables: 166 Queries per second avg: 6.259
您需要确保远程服务器上的防火墙允许这些连接。 您还需要检查MySQL特权是否允许从远程主机进行这种访问。 如果您担心LAN上的数据包嗅探,则将MySQLconfiguration为使用SSL 。
通过ssh运行命令可以避免这些麻烦。
ssh db1.example.org "mysqladmin status"
你可以把它合并成一个命令:
ssh server 'echo status|mysql'
除此之外,如果你想进一步自动化,我会看像木偶的工具。