crontab 定時備份 出現permission:denied


主要原因是第一天晚上沒有進入到Mac的root權限,所以一直就是權限不足。

今天我會了進入Mac root權限了,我一試就好了。

contab 定時命令:

* * * * * /bin/sh /Users/wky/Desktop/backup.sh > /Users/wky/Desktop/backup.txt 2&> 1 

這個是每分鍾備份一次。

********************************************************************************************

參考:http://blog.csdn.net/xiyuan1999/article/details/8160998

5. crontab命令

      cron服務提供crontab命令來設定cron服務的,以下是這個命令的一些參數與說明:

        crontab -u //設定某個用戶的cron服務,一般root用戶在執行這個命令的時候需要此參數  
  crontab -l //列出某個用戶cron服務的詳細內容
  crontab -r //刪除沒個用戶的cron服務
  crontab -e //編輯某個用戶的cron服務
  比如說root查看自己的cron設置:crontab -u root -l
  再例如,root想刪除fred的cron設置:crontab -u fred -r
  在編輯cron服務時,編輯的內容有一些格式和約定,輸入:crontab -u root -e
  進入vi編輯模式,編輯的內容一定要符合下面的格式:*/1 * * * * ls >> /tmp/ls.txt
        任務調度的crond常駐命令
        crond 是linux用來定期執行程序的命令。當安裝完成操作系統之后,默認便會啟動此  

       任務調度命令。crond命令每分鍾會定期檢查是否有要執行的工作,如果有要執行的工

       作便會自動執行該工作。

 ********************************************************************************************

備份的腳本:

 1 #!/bin/sh
 2 MYSQLDBUSERNAME=root
 3 
 4 MYSQLDBPASSWORD=root
 5 
 6 MYSQBASEDIR=/usr/local/mysql
 7 
 8 MYSQL=$MYSQBASEDIR/bin/mysql
 9 
10 MYSQLDUMP=$MYSQBASEDIR/bin/mysqldump
11 
12 BACKDIR=/Users/wky/Desktop/mybackup
13 
14 DATEFORMATTYPE1=$(date +%Y-%m-%d)
15 
16 DATEFORMATTYPE2=$(date +%Y%m%d%H%M%S)
17 
18 [ -d $MYSQBASEDIR ] && MYSQDATADIR=$MYSQBASEDIR/data || MYSQDATADIR=/var/lib/mysql
19 
20 [ -x $MYSQL ] || MYSQL=mysql
21 
22 [ -x $MYSQLDUMP ] || MYSQLDUMP=mysqldump
23 
24 [ -d ${BACKDIR} ] || mkdir -p ${BACKDIR}
25 [ -d ${BACKDIR}/${DATEFORMATTYPE1} ] || mkdir ${BACKDIR}/${DATEFORMATTYPE1}
26 
27 DBLIST=`ls -p $MYSQDATADIR | grep / |tr -d /`
28 
29 for DBNAME in $DBLIST
30 
31     do ${MYSQLDUMP} --user=${MYSQLDBUSERNAME} --password=${MYSQLDBPASSWORD} --routines --events --triggers --single-transaction --flush-logs --ignore-table=mysql.event --databases ${DBNAME} | gzip > ${BACKDIR}/${DATEFORMATTYPE1}/${DBNAME}-backup-${DATEFORMATTYPE2}.sql.gz
32 
33     [ $? -eq 0 ] && echo "${DBNAME} has been backuped successful" || echo "${DBNAME} has been backuped failed"
34     /bin/sleep 5
35 done

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM