>  기사  >  데이터 베이스  >  每天定时备份MySQL数据库

每天定时备份MySQL数据库

WBOY
WBOY원래의
2016-06-07 17:11:56971검색

备份方式使用mysqldump + crond建立数据库备份的sh文件,如/root/sbin/db-backup.shDATE=`date +%Y-%m-%d`/usr/bin/mysqldump -u

备份方式使用mysqldump + crond

建立数据库备份的sh文件,如/root/sbin/db-backup.sh

DATE=`date +%Y-%m-%d`

/usr/bin/mysqldump -uroot -p123456  mydatabase > /root/backup/mysql-backup.sql.$DATE

内容为备份数据库mydatabase中的全部表到mysql-backup.sql.$DATE文件中,其中$DATE为根据命令的执行时间动态获取的日期

如果要备份mysql的全部数据库则使用

/usr/bin/mysqldump -uroot -p123456  --all-databases > /root/backup/mysql-backup.sql.$DATE

如果数据库中的表包含二进制字段如blod,则必须添加hex-blod的参数,如

/usr/bin/mysqldump -uroot -pqaywsx123 --hex-blod --all-databases > /root/dbbak/winsmedia.sql.$DATE

添加到crond中

编辑 /etc/crontab

最后一行添加  30 23 * * * root  /root/sbin/db-backup.sh

表示每天的晚上23点30 开始执行备份命令

重启加载crond服务   service crond reload

注:备份的mysql-backup.sql.$DATE 文件内容编码为utf8,所以要保证数据库的编码也是utf8否则可能会出现中文乱码。

或者添加一个 --default-charset的参数,,具体可参考mysqldump命令帮助说明

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.