检测日志文件触发SQL命令的批处理脚本

遇到这么一个场景:服务器A需要远程访问服务器B上的数据库,当连接失败时会生成错误日志,此时,服务器B需要执行SQL语句才能解决无法访问的问题。

因为暂时无法解决网络层问题,对此,本人想出通过检测日志文件来判断是否触发SQL命令的方法来临时解决问题,思路如下:

服务器A每隔5分钟检测是否产生了无法访问的告警日志文件,随即复制到服务器C上的共享目录(为了服务器A和B的安全),服务器B每隔5分钟检测共享目录上是否产生了日志文件,如果有则马上执行SQL语句。

系统环境

  • 三台服务器A、B、C均为Windows Server 2008
  • A和B均挂载C的共享目录,盘符为Z
  • 数据库为MySQL5.7

服务器A上的脚本文件

将以上脚本保存为bat文件,然后添加计划任务,定期执行即可。

服务器B上的脚本文件

如果是较复杂的SQL语句,可以将SQL语句调整为如下脚本:

将sqlcmd.sql保存在%mysql_bin%中,其内容就是SQL语句,比如:

将以上bat文件,同样加入计划任务,视网络情况,比A的执行时间稍晚几分钟即可。

原创文章禁止转载:技术学堂 » 检测日志文件触发SQL命令的批处理脚本

精彩评论

4+9=

感谢您的支持与鼓励

支付宝扫一扫打赏

微信扫一扫打赏