IT虾米网

mysql 备份还原shell 脚本

wyy 2018年06月24日 数据库 1135 0

完全备份指定数据库

DIR=/database/backupdir  
FILE_NAME=`date +%y%m%d%H`  
FILE_NAME=$DIR/db_$FILE_NAME.sql.gz  
echo start backup to $FILE_NAME  
mysqldump --host=10.10.20.1 --port=3336 --user=dbuser --password=dbpwd --default-character-set=utf8 --quick --routines --single-transaction --master-data=1  db_name | gzip > $FILE_NAME  
echo finish backup

从备份的文件恢复数据库

#db restore abc 
gunzip < /backupfiledir/12082917.sql.gz | mysql --user=dbuser --password=dbpwd --port=3336 --host=10.10.20.1 --database=test 

在备份时出现mysqldump: Error: Binlogging on server not active时,是因为mysql的binlog没有启动,在mysql的my.ini文件中[mysqld]下面添加

log-bin=mysql-bin

然后重新启动mysql服务,问题就解决

评论关闭
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!