作为备忘: 数据库定时备份及还原方式
备份
使用mysqldump来备份数据
备份命令格式
mysqldump -h主机名 -P端口 -u用户名 -p密码 -database 数据库名 > 文件名.sql
备份MySQL数据库为带删除表的格式
备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。
mysqldump --add-drop-table -uusername -ppassword -database databasename > backupfile.sql
压缩备份
mysqldump -hhostname -uusername -ppassword -database databasename | gzip > backupfile.sql.gz
备份MySQL数据库某个(些)表
mysqldump -hhostname -uusername -ppassword databasename specific_table1 specific_table2 > backupfile.sql
同时备份多个MySQL数据库
mysqldump -hhostname -uusername -ppassword –databases databasename1 databasename2 databasename3 > multibackupfile.sql
仅备份份数据库结构
mysqldump –no-data –databases databasename1 databasename2 databasename3 > structurebackupfile.sql
备份服务器上所有数据库
mysqldump –all-databases > allbackupfile.sql
还原
还原数据库命令
mysql -hhostname -uusername -ppassword databasename < backupfile.sql
还原压缩的MySQL数据库
gunzip < backupfile.sql.gz | mysql -uusername -ppassword databasename
使用source导入数据库
1 | mysql -p // 进入命令行 |
添加自动备份定时任务
新建sh脚本
1 |
|
将脚本添加到定时任务
1 | crontab -e 添加任务 |
编辑crontab
1 | // 每天3点启动备份脚本 |
注: 定时脚本需要重启系统才会起作用