Linux端-實現Mysql數據定時自動備份
創建存放備份 sql 的文件夾
備份數據盡量存放在Linux單獨掛載的磁盤上,保證數據可靠性。磁盤建議使用EXT4分區格式。
[root@localhost ~]# mkdir /sk/mysqlBackup
測試命令行備份數據庫
[root@localhost ~]# /usr/bin/mysqldump --opt -uroot -pDbpasswd -h127.0.0.1 dbdata > /mysqlbackup/db_`date +%F`.sql
命令參數 | 說明 |
---|---|
-u root | root為mysql用戶名 |
-p Dbpasswd | Dbpasswd為用戶密碼 |
-h 127.0.0.1 | 127.0.0.1連接數據庫的地址 |
dbdata | 需要備份的數據庫名 |
> /mysqlBackup/db_date +%F.sql | 存儲到 mysqlBackup 目錄下的xxxxx.sql 文件 |
測試完成后編寫腳本
[root@localhost ~]# touch autobackup.sh
[root@localhost ~]# vim autobackup.sh
DB_USER="root"
DB_PASS="xxxxx."
DB_HOST="1.1.1.1"
DB_NAME="databasename"
BIN_DIR="/usr/bin"
BCK_DIR="/sk/mysqlbackup"
DATE=`date +%F`
$BIN_DIR/mysqldump --opt -u$DB_USER -p$DB_PASS -h$DB_HOST $DB_NAME > $BCK_DIR/db_$DATE.sql
賦予執行權限
[root@localhost ~]# chmod +x autobackup.sh
將上面的備份腳本加入到 crontab 服務中,每天凌晨五點自動備份數據庫
[root@localhost ~]# crontab -e
插入如下命令行:
00 05 * * * /bin/sh /sk/mysqlbackup/autobackup.sh
Linux crontab命令詳解
查看自動備份任務是否創建成功
[root@localhost ~]# crontab -l