# 备份数据库
- 简单备份
mysqldump -uroot -pec494904 ecmangent-mobile > /tmp/backfile.sql
表结构+数据
- --opt
mysqldump -uroot -pec494904 --opt ecmangent-mobile > /tmp/backfile.
如果加上--opt参数则生成的dump文件中稍有不同:
建表语句包含drop table if exists tableName
insert之前包含一个锁表语句lock tables tableName write,insert之后包含unlock tables
- -d 只备份表结构 或者--no-data
mysqldump -uroot -pec494904 -d ecmangent-mobile > /tmp/backfile_nodata.sql
- 备份多个数据库
mysqldump -uroot -pec494904 --databases ecmangent-mobile, mobile > /tmp/backfile_nodata.sql
- 备份所有数据库
mysqldump -uroot -pec494904 --all-databases |gzip > /tmp/backfile.sql.gz
# 导入数据库
mysqladmin create new_database
mysql new_database < /tmp/backfile.sql
# 定时备份数据库
比如需要在每天凌晨1:30备份某个主机上的所有数据库并压缩dump文件为gz格式,那么可在/etc/crontab配置文件中加入下面代码行:
30 1 * * * root mysqldump -u root -pPASSWORD --all-databases | gzip > /mnt/disk2/database_`date '+%m-%d-%Y'`.sql.gz
#