1. 程式人生 > >Linux下如何定時執行mysql命令

Linux下如何定時執行mysql命令

1、Linux中的定時任務:

1-1.Linux中每行定時任務的描述格式如下:
minute hour day month dayofweek command minute - 從0到59的整數 
hour - 從0到23的整數 
day - 從1到31的整數 (必須是指定月份的有效日期)
month - 從1到12的整數 (或如Jan或Feb簡寫的月份)
dayofweek - 從0到7的整數,0或7用來描述週日 (或用Sun或Mon簡寫來表示)
command - 需要執行的命令(可用as ls /proc >> /tmp/proc或 執行自定義指令碼的命令)
1-2.檢視配置的定時任務:crontab -l
1-3.編輯配置的定時任務: crontab -e
1-4.關閉配置的定時任務: service crond stop 1-5.啟動配置的定時任務: service crond start
1-6.重啟配置的定時任務: service crond restart

2、每五分鐘執行下指定sql指令碼

2-1.建立指定sql檔案:vi  /opt/mysql/test.sql 2-2.按I鍵,編輯文字內容
delete from t_test;
2-3.按ESC鍵,之後輸入:wq退出編輯 2-4.編輯定時任務:輸入crontab -e 2-5.按I鍵編輯定時任務列表,新增:
*/5 * * * *  mysql -h127.0.0.1 -u root -p密碼 </opt/mysql/test.sql 2-6.按ESC鍵,之後輸入:wq退出編輯 2-7.輸入重啟Linux定時任務的命令:service crond restart 2-8.過五分鐘去資料庫驗證,檢視t_test表是否被清空 2-9.其他sql同理,參照上述步驟配置即可

3、每天0點30備份一下指定資料庫

3-1.每天0點30分將指定資料庫,備份至/opt/sqlback資料夾下,備份檔名規則為-資料庫名+年月日時分秒, 配置命令如下: 30 0 * * * mysqldump -u root -p密碼 -h127.0.0.1
--databases db_test > /opt/sqlback/db_test_`date +\%Y\%m\%d\%H\%M\%S`.sql
3-2.配置定時任務前請先執行測試命令: mysqldump -u root -p密碼 -h127.0.0.1 --databases db_test > /opt/sqlback/db_test_`date +\%Y\%m\%d\%H\%M\%S`.sql