首頁 >php教程 >php手册 >資料庫定時備份原理,程式碼

資料庫定時備份原理,程式碼

WBOY
WBOY原創
2016-08-20 08:48:141230瀏覽

可以這麼說,沒有資料庫,一切就是個蛋,沒有資料庫備份,一切還是個蛋,你可以想像資料庫備份多麼重要。不會linux,不會寫shell的朋友麻煩先去補。不過你說我牛逼,不補也看得懂,那沒問題,哈哈,廢話不說了
前幾篇部落格已經相繼公開了去轉盤網的所有技術細節,如下:
百度網盤爬蟲

中文分詞演算法

邀請好友報名

js分頁部分程式碼

這篇部落格我將繼續公開資料庫自動備份的程式碼。可以這麼說,沒有資料庫,一切就是個蛋,沒有資料庫備份,一切還是個蛋,你可以想像資料庫備份多麼重要。不會linux,不會寫shell的朋友麻煩先去補。不過你說我很牛逼,不補也看得懂,那沒問題,哈哈,廢話不說了。舊規矩,上碼:#!/bin/bash<br> time=$(date +"%d-%m-%Y")<br> pre=/home/ubuntu #想放到那裡麻煩自己設定哈<br> if [ ! -d "$pre/data_backup/$time" ]<br> then<br>   mkdir -p $pre/data_backup/$time<br>   echo "create $pre/data_backup/$time"<br> else<br>   echo "exist $pre/data_backup/$time"<br> fi<br> if [ -d "$pre/data_backup/$time" ]<br> then<br>  mysqldump -h10.66.102.75 -uroot -p123456 --opt winrun user > $pre/data_backup/$time/user.sql<br>  mysqldump -h10.66.102.75 -uroot -p123456--opt winrun CategoryInfo  > $pre/data_backup/$time/CategoryInfo.sql<br>  mysqldump -h10.66.102.75 -uroot -p123456 --opt winrun admin_info > $pre/data_backup/$time/admin_info.sql<br>  mysqldump -h10.66.102.75 -uroot -p123456 --opt winrun admin_loginfo > $pre/data_backup/$time/admin_loginfo.sql<br>  mysqldump -h10.66.102.75 -uroot -p123456 --opt winrun admin_notice_info  > $pre/data_backup/$time/admin_notice_info.sql  > $pre/data_backup/$time/admin_notice_info.sql<br>  mysqldump -h10.66.102.75 -uroot -p123456--opt winrun advertising_info  > $pre/data_backup/$time/advertising_info.sql<br>  mysqldump -h10.66.102.75 -uroot -p123456--opt winrun ajax_request_info  > $pre/data_backup/$time/ajax_request_info.sql<br>  mysqldump -h10.66.102.75 -uroot -p123456 --opt winrun bt_file_info  > $pre/data_backup/$time/bt_file_info.sql<br>  echo "backup finished"<br>  cd $pre/data_backup #enter dir<br>  zip -r $time.zip $time/<br>  rm -fr $time #delete<br>  cd -<br>  echo "zip backup database finished"<br> else<br>  echo "can not find backup file"<br> fi注意,我的密碼我已經改了,這個不能告訴你們,所以喜歡copy的孩子麻煩自己該密碼。下面我教大家玩crotab,程式碼如下:# Edit this file to introduce tasks to be run by cron.<br> #<br> # Each task to run has to be defined through a single line<br> # indicating with different fields when the task will be run<br> # and what command to run for the task<br> #<br> # To define the time you can provide concrete values for<br> # minute (m), hour (h), day of month (dom), month (mon),<br> # and day of week (dow) or use '*' in these fields (for 'any').#<br> # Notice that tasks will be started based on the cron's system<br> # daemon's notion of time and timezones.<br> #<br> # Output of the crontab jobs (including errors) is sent through<br> # email to the user the crontab file belongs to (unless redirected).<br> #<br> # For example, you can run a backup of all your user accounts<br> # at 5 a.m every week with:<br> # 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/<br> #<br> # For more information see the manual pages of crontab(5) and cron(8)<br> #<br> # m h  dom mon dow   command<br>10 1 * * 1,3,5  /home/backup.sh >> /home/backup.log有用的是最下面的這一句,看到沒有,備份完了還得有個log,不然誰知道備份成什麼樣子了,一點都不懂crontab麻煩自己百度下,我也一時跟你講不懂。
資料庫定時備份原理,程式碼
上面是備份的結果,注意,備份完了之後是壓縮包的形式,所以請你先安裝壓縮工具,apt-get install XXXX 不會的還是麻煩百度下,實在簡單成狗了。

技術在於分享,開源,去轉盤不吝嗇任何技術,歡迎關注微博或微信,隨時交流。本人建qq群,歡迎大家一起交流技術, 群號:512245829 喜歡微博的朋友關注:轉盤娛樂即可

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn