以下在centos中操作。
前提:在实际项目中,我们有些任务根据要求会做成脚本在服务器运行。
这次,我要把建表的任务放在服务器运行。
拆开来看就是创建定时任务和脚本操作数据库。
脚本操作数据库
创建一个.sh的脚本。比如我创建的是create.sh。以下是内容:
#!/bin/sh user='root' pass='root' name='timing'
timestamp=`date -d "next month" +%Y%m` tablename=$name$timestamp
mysql -uroot -proot <<EOF USE $name
CREATE TABLE IF NOT EXISTS $tablename ( id int(11) NOT NULL, user_id int(11) NOT NULL, bracelet_id int(11) NOT NULL ) ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 COMMENT='test';
EOF exit;
注意不要使用`这个倒引号。
重要:设置执行权限:我直接赋予最高 chmod 777 create.sh
写好的脚本记得先运行一下看脚本是否有错误。
定时任务
我们需要用到crontab这个命令。
-e:编辑该用户的计时器设置; -l:列出该用户的计时器设置; -r:删除该用户的计时器设置; -u<用户名称>:指定要设定计时器的用户名称。
首先使用crontab -e去编辑定时器设置,比如我的定时器
?表达式参数如下,这样应该很明了:
?编辑完之后保存退出。
然后重启定时任务:service crond restart
定时操作数据库完成。
补充
|