MySQL使用mysqldump进行数据备份与还原(热备份)

Song1324 次浏览0个评论2018年12月25日

一、数据备份

mysqldump -uroot -pPassword [database name] 

使用如下命令即可轻松实现数据库备份,如:

mysqldump -uroot -p123 test > test.dump

你也可以使用crontab结合shell进行数据备份,如下shell会备份数据并且压缩且保留10天。

#!/bin/sh
mysqldump -uroot -p123 test | gzip > /var/mysqlbackup/test/test`date +%Y-%m-%d_%H%M%S`.sql.gz
cd  /var/mysqlbackup/test
rm -rf `find . -name '*.sql.gz' -mtime 10`
#删除10天前的备份文件

二、数据还原

mysqldump的恢复操作比较简单,因为备份的文件就是导出的SQL语句,一般只需要执行这个文件就可以了,可以通过以下的方法。

1、方法一

[root@zstedu andyxi3306]# mysql -uroot -p <test.sql

如果在导出时包含了创建和删除数据库的SQL语句,那必须确保删除架构时,架构目录下没有其他数据库相关的文件,否则可能会报错。

2、方法二

root@127.0.0.1:3306  [andyxi3306]>soure /tmp/test.sql

通过mysqldump可以恢复数据库,便是经常发生一个问题是,mysqldump可以导出存储过程、导出触发器、导出事件、导出数据,但却不能导出视图。

因此,如果用户的数据库中还使用了视图,则在用mysqldump备份完数据库后还需要导出视图的定义,或者备份视图定义的frm文件,并在恢复时进行导入,这样才能保证mysqldump数据库的完全恢复和数据的完整性。

提交评论

请登录后评论

用户评论

    当前暂无评价,快来发表您的观点吧...

更多相关好文

    当前暂无更多相关好文推荐...