日期:2014-05-16  浏览次数:20713 次

祝十豆三生日快乐,另征集定时执行mysql数据库任务方案。
本月大事:
==================================================
十豆三...................生日 10-21
trainee (春泥)..........在大版 升星
nianzhang747 (飓风)....上月末入榜本月已升至67名
==================================================


另征集 如何定时执行数据库任务。

命题: 每日 02:00 am 定时删除 表 t (id int primary key,ptime TIMESTAMP DEFAULT CURRENT_TIMESTAMP) 中三天以前的记录。  


先自己扔块砖头出来。

在WINDOWS 操作系统中 的计划任务中定时操作, 
进入WINDOWS的命令行, (开始->运行-> 输入 cmd 回车

C:\>at 02:00 /every:M,T,W,Th,F,S,Su "C:\Program Files\MySQL\MySQL Server 5.1\bin\mysql.exe" -u root -p123 csdn -e "delete from t where ptime<date_sub(curdate(),interval 3 day)"
Added a new job with job ID = 1

C:\>at
Status ID Day Time Command Line
-------------------------------------------
  1 Each Monday... 上午 02:00 "C:\Program Files\MySQL\MySQL
Server 5.1\bin\mysql.exe" -u root -p123 csdn -e "delete from t where ptime<date_
sub(curdate(),interval 3 day)"

C:\>

当然你可以直接利用widnows的控制面板中的计划任务管理图形操作界面来设置这个任务。 如果你用上述命令创建后,也可以到计划任务管理中找到这个AT的任务项。




------解决方案--------------------
再祝福&恭喜

祝十三生日快乐!

祝贺trainee、nianzhang747
------解决方案--------------------
可惜啊
我马上要转移了

不知道能在改版还能带多长时间

马上要去研究google技术了
------解决方案--------------------
多谢楼主及各位!
------解决方案--------------------
祝贺。。

学习。。
------解决方案--------------------
hapi bsday !!!!
------解决方案--------------------
哈哈,,定时更新。

用一个能更新数据库的软件。。

在软件里设置定在2点。。执行这条语句,,就OK了。

哈哈

菜鸟有菜鸟的招啊。
------解决方案--------------------
现在只有三种方案,我所知道的。
1. MySQL 本身的JOB.
2. 操作系统的JOB.
3. 应用服务器自身的JOB.
------解决方案--------------------
我来补充一下linux的吧
1、创建backup.sh文件
Perl code
#!/bin/sh

export MYSQLBAKDATE=`date +%Y%m%d`
# echo $MYSQLBAKDATE
export OUTFILE=$MYSQLBAKDATE'.TestDB.dbf'
# echo $OUTFILE
rm -f /bak/$OUTFILE
/usr/local/mysql/bin/mysqldump -uroot -p****** -R TestDB > /bak/$OUTFILE
gzip /bak/$OUTFILE

#END

------解决方案--------------------
gx and study