第15章备份与恢复
本章主要内容为什么需要备份数据数据的备份类型备份123主要内容4恢复
15.1为什么需要备份数据在生产环境中我们数据库可能会遭遇各种各样的不测从而导致数据丢失,比如硬件故障、软件故障、自然灾害、黑客攻击、误操作(占比最大)。为了在数据丢失之后能够恢复数据,需要定期的备份数据,备份数据的策略要根据不同的应用场景进行定制,大致有几个参考数值,根据这些数值从而定制符合特定环境中的数据备份策略。能够容忍丢失多少数据恢复数据需要多长时间需要恢复哪一些数据
15.2数据的备份类型mysql的备份可以分为冷备份和热备份两种:(1)冷备份:停止数据库服务进行备份(2)热备份:不停止数据库服务进行备份mysql的存储引擎为MyIsam时,只支持冷备份,可以直接复制mysql的data目录下的数据库文件。这种方式需要注意mysql版本兼容性问题,同时,为了保证一致性,必须停机或者锁表进行备份。
15.2数据的备份类型在恢复时,首先关闭mysql服务,将备份的数据库文件复制到mysql的data目录下,然后启动mysql服务。mysql的存储引擎为InnoDB时,支持热备份,因为InnoDB引擎是事务性存储引擎,可以根据日志来进行redo和undo,即将备份的时候没有提交的事务进行回滚,已经提交了的事务进行重做。mysql提供了mysqldump命令用于存储引擎为InnoDB时的备份。
【示例15-1】mysqldump命令备份指定数据库--备份指定数据库(db_name)mysqldump-uroot-h157.0.0.1-pdb_named:\bf.sql15.3备份
【示例15-2】mysqldump命令备份指定数据库中的指定表--备份指定数据库(db_name)中的指定表(emp)mysqldump-uroot-h157.0.0.1-pdb_nameempd:\bf.sql15.3备份
【示例15-3】mysqldump命令备份多个数据库--备份多个数据库(db_name、stock_in_out)mysqldump-uroot-h157.0.0.1-p--databasesdb_namestock_in_outd:\bf.sql15.3备份
【示例15-4】mysqldump命令备份所有数据库--备份所有数据库mysqldump-uroot-h157.0.0.1-p--all-databasesd:\bf.sql15.3备份
【示例15-5】mysql命令恢复至指定数据库--恢复至指定数据库(db_name)mysql-uroot-h157.0.0.1-pdb_named:\bf.sql15.4恢复
【示例15-5】恢复前,查询数据库15.4恢复
【示例15-5】执行恢复命令结果15.4恢复
【示例15-5】恢复后查询结果15.4恢复
【示例15-6】source命令恢复至指定数据库--如果已经登录mysql,则可以使用这种方式恢复至指定数据库--只能在cmd界面下执行source命令,不能在mysql工具里面执行source命令usedb_name;sourced:\bf.sql15.4恢复
【示例15-6】恢复前,查询结果15.4恢复
【示例15-6】执行恢复命令结果15.4恢复
【示例15-6】恢复后查询结果15.4恢复
本章总结为什么需要备份数据。数据的备份类型。学会使用mysqldump命令进行数据备份。学会使用mysql命令和source命令进行数据恢复
本章作业一、简答题1.简述为什么要需要备份数据。2.简述备份数据的方法一、上机题1.使用mysqldump命令完成数据备份2.使用mysql命令和source命令完成数据恢复