当前位置: 技术问答>linux和unix
linux下如何在计划任务里执行mysql里面的命令
来源: 互联网 发布时间:2016-10-23
本文导语: 问题是这样的,用mysql做两台机的实时同步,有时候因为网络问题,导致同步出问题,这时候需要执行一下 slave stop;reset slave;start slave;这 几个命令 才可以恢复同步。 因为mysql版本比较低,所以没有办法用mysq...
问题是这样的,用mysql做两台机的实时同步,有时候因为网络问题,导致同步出问题,这时候需要执行一下 slave stop;reset slave;start slave;这 几个命令 才可以恢复同步。
因为mysql版本比较低,所以没有办法用mysql 自带的 事件来调用存储过程来实现这一目的。所以想问问,怎么能在linux的 crontab 这个计划任务里来执行这个。
因为对linux 不是很了解,所以自己现在的解决办法是,在php页面来调用 slave stop;这样的命令,但是考虑到这样安全性不够好,所以还是想能做到系统上好些。大家帮帮忙 呵呵
因为mysql版本比较低,所以没有办法用mysql 自带的 事件来调用存储过程来实现这一目的。所以想问问,怎么能在linux的 crontab 这个计划任务里来执行这个。
因为对linux 不是很了解,所以自己现在的解决办法是,在php页面来调用 slave stop;这样的命令,但是考虑到这样安全性不够好,所以还是想能做到系统上好些。大家帮帮忙 呵呵
|
1、把要执行的命令写成文件,保存成sh,权限设置要ok,
2、1)编辑crontab,在里面写入需要的操作,具体的参数可以google
或者2)根据执行的频率,放到cron.hour,cron.day等文件夹内(适合debian系列)
2、1)编辑crontab,在里面写入需要的操作,具体的参数可以google
或者2)根据执行的频率,放到cron.hour,cron.day等文件夹内(适合debian系列)
|
因为mysql版本比较低,所以没有办法用mysql 自带的 事件来调用存储过程来实现这一目的。所以想问问,怎么能在linux的 crontab 这个计划任务里来执行这个。
找出shell下对应的操作命令,然后用crontab处理就是了。
http://www.pczpg.com/html/caozuoxitong/Lunix_Unix/20090926/19289.html
可以参考下这个例子,都是类似的
找出shell下对应的操作命令,然后用crontab处理就是了。
http://www.pczpg.com/html/caozuoxitong/Lunix_Unix/20090926/19289.html
可以参考下这个例子,都是类似的
|
你可以写个 ".sh"的文件
打个比方/root/a.sh
#!/bin/sh
mysql的路径 slave stop
mysql的路径 reset slave
mysql的路径 start slave;
保存推出
然后你在命令行里写入 #crontab -e
按i 写入如下信息
30 08 * * * /root/a.sh
保存退出
以后每天的 8点半就会执行你/root/a.sh的这个文件,而a.sh里面些的就是mysql的命令
打个比方/root/a.sh
#!/bin/sh
mysql的路径 slave stop
mysql的路径 reset slave
mysql的路径 start slave;
保存推出
然后你在命令行里写入 #crontab -e
按i 写入如下信息
30 08 * * * /root/a.sh
保存退出
以后每天的 8点半就会执行你/root/a.sh的这个文件,而a.sh里面些的就是mysql的命令
|
对了,还要重启crontab
#service crond restart
#service crond restart
|
建议看看《linux鸟哥私房菜》,里面对crontab讲的很详细。