oracle9 备份,Oracle9i控制文件的备份方法

方法一:创建文本格式的控制文件

$ sqlplus '/ as sysdba';

SQL> alter database backup controlfile to trace;

Database altered.

这种备份方式会产生一个trace文件(文本格式),可以使用编辑器进行编辑,里面记录了创建控制文件(control file)的脚本,其中包括了两部分-RESETLOGS和NORESETLOGS。还可以在trace后面跟resetlog/noresetlogs选项,单独生成指定类型的控制文件脚本。默认生成两种格式的。

SQL>alter database backup controlfile to trace resetlog/noresetlogs;

该命令生成的trace文件存放在参数文件中USER_DUMP_DEST参数指定的位置。默认位置为$ORACLE_HOME/admin//udump目录。(表示数据库实例名)

SQL> show parameter user_dump_dest

NAME TYPE VALUE

----------------------------- ----------- --------------------------------------------------

user_dump_dest string /space/orcl9i/admin/beta9i/udump

生成的trace文件名称为_ora_.trc。(表示数据库实例名,表示执行控制文件备份命令的会话所对应的操作系统进程号,相关信息可以查询v$session和v$process视图)

SQL> select sid,serial#,process,paddr from v$session where username='SYS';

SID SERIAL# PROCESS PADDR

---------- -------------- ------------------ ------------------------------

11 573 29185 000000038A296190

SQL> select spid,addr from v$process where

2 addr = (select paddr from v$session where username='SYS');

SPID ADDR

------------ --------------------------------

29186 000000038A296190

其中v$session视图PADDR字段等于v$process视图的ADDR字段。SPID就是执行控制文件备份命令的会话所对应的操作系统进程号。

此时已经在在USER_DUMP_DEST参数目录下创建了文件beta9i_ora_29186.trc。

$ ps -ef | grep 29185

orcl9i 29314 29159 0 09:23:51 pts/1 0:00 grep 29185

orcl9i 29186 29185 0 08:53:09 ? 0:00 oraclebeta9i (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))

beta9i 29185 29181 0 08:53:08 pts/2 0:00 sqlplus / as sysdba

方法二:创建二进制格式的控制文件

$ sqlplus '/ as sysdba'

SQL> alter database backup controlfile to '/space/beta9i/controlfile.bak';

Database altered.

如果备份指定的文件已经存在,系统会报错,可以在命令中使用reuse选项来重用文件。

SQL> alter database backup controlfile to '/space/beta9i/controlfile.bak';

alter database backup controlfile to '/space/beta9i/controlfile.bak'

*

ERROR at line 1:

ORA-01580: error creating control backup file /space/beta9i/controlfile.bak

ORA-27038: skgfrcre: file exists

SQL> alter database backup controlfile to '/space/beta9i/controlfile.bak' reuse;

Database altered.

$ ls -l /space/beta9i/controlfile.bak

-rw-r----- 1 orcl9i dba 2023424 Nov 25 09:35 /space/beta9i/controlfile.bak

方法三、直接复制control file

复制又分两种,一是shutdown数据库,用操作系统的命令将control01.ctl复制到备份的目录中去。二是

sql>host copy c:oracleoradafoxcontrol01.ctl d:备份目录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值