数据库在没有备份的情况下,如果数据库redo或undo损坏,可以通过如下方法处理,但是不一定成功 把init文件中的: undo_management=manual 然后启动数据库到mount 状态后 sql>show parameters undo 查看是否已经是manual 如果是,就看看 alter database open是否能打开 如果不行, 2.shutdown immediate 3.在init.ora中加入如下参数 _allow_resetlogs_corruption=TRU…
转自:http://blog.csdn.net/tianlesoftware/article/details/6261475 Oracle 不同故障的恢复方案 http://blog.csdn.net/tianlesoftware/archive/2010/12/30/6106178.aspx Oracle undo 表空间管理 http://blog.csdn.net/tianlesoftware/archive/2010/07/11/5689558.aspx 上面的2篇Blog 讲到了Ora…
数据库的ACID属性 Atomicity:原子性,以事物transact为最小单位,事物中的所有操作,要么都执行完,要么都不执行,不存在一部分操作执行,另一部分操作不执行的情况. Consistency:一致性,在事物开始和事物完成后,数据库的完整性限制不会改变. Isolation:隔离性,同一个数据库中同时并发执行多个事务,事物之间的操作不会相互影响. Durability:持久性,事物完成之后,事物所作的操作会持久存在于数据库中.   Redo log 和undo log Redo log…
前言 可以说mysql的多数特性都是围绕日志文件实现,而其中最重要的有以下三种 redo 日志 undo 日志 binlog 日志 关注公众号,一起交流:微信搜一搜: 潜行前行 1 redo日志 innodb 为了提高磁盘I/O读写性能,存在一个 buffer pool 的内存空间,数据页读入会缓存到 buffer pool,事务的提交则实时更新到 buffer pool,而不实时同步到磁盘(innodb 是按 16KB 一页同步的,一事务可涉及多个数据页,实时同步会造成浪费,随机I/O).事务…
简介 之前我已经写了一个关于SQL Server日志的简单系列文章.本篇文章会进一步挖掘日志背后的一些概念,原理以及作用. 数据库的可靠性 在关系数据库系统中,我们需要数据库可靠,所谓的可靠就是当遇见如下两种情况之一时保证数据库的一致性: 在系统崩溃/故障等情况下,保证数据库的一致性 数据不能在多个DML语句同时修改数据的情况下,导致不一致或数据损坏 实际上,上述第二种情况就是并发性所需要解决的问题,传统关系数据库中,我们用锁来解决这个问题,而对于内存数据库或带有乐观并发控制的数据库系统,通过多…
一.什么是redo?redo:oracle在在线或者归档重做日志文件中的记录的信息,外以出现失败时可以利用这些数据来"重放"事务.每个oracle数据都至少有二个在线重做日志组,每个组中的至少有一个成员,这些在线重做日志组以循环方式使用. 二.什么是undo?undo:oracle在undo段中记录的信息,用于取消或者回滚事务.undo在数据库内部存储在一组特殊的段中,称作undo段.利 用undo段恢复数据,不是将数据库物理地恢复到执行语句或者事务之前的样子,只是从逻辑上恢复到原来的…
本章提要-----------------------------------------------redo, undo 定义redo, undo 如何工作如何访问 redo, undo提交和回滚-----------------------------------------------redo: 用来重做(前滚)undo: 用来回滚(后滚) redo: 重做日志文件, 数据库的事务日志, online redo, archived log两类(都是磁盘文件)    如果数据库所在的机房掉电…
01 – Undo LogUndo Log 是为了实现事务的原子性,在MySQL数据库InnoDB存储引擎中,还用Undo Log来实现多版本并发控制(简称:MVCC). - 事务的原子性(Atomicity)事务中的所有操作,要么全部完成,要么不做任何操作,不能只做部分操作.如果在执行的过程中发生了错误,要回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过. - 原理Undo Log的原理很简单,为了满足事务的原子性,在操作任何数据之前,首先将数据备份到一个地方(这个存储数…
这里简单总结MySQL的备份分为3种:分为冷备份,逻辑备份,热备份. 1.冷备份: 一般主要用于非核心业务,这类业务一般都是允许业务中断的,冷备份的特点就是数度快,恢复时也最为简单.通常直接复物理文件来实现冷备份. 1.1备份过程: 第一关闭mysql服务 第二步就是把datas数据目录(包含ibdata1)和日志目录(包含ib_logfile0,ib_logfile1,ib_logfile2)复制到磁盘,或者本地的另一块磁盘里 1.2恢复过程: 第一使用复制的数据目录和日志目录替换原有的目录…
Undo and redo Oracle最重要的两部分数据,undo 与redo,redo(重做信息)是oracle在线(或归档)重做日志文件中记录的信息,可以利用redo重放事务信息,undo(撤销信息)是oracle在undo段中记录的信息,用于撤销或回滚事务. 1 redo 重做日志文件redo log,是数据库的事务日志,oracle维护着2类重做日志,在线重做日志文件和归档重做日志文件,归档日志文件就是重做日志的副本,系统将日志文件填满时arch进程会在另一个位置建立一个在线重做日志的…
一 .redo(重做信息) 是Oracle在线(或归档)重做日志文件中记录的信息,万一出现失败时可以利用这些数据来“重放”(或重做)事务.Oracle中记录这些信息的文件叫做redo log file(重做日志文件). redo log file分online和archived两类,它们都用于恢复. 当实例失败时,Oracle会使用在线重做日志将系统恰好恢复到故障前的提交点:如果磁盘等介质失败时,Oracle会使用归档重做日志以及在线重做日志将该磁盘上的数据备份恢复到适当的时间点.当一张表被tr…
Redo log 文件损坏或丢失,在启动数据库时在alert日志中会有如下错误: ORA-00313: open failed for members of log group 1 of thread 1 ORA-00312: online log 1 thread 1: '/u01/app/oracle/oradata/orcl/redo01.log' ORA-27037: unable to obtain file status Linux-x86_64 Error: 2: No such…
[知识点整理]Oracle中NOLOGGING.APPEND.ARCHIVE和PARALLEL下,REDO.UNDO和执行速度的比较 1  BLOG文档结构图 2  前言部分 2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① 系统和会话级别的REDO和UNDO量的查询 ② NOLOGGING.APPEND.ARCHIVE和PARALLEL下,REDO.UNDO和执行速度的比较(重点)   Tips: ① 本文…
2. 系统DB有哪些,都有什么作用,需不需要做备份,为什么:损坏了如何做还原(主要是master库): master:它包含一个系统表集合,是整个实例的中央存储库,维护登录账户,其他数据库,文件分布,系统配置设置,磁盘空间,资源消耗,端点和 链接服务器等方面的信息.它记录SQL2005初始化信息,所以它对实例极为重要.在创建,修改或删除用户数据库,更改服务器或任何数据库配置,以及修改或添加用户账户后都要备份该数据库.model:它是SQL2005实例中所有新建数据库的模板.执行create da…
0. xtrabackup的功能 能实现的功能: 非阻塞备份innodb等事务引擎数据库. 备份myisam表会阻塞(需要锁). 支持全备.增量备份.压缩备份. 快速增量备份(xtradb,原理类似于oracle:tracking 上次备份之后发生修改的page.). percona支持归档redo log的备份. percona5.6+支持轻量级的backup-lock替代原来重量级的FTWRL,此时即使备份非事务引擎表也不会阻塞innodb的DML语句了. 支持加密备份.流备份(备份到远程机…
1.引言 Oracle数据库的备份方法很多,无论使用那种备份方法,备份的目的都是为了在出现故障后能够以尽可能小的时间和代价恢复系统.比如使用export实用程序导出数据库对象.使用Oracle备份数据库.使用Oracle对称复制.使用Oracle并行服务器.使用Oracle冷备份.使用Oracle热备份等各种备份方法都有其优缺点.适用的场合和相应的软硬件要求.本文主要就用export实用程序导出数据库对象.Oracle冷备份.Oracle热备份这三种最基本的备份方法进行详细的探讨,分析各自的优缺…
redo:记录用户的操作.(commit) undo:相反的用操作.(rollback) checkpoint:redo真正写入物理存储.(定时写---定时策略) =========================================== 1.用户提交SQL的DML语句. 2.数据库DBWN写入Redo 3.写入undo 4.定时产生checkpoint 5.写入物理文件 ===========================================…
1.redo redo 有在线redo日志和归档redo日志, 从Oracle 10g开始还新增加了flashback技术. 每个Oracle数据库至少有2个在线重做日志组,循环写. 只有INSERT, DELETE, UPDATE,MERGE才会生成redo日志, redo日志用于数据库故障恢复,比如系统崩溃,磁盘介质问题. 2.undo undo 与redo相反, 修改数据时,会生成undo信息,以便回到更改前的状态. undo存放在数据库中一组undo变空间和undo段中. 每次用undo…
sql2005数据库置疑修复断电崩溃索引损坏 数据库索引错误修复/数据库表损坏/索引损坏/系统表混乱等问题修复 客 户 名 称 济南某电子商务公司 数 据 类 型 SQL2005数据库 故 障 检 测 因服务器突然断电导致数据库崩溃,客户一张重要的数据表无法查询,截断日志和检查修复后,故障仍在,应客户要求,工程师远程检测数据库文件发现,数据库文件存在部分坏页!检测为索引错误! 客 户 要 求 必须直接可以使用! 修 复 结 果 数据库文件收到后,我们发现除了常见的索引页损坏,还有部分页为乱码,工…
    在数据库系统中,既有存放数据的文件,也有存放日志的文件.日志在内存中也是有缓存Log buffer,也有磁盘文件log file,本文主要描述存放日志的文件.     MySQL中的日志文件,有这么两类常常讨论到:undo日志与redo日志. 1 undo 1.1 undo是啥 undo日志用于存放数据修改被修改前的值,假设修改 tba 表中 id=2的行数据,把Name='B' 修改为Name = 'B2' ,那么undo日志就会用来存放Name='B'的记录,如果这个修改出现异常,可…
阅读目录(Content) 1 undo 1.1 undo是啥 1.2 undo参数 1.3 undo空间管理 2 redo 2.1 redo是啥 2.2 redo 参数 2.3 redo 空间管理 3 undo及redo如何记录事务 3.1 Undo + Redo事务的简化过程 3.2  IO影响 3.3 恢复     在数据库系统中,既有存放数据的文件,也有存放日志的文件.日志在内存中也是有缓存Log buffer,也有磁盘文件log file,本文主要描述存放日志的文件.     MySQ…
公司的服务器奔溃了,事先没相应的保护措施,使得公司遭到了较大损失,为了以后不再出现类似事件,在系统中引入备份机制,使得数据库被破坏后损失降到最低. 数据的导出和导入 数据转换服务 数据转换服务DTS(Data Transmission Service)提供数据传送功能,可以通过交互操作从不同的数据源中导入数据,数据的来源特性可以用于查询数据的导入时间,地点以及运算方法. 数据的导入和导出是以相同格式读写数据,从文本或者oracle书库中导入数据到sqlserver,DTS也可以将sqlserve…
redo和undo的区别    redo--> undo-->datafileinsert一条记录时, 表跟undo的信息都会放进 redo 中, 在commit 或之前, redo 的信息会放进硬盘上. 故障时, redo 便可恢复那些已经commit 了的数据. redo->每次操作都先记录到redo日志中,当出现实例故障(像断电),导致数据未能更新到数据文件,则数据库重启时须redo,重新把数据更新到数据文件undo->记录更改前的一份copy,但你系统rollback时,把…
  一. 什么是redo(用于前滚数据) redo也就是重做日志文件(redo log file),Oracle维护着两类重做日志文件:在线(online)重做日志文件和归档(archived)重做日志文件.这两类重做日志文件都用于恢复:其主要目的是,万一实例失败或介质失败,它们能够恢复数据. 二. 什么是undo(用于回滚数据) 从概念上讲,undo正好与redo相对.你对数据执行修改时,数据库会生成undo信息,这样万一你执行的事务或语句由于某种原因失败了,或者如果你用一条ROLLBACK语…
目录 如何理解redo和undo的作用 redo undo UNDO和REDO的区别 如何理解redo和undo的作用 redo 重做日志(redo)包含所有数据产生的历史改变记录,是oracle在线或归档重做日志文件中记录的信息,一旦掉电或其他意外丢失数据,可以利用这些数据来重做事务,例如已经出现了丢失数据的情况,那么就可以利用redo来重放事务,通常用于实例恢复和介质恢复.日志挖掘和流(分析redo,捕获实时数据,传到远程数据库,并应用于远程数据库).Redo中保存的内容是改变向量,改变数据…
MySQL数据库入门——备份数据库   一提到数据,大家神经都会很紧张,数据的类型有很多种,但是总归一点,数据很重要,非常重要,因此,日常的数据备份工作就成了运维工作的重点中的重点的重点................. 首先来看看数据库中的数据 mysql> select * from test; +-----+------+ | id  | name | +-----+------+ |   1 | 1       | |  11 | text  | |  21 | abc  | |   9…
http://liwenshui322.iteye.com/blog/1488949 一. 什么是redo(用于前滚数据) redo也就是重做日志文件(redo log file),Oracle维护着两类重做日志文件:在线(online)重做日志文件和归档(archived)重做日志文件.这两类重做日志文件都用于恢复:其主要目的是,万一实例失败或介质失败,它们能够恢复数据. 二. 什么是undo(用于回滚数据) 从概念上讲,undo正好与redo相对.你对数据执行修改时,数据库会生成undo信息…
SQL Server 数据库使用备份还原造成的孤立用户和对象名‘xxx’无效的错误的解决办法 在使用数据库的过程中,经常会遇到数据库迁移或者数据迁移的问题,或者有突然的数据库损坏,这时需要从数据库的备份中直接恢复.但是,此时会出现问题,这里说明几种常见问题的解决方法. 一.孤立用户的问题 比如,以前的数据库的很多表是用户test建立的,但是当我们恢复数据库后,test用户此时就成了孤立用户,没有与之对应的登陆用户名,哪怕你建立了一个test登录用户名,而且是以前的用户密码,用该用户登录后同样没办…
本文概要本文的原意是一篇个人学习笔记,为了避免成为草草记录一下的流水账,尝试从给人介绍的角度开写.但在整理的过程中,越来越感觉力不从心,一是细节太多了,原以为足够了解的一个小知识点下可能隐藏了很多细节:二是内容与范围的取舍,既想有点技术性避免空谈,又不想陷入枯燥冗长的小细节描述.几番折腾,目前的想法把坑填上,能写完就不错了,你读起来有不顺或错误的地方请见谅,欢迎反馈. 本文分两部分,第一部分概念介绍,重在理解.第二部分通过MySQL Innodb中的具体实现,加深相关知识的印象. 1. 概念与理…
一:手写TSQL 脚本 1,自动备份 每周进行一次Database 的 Full Backup,设置 Schedule Interval 为Weekly use master go ) )+N'.bak' BACKUP DATABASE [TESTDB] TO DISK = @FileName WITH Compression ,INIT ,SKIP ,Format GO 每天进行一次Database的 Differential Backup,设置Schedule Interval 为Daily…