Linux伺服器利用crontab定時任務實現Mysql定時備份
阿新 • • 發佈:2020-12-07
1.查詢資料庫所在目錄。
輸入命令:
whereis mysql 或者
which mysql
2.查詢資料庫名稱
mysql - uroot -p
輸入密碼:
show databases;
找到要備份的資料庫
退出: exit
3.建立備份資訊存放的資料夾
mkdir /var/lib/mysqlbackup
cd /var/lib/mysqlbackup
4.用 vi編輯 shell指令碼:
vi dbbackup.sh
vi dbbackup.sh #!/bin/sh mysqldump -uroot -proot1234 hsgpstest | gzip > /usr/bin/mysqlbackup/dbnamedate+%Y-%m-%d_%H%M%S.sql.gz cd /usr/bin/mysqlbackup rm -rf find . -name '*.sql.gz' -mtime 10 #刪除10天前的備份檔案
#!/bin/bash #備份檔案儲存目錄 backupdir=/var/lib/mysqlbackup #時間戳 time=_`date +%Y_%m_%d_%H_%M_%S` #資料庫連線資訊 db_name=hxgpstest db_user=root db_pass=fuyang1234 #mysql備份 mysqldump -u$db_user -p$db_pass $db_name | gzip > $backupdir/$db_name$time.sql.gz #自動清理15天以前的備份檔案 find $backupdir -name $db_name"*.sql.gz" -type f -mtime +15 -exec rm -rf {} \; > /dev/null 2>&1
編輯完按esc進入命令模式 輸入:wq儲存並退出
5.更改備份指令碼許可權:
chmod +x dbbackup.sh
6.用crontab定時執行備份指令碼程式碼:
s
crontab -e
若每天晚上21點00備份,新增如下程式碼
00 21 * * * /var/lib/mysqlbackup/dbbackup.sh