Mysqldump遠端備份、恢復mysql資料庫
阿新 • • 發佈:2018-12-26
本地通過Mysqldump備份遠端伺服器上mysql的資料庫:
1、遠端地址
直接上shell指令碼
#!/bin/bash
d=`date +'%Y%m%d_%H_%M_%S'`
cd /mnt/mysql_db
mysqldump -h mysql.rds.aliyuncs.com -u user -p'passwd' dbname | gzip > dbname.sql.gz_$d
rm -rf /mnt/mysql_db/cgwy.sql.gz_`date -d '-10 days' +%Y%m%d`_*
其中 -h 後面是mysql遠端地址,比如阿里雲的RDS,dbname是資料庫名字
指令碼是儲存10天的資料,10天之前的會刪掉。
如果是遠端ip
則是這條命令:
# mysqldump -h 192.168.1.1 -u user -p'passwd' dbname | gzip > dbname.sql.gz_$d
替換就行
將遠端備份的資料庫恢復到本地mysql中
首先解壓
cd /mnt/mysql_db
# gunzip -c cgwy.sql.gz_20161108_07_05_16 > cgwy.sql
然後執行:
# mysql -uroot -p123456 cgwy < /mnt/mysql_db/cgwy.sql
此時會警告:
# Warning: Using a password on the command line interface can be insecure.
可以忽略不管,坐等資料恢復,資料上10G以上,需要一段時間。
如果追求完美,不想出現這個警告,編輯my.cnf,在[mysqld]段中新增:
# vim /etc/my.cnf
[mysqld]
user=root
password=123456