乙個專案的基礎便是資料庫,但是可能因為某些原因會導致資料丟失,或資料庫結構變化,嚴重一點的或造成資料庫刪除。為了以防萬一,這時候就需要我們定時進行資料庫備份,但是如果人來操作的話會是乙個比較麻煩的工程,這時我們可以使用mysqldump寫個指令碼,由linux的crontab來定時執行。下面看看具體操作過程。
假如在我的資料庫中有乙個emp的資料庫。
1.在linux系統中自定義乙個資料夾,在我的伺服器上我放在了/zhb/backup
2.在/zhb/backup下面建乙個bkemp.sh的指令碼檔案
3.使用vi命令 vi ./bkemp.sh 寫入指令碼
#!
/bin/bash
mysqldump -uusername -ppassword emp>
/home/backup/emp$_
(date +
%y%m%d_%h%m%s)
.sql
#!/bin/bash
mysqldump -uusername -ppassword emp | gzip >
/home/backup/emp$_
(date +
%y%m%d_%h%m%s)
.sql.gz
5.輸入命令 crontab -e ,這時後會進入乙個和vi編輯器一樣的介面,輸入
*/1 * * * *
上面這行代表每分鐘執行一次。
等幾分鐘我們來看看是否每分鐘進行一次備份。
6.如果一直備份,那會消耗大量的伺服器記憶體,因此需要定時的刪除一些時間比較久的備份,只需要在bkemp.s**件中新增如下**即可。
#刪除15天之前的備份
find /home/backup -name emp"*.sql.gz"
-type f -mtime +
15-exec rm -rf \;
>
/dev/null 2
>&1
#刪除1分鐘之前的備份
find /home/backup -name emp"*.sql.gz"
-type f -mmin +
1-exec rm -rf \;
>
/dev/null 2
>
&1
如何在linux下寫指令碼定時備份mysql資料庫
我們在工作中可以這麼做減少資料丟失概率 1.先在某個資料夾下建立乙個指令碼,這裡命名為back up database.sh,在 mnt data dump 這目錄下 bin bash basedir mnt data dump cd basedir echo 開始備份資料庫 echo mysqld...
Linux系統定時備份Postgresql資料庫
建立指令碼檔案backup.sh,編寫資料庫備份指令碼 bin sh 資料庫備份目錄 backupdir datadisk pgbackup backupone dbldqq 資料庫備份檔案名稱,以時間作為唯一碼 da date y m d h m s echo da 備份db demo資料庫 pg...
Linux 定時備份MYsql
vim sbin backup usr local mysql bin mysqldump uroot p1 l mysql home databak mysql date y m d sql 注 l 鎖定表 date與 之前要空格,與 y m d不能有空格 crontab e 03 sbin ba...