Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2325843
  • 博文数量: 535
  • 博客积分: 8689
  • 博客等级: 中将
  • 技术积分: 7066
  • 用 户 组: 普通用户
  • 注册时间: 2010-11-26 10:00
文章分类

全部博文(535)

文章存档

2024年(4)

2023年(4)

2022年(16)

2014年(90)

2013年(76)

2012年(125)

2011年(184)

2010年(37)

分类: Oracle

2012-09-15 17:10:22

 
 
 
  oracle 日志文件、参数文件、控制文件备份恢复

在此之前搞清楚每个文件的作用,一定要掌握oracle的基本概念。

一、         基本文件的备份恢复

1logfile多元化和备份恢复

日志查询

select * from v$logfile;

select * from v$log;

手工切换日志

alter system switch logfile;

手工检查点

alter system checkpoint;

告警日志文件

show paramter dump

$ORACLE_BASE/admin/orcl/bdump

tail -f alert*.log

多元化日志文件

alter database add logfile member '/opt/ora10g/oradata/orcl/redo01B.log' to group 1;

alter database add logfile member '/opt/ora10g/oradata/orcl/redo02B.log' to group 2;

alter database add logfile member '/opt/ora10g/oradata/orcl/redo03B.log' to group 3;

日志文件坏了,修复日志文件(丢失了,也可以用这个恢复)

alter database clear logfile group 1;

如果未归当

alter database clear unarchived logfile group 2;

添加成员

alter database add logfile group 4;

alter database add logfile member '/opt/ora10g/oradata/orcl/redo04.log' to group 4;

删除日志组

alter database drop logfile group 4;

删除日志组成员

alter database drop logfile member '/opt/ora10g/oradata/orcl/redo01B.log';

2、参数文件备份恢复

参数文件(10g中的参数文件)

主要用来记录数据库的配置文件,在数据库启动时,Oracle读取参数文件,并根据参数文件中的参数设置来配置数据库。

如内存池的分配,允许打开的进程数和会话数等。

两类参数文件:

pfile:文本文件的参数文件,可以使用vi,vim等编辑器修改,文件名通常为init.ora

spfile:二进制的参数文件,不能直接修改,只能存放在Oracle服务器端,可以使用EM或指令来修改

(alter system|session set parameter_name = values <>),

文件名通常为spfile.ora,支持RMAN备份。

优先级别:

Oracle 启动读取参数文件的顺序,如果个文件都不存在,则Oracle会报错

spfile.ora --> spfile.ora -->init.ora

参数文件的路径:*/

     spfle:$ORACLE_HOME/dbs/spfile$ORACLE_SID.ora

     pfile(9i):$ORALCE_HOME/dbs/init$ORALCE_SID.ora /*10g以后一般不用init.ora*/

     pfile(10g):$ORALCE_BASE/admin/$ORACLE_SID/pfile/*仅当数据库初始化时使用*/

     pfile:$ORACLE_HOME/dbs/init.ora /*默认*/

/*

参数文件之间的转化

spfile 转化为pfile

pfile 转换为spfile

spfile来生成pfile

create pfile from spfile ,执行完毕后,pfile将保存为$ORACLE_HOME/dbs/init$ORACLE_SID.ora

也可以指定pfile的路径:create pfile = '

' from spfile;

pfile生成spfile

create spfile from pfile

create spfile from pfile = '

'

create spfile = '

' from pfile

11g中的新指令,从memeory中生成

create spfile = '

' from memeory */

 

pfile文件备份二进制的启动参数文件

create pfile from spfile;

spfile文件丢失或损坏时可以

startup pfile='...INIT.ora'

create spfile from pfile

startup force

    show parameter spfile

3、控制文件备份恢复

多元化控制文件

控制文件记录和维护数据库的物理结构,而且还记录了备份和恢复有关的信息,如果数据库只有一个控制文件,

那么当出现介质失败同时控制文件也损坏的时候,将导致无法装载数据库,此时如果没有控制文件备份,那会是一场灾难,

所以要多元化控制文件,而且最好分布在不同的磁盘上。

查询已存的控制文件:

SQL>select  name from v$controlfile;

初始化参数control_files:

Alter system set control_files='/disk1/ora10g/oradata/orcl/control01.ctl','/disk1/ora10g/oradata/orcl/control02.ctl''/disk1/ora10g/oradata/orcl/control03.ctl''/disk1/ora10g/control01.ctl' scope=spfile

关闭数据库:

SQL>shutdown immediate;

复制控制文件:

SQL>host cp /disk1/ora10g/oradata/orcl/control01.ctl /disk1/ora10g/control01.ctl

启动数据库:

SQL>startup

 

备份控制文件

a、将控制文件备份为二进制文件

SQL>alter database backup controlfile to 'i:\oracle\backup\control.bkp';

这种方式直接cp回去就ok

 

b、将控制文件备份为文本文件(备份到oracle\base\admin\sid\udump目录下的跟踪文件中,将在跟踪文件中生成一个SQL脚本)

恢复也很简单,找到trace文件,打开找到类似下面内容的:

STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "ORCL" RESETLOGS  NOARCHIVELOG

    MAXLOGFILES 16

    MAXLOGMEMBERS 3

    MAXDATAFILES 100

    MAXINSTANCES 8

    MAXLOGHISTORY 292

LOGFILE

  GROUP 1 (

    '/disk1/ora10g/oradata/orcl/redo01.log',

    '/disk1/ora10g/oradata/orcl/redo01B.log'

  ) SIZE 50M,

  GROUP 2 (

    '/disk1/ora10g/oradata/orcl/redo02.log',

    '/disk1/ora10g/oradata/orcl/redo02B.log'

  ) SIZE 50M,

  GROUP 3 (

    '/disk1/ora10g/oradata/orcl/redo03.log',

    '/disk1/ora10g/oradata/orcl/redo03B.log'

  ) SIZE 50M

-- STANDBY LOGFILE

DATAFILE

  '/disk1/ora10g/oradata/orcl/system01.dbf',

  '/disk1/ora10g/oradata/orcl/undotbs01.dbf',

  '/disk1/ora10g/oradata/orcl/sysaux01.dbf',

  '/disk1/ora10g/oradata/orcl/users01.dbf',

  '/disk1/ora10g/oradata/orcl/example01.dbf'

CHARACTER SET WE8ISO8859P1

;

直接创建为sql文件,然后通过@调用。

然后alter database open rsetlogs;

 

 

 

阅读(978) | 评论(0) | 转发(0) |
0

上一篇:安装JAVA1.6

下一篇:更换datavg 的硬盘

给主人留下些什么吧!~~