MySQL基础day05_MySQL数据库的备份与恢复-1-MySQL 5.6-阿里云开发者社区

开发者社区> 数据库> 正文
登录阅读全文

MySQL基础day05_MySQL数据库的备份与恢复-1-MySQL 5.6

简介:

一、数据备份与恢复


数据备份的方式

物理备份:拷贝存放库和表文件的目录(使用cp、tar等命令备份)

逻辑备份:备份生成库、表、插入记录时的sql语句(使用mysqldump或第三方软件)


数据备份时候的策略

完整备份:备份数据库服务器上的所有库,所有表。mysqldump

差异备份:备份自从完整备份之后生成的新数据、

增量备份:备份自从上一次备份后生成的新数据。


注:在生产环境中通常使用备份策略组合

完整备份+差异备份

完整备份+增量备份


使用mysqldump完整备份

注:mysqldump是由MySQL-client提供的

格式:

mysqldump -h(服务器ip) -u(用户名)-p(密码) 数据库名 > /备份目录/xxx.sql

mysqldump -h(服务器ip) -u(用户名)-p(密码) 数据库名 > xxx.sql

如果实在本机操作可以使用:mysqldump数据库名 > xxx.sql


数据库名的表示方式

数据库名:表示备份这个库里的所有表

示例:mysqldump-hlocalhost -uroot -p userdb > /bakdb/userdb.sql

数据库名 表名:直备份数据库中的某个表

示例:mysqldump-hlocalhost -uroot -p userdb user_tab > /bakdb/userdb.user_tab.sql

--all-databases:备份服务器上的所有库上的所有表

示例:mysqldump-hlocalhost -uroot -p --all-databases > /bakdb/mysql.sql

-B 数据库名1 数据库2 数据库名N:对某几个库做完整备份

mysqldump-hlocalhost -uroot -p123456 -B userdb studb > twodb.sql


注:

备份文件名不能重名,如果重名了,会覆盖之前的备份;

-p后面可以直接根密码,或者只写-p,在之后输入密码;


数据恢复的语法格式

mysql -h(数据库ip) -u(用户名)-p(密码) [数据库名] < 备份文件名

mysql -hlocalhost-uroot -p123456 userdb < userdb.sql


注:当备份的时候备份的是多个数据库时,备份的数据含有建库和切换库的语句,恢复的时候不需要指定数据库名;

mysql -hlocalhost-uroot -p123456 < twodb.sql



完整备份的缺陷:

用完整备份恢复数据只能恢复到完整备份时候的数据,新生成的数据无法恢复;




本文转自 murongqingqqq  51CTO博客,原文链接:http://blog.51cto.com/murongqingqqq/1381880

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章