oracle 11g 数据库恢复技术 ---02 控制文件 SYS@ orcl >show parameter control_file NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ control_file_record_keep_time control_files string /u01/app/oracle/oradata/orcl/c ont…
实验环境:OEL 5.6 oracle 11g(11.2.0.4.0) 注意: system表空间数据文件不能在线recover,需要启动到mount状态再recover: undo表空间数据文件可以在线recover: 用到的命令: ps -ef |grep dbw |grep -v grep ps -ef |grep ckpt |grep -v grep ll /proc/7971/fd 1.恢复system表空间文件实验: SYS@LGR> select * from v$dbfile;…
一.什么是控制文件 控制文件是Oracle数据库中十分重要的文件.Oracle启动时,首先会读取参数文件,读取了参数文件,实例所需要的共享内存和后台进程就可以启动了,这就是数据库实例的nomunt阶段.完成这个步骤后,就需要通过参数文件中的control_file参数,找到数据库的控制文件,然后打开控制文件,对控制文件进行校验.这就是Oracle数据库实例启动过程中的Mount阶段. 二.控制文件包含哪些信息 控制文件中包含了Oracle数据库十分重要的信息,其中包括整个数据库的物理结构.所有数…
实验之前先备份数据库 RMAN>backup database; 在操作系统中删除数据文件 5 SQL> startup ORACLE 例程已经启动. Total System Global Area bytes Fixed Size bytes Variable Size bytes bytes Redo Buffers bytes 数据库装载完毕. ORA: 无法标识 - 请参阅 DBWR 跟踪文件 ORA: 数据文件 : 'D:\ORADATA\USER_DATAFILES\TS_CG0…
ORACLE数据库有时候需要对存储进行调整,增加分区.IO调优等等,此时需要移动数据文件.重做日志文件.控制文件等等,下文结合例子总结一下这方面的知识点. 进行数据文件.重做日志文件.控制文件的迁移前,需要总体了解一下当前Linux服务器的磁盘.分区信息,以及服务器文件使用情况,如下所示 查看Linux服务器的文件使用情况 1: [root@DB-Server ~]# df -h 2:  3: Filesystem Size Used Avail Use% Mounted on 4:  5: /…
1.查看当前数据库中的所有用户:select username from dba_users; 2.查看当前会话登录的用户:show user或select username from user_users; 3.查看某用户的所有表:select * from dba_tables where owner='用户名';--用户名要大写或select table_name from dba_tables where owner='NETFOLDER'; 4.查看控制文件的位置等信息:select…
常常需要将数据库中的数据生成文档,由于比较喜欢脚本的方式,所以就需要使用spool的时候进行格式设置,以下简单整理了一下oracle中进行格式设置的一些东西,一共十八条,其实常用的也就那么几个,稍后会附上自己写的简单的shell操作的脚本,希望能供同样有需要的共同交流,也作为自己的备份. set命令的各项及其含义:arraysize 从数据库中一次提取的行数,默认为15autocommit 是否自动提交,默认为offcolsep 在选定列之间的分隔符,默认为空格echo 在用start命令执行一…
如果数据库仅有一组control file文件,需要添加一组或者多组,保证一组文件损坏或者丢失导致数据库宕机. -- 环境说明SQL> select * from v$version;BANNER--------------------------------------------------------------------------------Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Produc…
做了mysql主从也有一段时间了,这两天检查磁盘空间情况,发现放数据库的分区磁盘激增了40多G,一路查看下来,发现配置好主从复制以来到现在的binlog就有40多G,原来根源出在这里,查看了一下my.cnf,看到binlog的size是1G就做分割,但没有看到删除的配置,在mysql里查看了一下variablesmysql>show variables like '%log%';查到了| expire_logs_days                 | 0                  …
恢复前提有数据备份 以 alter database open resetlogs 开机以后多要做一次全备(以前的备份失效了) 恢复参数文件: restore spfile from '/home/oracle/bak/PROD4_25s8i1dp_1_1.spfile'; 恢复控制文件: rman>restore controlfile from '/home/oracle/bak/ctl_PROD4_20170705_68_1'; rman>alter database mount; 恢复…
试验计划:先rman进行一个0级备份,插入表相关数据,再进行level 1级增量备份,进行rman恢复 实验环境:归档模式下,oracle10.2.0.1 开始试验: 1. rman level 0级备份 RMAN> backup incremental level 0 database; Starting backup at -DEC- using channel ORA_DISK_1 channel ORA_DISK_1: starting incremental level datafil…
试验计划:先做一个0级备份,再创建一个表,插入几条数据,最后删除表,然后通过rman把该表的数据恢复. 试验环境:在归档模式,oracle10.2.0.1 开始试验: 1.rman level 0备份 RMAN> backup incremental level 0 database; Starting backup at -DEC- allocated channel: ORA_DISK_1 channel ORA_DISK_1: sid= devtype=DISK channel ORA_D…
当我们粗心大意直接delete from不加条件而又没有回滚的时候有一个很简单的方法能够将数据恢复到delete之前的状态 第一种方案已经帮助我解决了实际问题.第二种方案暂未实践 在此记录下以便日后查阅 一:根据时间来恢复: 1.查询数据库当前时间(目的是为了检查数据库时间是否与你电脑时间相近,避免时间不同而将数据恢复到错误时间点) select  to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual; 2.查询删除数据时间点之前的数据 selec…
发现误删除时需要及时处理,速度要快,姿势要帅.晚了就恢复不了额 1.查询时间 以确保恢复到某个时间点 select SQL_TEXT, LAST_ACTIVE_TIME from v$sqlarea where LAST_ACTIVE_TIME > to_date('删除数据的大约时间', 'yyyymmdd hh24:mi:ss') and SQL_TEXT like '%表名%'; --此处请用like!!! 2.插入误删除的数据 INSERT INTO 表名 select * from 表…
13.3无备份恢复控制文件 没有备份恢复控制文件其实就是在nomount状态,create control创建一个新的控制文件. dba必须知道4个信息才能正确的创建:数据库名.在线日志路径及其大小.在线的可读/写数据文件路径.数据库字符集 其中指定数据库字符集是为了在打开数据库之前执行recover tablespace  ..或restore tablespace时可以正确解析表空间名称 --之前在dsi系列介绍了使用bbed查看数据文件头的方式来确定字符集,数据库名等方法. --maxlo…
真题1. 如何备份控制文件?备份控制文件的方式有哪几种? 答案:备份控制文件的方式有多种. ① 备份控制文件可以在线进行: SQL> ALTER DATABASE BACKUP CONTROLFILE TO '/tmp/control.ctl';--热备份控制文件 SQL> ALTER DATABASE BACKUP CONTROLFILE TO TRACE  AS '/home/bk/a.ctl';--得到建立控制文件的脚本,备份为文本文件格式 SQL> ALTER DATABASE…
实验目的 本篇主要模拟控制文件丢失后,如何根据实际情况恢复数据库,才能使数据库尽可能不丢失数据. 实验环境 1)Linux系统环境 [oracle@DG1 ~]$ lsb_release -a LSB Version: :core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch Distributor ID: RedHatEnterpriseServer Description: Red Hat Enterprise…
一.物理结构Oracle物理结构包含了数据文件.日志文件.控制文件和参数文件 1.数据文件每一个ORACLE数据库有一个或多个物理的数据文件(data file).一个数据库的数据文件包含全部数据库数据.逻辑数据库结构(如表.索引)的数据物理地存储在数据库的数据文件中.数据文件有下列特征: 一个数据文件仅与一个数据库联系.一旦建立,数据文件不能改变大小. 一个表空间(数据库存储的逻辑单位)由一个或多个数据文件组成. 数据文件中的数据在需要时可以读取并存储在ORACLE内存储区中.例如:用户要存取…
一.Oracle 控制文件 为二进制文件,初始化大小由CREATE DATABASE指定,可以使用RMAN备份 记录了当前数据库的结构信息,同时也包含数据文件及日志文件的信息以及相关的状态,归档信息等等 在参数文件中描述其位置,个数等等.通常采用分散放开,多路复用的原则.在mount阶段被读取,open阶段一直被使用 维护数据库一致性(数据库启动时会比较控制文件与联机日志文件中的ckpt,即起始scn号,如相等则正常启动,否则需要介质恢复) 一个控制文件只能属于一个数据库 控制文件的任意修改将写…
一.Oracle 控制文件 为二进制文件,初始化大小由CREATE DATABASE指定,可以使用RMAN备份 记录了当前数据库的结构信息,同时也包含数据文件及日志文件的信息以及相关的状态,归档信息等等 在参数文件中描述其位置,个数等等.通常采用分散放开,多路复用的原则.在mount阶段被读取,open阶段一直被使用 维护数据库一致性(数据库启动时会比较控制文件与联机日志文件中的ckpt,即起始scn号,如相等则正常启动,否则需要介质恢复) 一个控制文件只能属于一个数据库 控制文件的任意修改将写…
主题:一则简单的RMAN元数据编目实验,来自于博客园AskScuti. 场景:RMAN备份完整情况下,未使用Catalog目录库.删除了所有的控制文件,在手工重建后,导致记录在控制文件中的RMAN备份元数据丢失. 目录 1. RMAN备份 2. 删除所有控制文件 3. 重建控制文件 4. 重新编目元数据 5. 验证可用性 1. RMAN备份 更改RMAN控制文件自动全备选项(建议开启) RMAN> show all; using target database control file inst…
1.创建表:SQL> conn scott/tiger@orcl;已连接. SQL> CREATE TABLE EMP2 AS SELECT * FROM EMP WHERE 1=2; 表已创建. SQL> SELECT * FROM EMP2; 未选定行 ====================2.以控制文件方式导入数据==编写控制文件: 保存为:D:\oracletest\testSqlLdr1.ctl LOAD DATA INFILE * INTO TABLE EMP2 FILED…
--什么是控制文件 控制文件是数据库的一个二进制文件,它主要记录数据库的名称. 数据库的数据文件存放位置等信息. 一个控制文件只能属于一个数据库.如果控制文件丢失,这数据库就无法操作. --下面查询语句必须在 sql plus工具中执行. --查询控制语句数据字典 desc v$controlfile; --什么是日志文件 日志文件在Oracle数据库中分为重做日志文件和归档日志文件两种.重做日志文件 是Oracle数据库正常运行不可缺少的文件.重做日志文件主要记录了数据库 操作过程.用于备份和…
网上有很多关于控制文件的操作,我大概看了下.有很多都是炒来炒去转来转去.下面以自己理解和操作为例来对oracle的控制文件进行下介绍. 首先介绍下控制文件 在oralce数据库中,控制文件是一个很小的二进制文件,一般大小在10MB左右在数据库创建时被自动创建,并在数据库变化时更新.控制文件不断被更新,并且在任何时候都要保证控制文件可用.控制文件在oracle中扮演者很重要的角色,没有控制文件或者控制文件损坏数据库必然down掉.控制文件包含有数据库结构信息,数据文件和日志文件信息. 由于控制文件…
数据库当前scn 代码如下 复制代码 idle> select checkpoint_change# from v$database; CHECKPOINT_CHANGE#------------------ 271743118 idle> shutdown abort ORACLE 例程已经关闭.分析控制文件中scn 这里我们可以看到加粗部分为数据库scn 代码如下 复制代码 SQL>select to_number('10327a59','xxxxxxxxx') from dual;…
Oracle数据库控制文件多路复用多路复用控制文件,指的是在系统不同的位置上同时存放多个控制文件的副本,此时如果某个路径对应的磁盘发送物理损坏导致该控制文件损坏,就可以通过另一个磁盘上的控制文件进行恢复.1.查看现在使用的控制文件SQL> select name as 控制文件 from v$controlfile;控制文件--------------------------------------------------------------------------------/u01/ap…
1.rman完全恢复的前提条件:历史的datafile,controlfile和spfile备份,加上完整的archivelog和完好的redolog. 2.rman备份脚本: a.RMAN 0级备份命令: run{ allocate channel c1 type disk; allocate channel c2 type disk; allocate channel c3 type disk; backup incremental level tag 'level0' format "E:…
• 对恢复目录和RMAN 资料档案库控制文件的使用进行比较• 创建和配置恢复目录• 在恢复目录中注册数据库• 同步恢复目录• 使用RMAN 存储脚本• 备份恢复目录• 创建虚拟专用目录 RMAN 资料档案库数据存储:比较选项控制文件:• 管理更简单• 默认设置恢复目录:• 复制控制文件数据• 存储更长的备份历史记录• 服务于多个目标• 存储RMAN 脚本 RMAN 资料档案库数据始终存储在目标数据库的控制文件中.此外,它也可以存储在一个名为“恢复目录”的单独数据库中.恢复目录会在单独的数据库中保…
1.备份和恢复功能的用途: –保护数据 -介质故障 -用户错误 -应用程序错误 –数据保存和历史数据保留 –数据传输 2.典型的备份和恢复任务 –通过配置数据库实现可恢复 –定义备份计划 –对不同类型的故障情形进行计划和测试 –对备份和恢复环境进行监控.调整和故障排除 –从备份还原数据 –将事务处理恢复到所需的时间点 一.Rman基本概念 Rman(Rcover Manager)是Oracle数据备份和恢复的主要管理工具之一,它可以很方便快捷的对数据库实现备份和恢复,而且它还可以保存已经备份的信…
一.数据迁移说明 在DBA的工作中会遇到数据迁移的情况,比如将本地磁盘迁移到ASM,亦或者需要更换存储设备,那么我就需要迁移整个数据库的存储位置. 如果只是移动表空间或者数据文件,我们可以将表空间或者数据文件offline 之后,移动位置,在用alter database rename 和alter tablespace rename 来将位置的变化写入控制文件即可. (1)按数据文件来: 1.先将相应的数据文件 offline ALTER DATABASE DATAFILE 'D:/ORACL…