li
  当前位置:主页 > 配置管理 > 文章内容
li
UNIX裸设备和文件系统之间移动ORACLE的操作步骤(3)
来源: www.ixdba.net  作者: Rejoice999    时间:2008-04-16   阅读:34  
本文章共4594字,分3页,当前第3页,快速翻页:
 


/oradata/redo01.log41943044194816

下表列出了常用OS上的ORACLE REDO_BLOCK_SIZE:

OSREDO_BLOCK_SIZE

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

Windows512

SUN Solaris512

HP-UX1024

IBM AIX512

Compaq Tru64 UNIX1024

Linux512

3.2在文件系统和裸设备之间移动ONLINE REDO LOG

参见2.2拷贝DATAFILE的过程,唯一不同是要把DB_BLOCK_SIZE换成REDO_BLOCK_SIZE。另外,REDO LOG也可以不用dd进行拷贝,而采用删除重建的方法:

SQL> SELECT * FROM v$log; --be sure it's not current and archived

SQL> ALTER SYSTEM SWITCH LOGFILE; --if it's current, force switch

SQL> ALTER DATABASE DROP LOGFILE GROUP n;

SQL> ALTER DATABASE ADD LOGFILE GROUP n 'newlogfilename' SIZE xxxxM;

四、移动控制文件(CONTROL FILE)

4.1在裸设备上建控制文件

ORACLE的控制文件是执行CREATE DATABASE或CREATE CONTROLFILE语句时生成的,其名字是由初始化参数文件init$ORACLE_SID.ora中的control_files参数指定。CONTROL FILE的大小不能显式指定,而且随着数据库的运行,它还会自动增长,所以为控制文件划分裸设备时要根据经验,留好足够的余量,以免不必要的麻烦。CONTROL FILE的逻辑块大小和DB_BLOCK_SIZE相同,而且文件头部也和DATAFILE一样有一块“Oracle OS Header Block”。

4.2在文件系统和裸设备之间移动控制文件

4.2.1 使用dd复制

拷贝CONTROL FILE的方法基本与2.2中拷贝DATAFILE相同,唯一不同是当由裸设备向文件系统拷贝时,如何确定CONTROL FILE的实际大小file_size (ORACLE数据字典里没有CONTROL FILE大小的数据)。下面介绍两个方法:

方法1:执行完下面的SQL语句,再到user_dump_dest目录查看刚产生的trc文件

SQL> ALTER SESSION SET EVENTS 'IMMEDIATE TRACE NAME CONTROLF LEVEL 10';

FILE HEADER:

Software vsn=135266304=0x8100000, Compatibility Vsn=134217728=0x8000000

Db Id=1937054535=0x73751b47, Db Name='O817'

Control Seq=5838=0x16ce, File size=476=0x1dc

File Number=0, Blksiz=8192, File Type=1 CONTROL

方法2:用ORACLE提供的工具dbfsize

$ dbfsize /oradata/control01.ctl

Database file: /oradata/control01.ctl

Database file type: file system

Database file size: 476 8192 byte blocks

从以上两个方法的输出结果都可得到file_size=(476+1)*8192=3907584

4.2.2 使用SQL命令复制

相对于4.2.1介绍的用dd拷贝CONTROL FILE,下面用SQL语句进行复制的方法更为简洁:

SQL> STARTUP MOUNT

SQL> ALTER DATABASE BACKUP CONTROLFILE TO 'newcontrolfile';

语句中newcontrolfile既可以是文件系统文件,也可以是RAW DEVICE,所以在MOUNT状态下运行这个命令就可以生成一个与现有CONTROL FILE完全相同CONTROL FILE复件。

4.2.3 修改初始化参数文件(init$ORACLE_SID.ora)

无论用4.2.1还是4.2.2的方法产生了新的CONTROL FILE,为了让数据库使用新的CONTROL FILE,只要修改init$ORACLE_SID.ora里的control_files参数即可。

五、Recovery Manager (RMAN)

RMAN是ORACLE8开始提供的备份与恢复工具,它能自动正确地跳过裸设备头部的OS Reserved Block,通过使用RMAN的BACKUP和RESTORE功能,可以方便地达到把DATAFILE和CONTROL FILE在文件系统和裸设备之间移动的目的,具体操作过程在这里不再详述,请参见RMAN手册。


阅读更多内容<<上一页 · 1 · 2 · 3


  上一篇: Oracle常用网址,欢迎各位网友补...   下一篇: 将ORACLE数据库的数据倒入到EXCE...
li
 §相关评论  
 热点文章

·oracle Logfile的不同状态说明
·Oracle数据库的一些常用操作经
·Oracle10g(10.2) 在Redhat AS4
·oracle工具:浅谈LogMiner的使用
·RHAD AS4 上安装 Oracle 数据库
·oracle基础知识(物理结构)
·oracle基础:Oracle中null的使用
·Oracle常用基本语法操作集锦
·oracle数据库查询前台正在发出
·AIX+ORACLE10G安装手册
·oracle数据库9i升级到oracle10
li
 编辑推荐
·oracle Logfile的不同状态说明
·Oracle数据库的一些常用操作经
·Oracle10g(10.2) 在Redhat AS4
·oracle工具:浅谈LogMiner的使用
·RHAD AS4 上安装 Oracle 数据库
·oracle基础知识(物理结构)
·oracle基础:Oracle中null的使用
·Oracle常用基本语法操作集锦
·oracle数据库查询前台正在发出
·AIX+ORACLE10G安装手册
·oracle数据库9i升级到oracle10
li
 相关篇章
·Oracle常用网址,欢迎各位网友补...
·Oracle常用数据字典总结
·Red Hat Linux AS4_U1 上安装 Or...
·oracle数据字典基础学习
·Oracle特殊包使用和DBMS_Job包使...
·oracle sequence与会话有关的一个...
·如何简单有效关闭Oracle死锁进程
·如何修改Oracle数据库进程及会话
·oracle dba之metalink.oracle.co...
·Oracle sql loader批量导入数据
·将ORACLE数据库的数据倒入到EXCE...
·如何升级oracle10.2.0到oracle 1...
·Oracle数据库 ASM功能简介
·与操作系统相关的oracle知识问答
·oracle dba与系统管理员的共同点...
·oracle 日志文件"alert log"过大...
·查找引起死锁的操作解决死锁问题
·如何使用"Automatic SGA Managem...
·怎样修改 DB Control 的服务端口
·修改了监听端口, 怎样保证 DB Co...
 
li
设为首页 | 关于我们 | 技术服务 | 收藏本站 | 网站地图 | 联系方式 | 本站友情连接