展开全部

对于MySQL数据库,备份与恢复e5a48de588b662616964757a686964616f31333433646464相关的术语包括:备份(backup)、还原(restore)、恢复(recover)、二进制日志(binlog),其中备份按照其特性可以分为:物理备份和逻辑备份;冷备、温备和热备;完全备份和不完全备份等;常用的备份工具包括:操作系统拷贝、mysqldump等;还原包括物理备份的还原和逻辑备份的还原;下面分别加以介绍和说明。

数据库备份通俗地说是将数据库的某一时刻的数据复制了一份;数据库还原是将备份出的数据替换掉原来数据库中的数据文件,将备份放回到原来数据库文件的目录位置;二进制日志(BINLOG)记录数据库的变更过程,例如创建数据库、建表、修改表等DDL操作、以及数据表的相关DML操作,这些操作会导致数据库产生变化,开启binlog以后导致数据库产生变化的操作会按照时间顺序以“事件”的形式记录到binlog二进制文件中。

参考上图,在凌晨2:00,管理员将已开启二进制日志的数据库的数据做了一个完整的备份,随着时间的推移,仍然有用户对数据库进行相关的写操作(包括:DDL语句、DML语句中的增删改操作、DCL授权语句和TCL事务处理语句等),导致了二进制日志文件写满(默认1G)后自动切换;在上午9:37时,由于硬盘出现故障,数据库用户不能正常访问存放在硬盘中的数据库数据,此时如果数据库备份和二进制日志没有损坏,管理员是可以通过还原备份和恢复二进制日志的方式挽回数据损失的。

挽回数据损失的过程包括:1.更换新硬盘;2.还原备份;3.重做备份到故障时段的二进制日志中的语句等;正常情况不会造成数据的丢失,损失的仅仅是一段时间的停机时间。

上例中,还原数据备份时,数据库中的数据回到了备份时刻的状态,而二进制日志中记录了从备份到故障前一段时间内所有用户对数据库的写操作的语句,只要把这些语句按照时间顺序重新运行一遍,所还原的数据就会变成为故障前那一刻的状态,不会造成数据丢失。因此通常把保存在二进制日志中的语句重新执行的过程叫做恢复。

用来mysql备份的是什么意思_备份数据库有什么用相关推荐

  1. rac 火星舱如何备份oracle_MBA_Oracle Rac备份恢复(一)_备份

    概述 RAC 技术这两年热度不断提升,随着ORACLE推广力度不断加大以及时间的推移,RAC特性也在逐步被人所熟悉.做为重要的数据库维护操作–备份恢复,本文将通过实际操作,演示RAC数据库环境中,MB ...

  2. mysql 分页查询几种语法_各数据库2种分页语法支持

    Mycat后端通过jdbc接入oracle.db2.sqlserver.postgresql等通过以下2种方式支持分页语法 以防找不到可以先收藏哦! 1 数据库原生分页直接解析 应用端可以通过直接执行 ...

  3. mysql提取前两个数据_各种数据库提取表的前几条记录的方法

    前一阵子去了个面试,其中有个道考题是写出取某张表前10条记录的sql语句.一头雾水,回来问了同学也没有结果,近来上网搜了一下,收获如下: 原来不同的DBMS对此操作的sql语句也不同. (取出TABL ...

  4. mysql只显示前几行_常见数据库SELECT结果只显示前几条记录方法汇总

    为了查看数据表中的数据情况.经常会遇到想让查询结果只显示N行,比如只显示10行的情况.不同的数据库有不同的关键字和SELECT实现语法. 1.SQL Server数据库 select top 10   ...

  5. mysql课设的心得体会_关于数据库课设的感想

    在昨天,11.22 我完成了这次课设的报告,开心! 这次的课设真是个磨人的小妖精!!! 题目也不是很难,数据库+窗口显示 火车票售票系统(用户+管理员 订票/退票 增删改信息等操作) 最后我决定用 s ...

  6. mysql查询前5条记录_各个数据库中,查询前n条记录的方法

    SQL查询前10条的方法为: 1.select top X *  from table_name --查询前X条记录,可以改成需要的数字,比如前10条. 2.select top X *  from  ...

  7. mysql哪些字段适合加索引_【数据库】mysql哪些字段适合加索引

    数据库中字段适合添加索引的有表中某个字段值离散度越高越适合,占用存储空间少的字段,存储空间固定的字段,where子句中经常用到的字段等 1.表的某个字段值得离散度越高,该字段越适合选作索引的关键字.主 ...

  8. mysql表打包到程序中_关于数据库程序的打包

    利用开发工具delphi设计一个数据库应用程序,利用ado(ActiveX Data Objects)进行设计的方案适合基于在本机上运行或利用SQL进行访问的C/S结构的应用方案.总之应用还是比较好, ...

  9. mysql最早出现的数据模型_在数据库发展史中出现的数据模型有哪些

    数据库技术发展至今,主要有三种数据模型:层次数据模型.网状数据模型.关系数据模型.这三种模型是按其数据结构而命名的. 层次模型 它将数据组织成一对多关系的结构,层次结构采用关键字来访问其中每一层次的每 ...

最新文章

  1. 本地存储与云存储方案价值对比—Vecloud
  2. 数据库:分布式事务的解决方案
  3. 【好文收藏】K8S集群部署CoreDNS服务
  4. SCI/EI期刊投稿 Reply Letter 常用格式总结
  5. 《Python程序设计开发宝典》第一波转发积攒活动中奖名单
  6. 从零开始学WEB前端——VUE介绍
  7. Pool tag list
  8. python 微博_用python发微博
  9. 萤石云回放时服务器无响应,萤石云手机回放看不了
  10. Python 爬虫爬取奥运奖牌榜数据
  11. Python爬虫-爬取豆瓣读书
  12. 如何在ios app 局域网内搜索到设备
  13. 阿里云服务器CentOS开放特定端口
  14. 汉诺塔问题(递归算法思想)
  15. 通达OA2019升级到V12的操作方法
  16. MATLAB消除图像白边
  17. 使用MOB免费短信验证码进行登录(注册)
  18. IPTV系统架构的分析与研究
  19. NFC正式支持无线充电!功率仅仅1W
  20. 苹果mp3软件_一款非常不错的音频格式转换软件

热门文章

  1. html5编写一个手机app的首页
  2. 2022.3.21-3.27 AI行业周刊(第90期):中年裁员
  3. Nginx支持PHP的PATHINFO模式配置深入分析
  4. 物联网应用中的 Wi-Fi 6
  5. ios 4种方式防护label.text = @(100)崩溃
  6. java接口防抖_彻底弄懂节流和防抖
  7. QT二维图形的绘制(类的介绍与绘图实例)
  8. Android Studio 开关按钮Switch
  9. 中年人的第N个HelloWorld
  10. java getcolumns_Java DatabaseMetaData.getColumns方法代碼示例