生产环境中,数据的安全性是至关重要的,任何数据的丢失都可能产生严重的后果
造成数据丢失的原因:程序错误、误操作 (占比最大)、计算机失败、磁盘失败、物理灾难
选择备份的依据是:丢失数据的代价与确保数据不丢失的代价之比
数据库备份分类
物理与逻辑区分
物理备份:指对数据库操作系统的物理文件(如数据文件、日志文件等)的备份。
-
脱机备份(冷备份:在关闭数据库时进行的备份操作,能够较好地保证数据库的完整性)
-
联机备份(热备份:在数据库运行状态中进行操作,这种备份方法依赖于数据库的日志文件)
逻辑备份:指对数据库的逻辑组件(如表等数据库对象)的备份
策略角度区分
完全备份:对整个数据库的备份,数据库结构的备份
差异备份:备份那些自从上次完全备份之后被修改过的文件
增量备份:只有那些在上次完全备份或者增量备份后被修改的文件才会被备份
备份方式比较
备份方式 | 完全备份 | 差异备份 | 增量备份 |
---|---|---|---|
完全备份时的状态 | 表1、表2 | 表1、表2 | 表1、表2 |
第1次添加内容 | 创建表3 | 创建表3 | 创建表3 |
备份内容 | 表1、表2、表3 | 表3 | 表3 |
第2次添加内容 | 创建表4 | 创建表4 | 创建表4 |
备份内容 | 表1、表2、表3、表4 | 表3、表4 | 表4 |
逻辑备份工具(mysqldump)
逻辑备份工具, 适用于所有的存储引擎, 支持温备、完全备份、部分备份、对于InnoDB存储引擎支持热备
备份数据库
在com窗口中(未登录状态下),可以通过如下命令对指定的数据库进行备份
mysqldump -u 用户名 -p 数据库名字 > 备份文件的位置\备份文件的文件名.sql
//备份单个库
mysqldump -u root -p mybank > G:\bf.sql
//备份所有库
mysqldump -u root -p --mybank--student > G:\bf.sql
//最后输入密码即可
注意没有提示就是备份成功!
恢复数据库
在com窗口中(未登录状态下),可以通过如下命令对指定的数据库进行恢复
mysql -u 用户名 -p 数据库名字 < 备份文件的位置\备份文件的文件名.sql
--已登录状态
create database mybank utf8;
--未登录状态
mysql -u root -p mybank < G:\bf.sql
标签:--,恢复,备份,备份文件,mysqldump,sql,数据库
From: https://www.cnblogs.com/KeFeng/p/17851563.html