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

Song • 212次浏览 • 0个评论 • 2018-12-25 06:45:11

一、数据备份

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数据库的完全恢复和数据的完整性。

提交评论
要回复文章请先登录注册
用户评论
  • 没有评论
    公告
    中国晚上好,随时随地分享前沿科技,好吃好玩,有趣有料的新鲜事;本站可以分享资源,技术,观点,态度;同时希望大家做一个文明的分享者!
    广告
    pytorch中文网