赛迪网 > IT技术 数据库 > 精彩更新
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

在单机上创建物理Oracle数据库9i standby

发布时间:2008.07.17 09:09     来源:赛迪网    作者:海勒

【赛迪网-IT技术报道】说明:Oracle9i 数据库的 Data Guard 特性确保对数据进行完整的保护,是 Oracle 9i 的一个关键特性之一。Data Guard 可以创建物理的 Standby 数据库,也可以创建逻辑的Standby数据库,还可以混合使用,灵活性比较强.如果对Standby机制的了解有更高的期望,或者想得到关于Oracle数据库的data guard 和Standby的更多信息,请参考官方的文档。

现有的数据库实例 (Primary)名字:orcl1

预创建的Standby数据库实例名字:orcl2

数据库版本信息:

SQL> SELECT * FROM v$version;

BANNER

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

Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

PL/SQL Release 9.2.0.1.0 - Production

CORE 9.2.0.1.0 Production

TNS for 32-bit Windows: Version 9.2.0.1.0 - Production

NLSRTL Version 9.2.0.1.0 - Production

准备工作:

首先确认Primary数据库是否在归档模式下

SQL> SHOW user

USER is "SYS"

SQL>

SQL> ARCHIVE log list

Database log mode Archive ModeAutomatic archival EnabledArchive destination D:\oracle\arcOldest online log sequence 28Next log sequence to archive 30Current log sequence 30如果不在归档模式下,调整数据库。首先提交命令修改SPfile:

SQL>ALTER SYSTEM SET log_archive_start=TRUE SCOPE=SPFILE;

然后关闭数据库实例

SQL>SHUTDOWN immediate;

备份数据库

SQL>STARTUP MOUNT

SQL>ALTER DATABASE ARCHIVELOG;

SQL>ALTER DATABASE OPEN;

SQL>SHUTDOWN IMMEDIATE

备份

1. Primary Database 需要做的准备工作

1.1 激活 Forced Logging

SQL> ALTER DATABASE FORCE LOGGING;

1.2 设置本地归档目标

SQL> ALTER SYSTEM SET log_archive_dest_1='LOCATION=D:\oracle\arc' SCOPE=BOTH;

此操作直接生效

2.创建物理的Standby数据库

2.1 标记出Primary数据库的数据文件

SQL> SELECT NAME FROM v$datafile;

NAME

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

D:\ORACLE\ORADATA\ORCL1\SYSTEM01.DBFD:\ORACLE\ORADATA\ORCL1\UNDOTBS01.DBFD:\ORACLE\ORADATA\ORCL1\DRSYS01.DBFD:\ORACLE\ORADATA\ORCL1\INDX01.DBFD:\ORACLE\ORADATA\ORCL1\TOOLS01.DBFD:\ORACLE\ORADATA\ORCL1\USERS01.DBFD:\ORACLE\ORADATA\ORCL1\XDB01.DBF

2.2 关闭Instance 拷贝数据文件到既定目的地

SQL> SHUTDOWN IMMEDIATE;

2.3 为Standby 数据库创建控制文件

SQL> ALTER DATABASE CREATE STANDBY CONTROLFILE

AS 'E:\oracle\oradata\orcl2\STANDBY.CTL';

要注意这个控制文件的名字不要和Primary的控制文件名字重复

2.4 为Standby数据库准备初始化参数文件名字

SQL> CREATE PFILE='E:\oracle\admin\orcl2\pfile\initorcl2.ora' FROM SPFILE;

2.5 设定初始化Physical Standby Database参数

*.aq_tm_processes=1

*.background_dump_dest='E:\oracle\admin\orcl2\bdump'

*.compatible='9.2.0.0.0'

*.control_files='E:\oracle\oradata\orcl2\STANDBY.CTL'

*.core_dump_dest='E:\oracle\admin\orcl2\cdump'

*.db_block_size=8192

*.db_cache_size=19922944

*.db_domain=''

*.db_file_multiblock_read_count=32

*.db_name='orcl1'

*.dispatchers='(PROTOCOL=TCP) (SERVICE=DEMOXDB)'

*.fast_start_mttr_target=300

*.hash_area_size=1048576

*.hash_join_enabled=TRUE

*.instance_name='orcl2'

*.java_pool_size=20971520

*.job_queue_processes=10

*.large_pool_size=7340032

*.log_archive_dest_1='location=E:\oracle\arc'

*.log_archive_start=TRUE

*.open_cursors=300

*.optimizer_mode='FIRST_ROWS'

*.pga_aggregate_target=17825792

*.processes=150

*.query_rewrite_enabled='TRUE'

*.remote_login_passwordfile='EXCLUSIVE'

*.shared_pool_size=33554432

*.sort_area_size=1048576

*.star_transformation_enabled='TRUE'

*.timed_statistics=TRUE

*.undo_management='AUTO'

*.undo_retention=10800

*.undo_tablespace='UNDOTBS1'

*.user_dump_dest='E:\oracle\admin\orcl2\udump'

lock_name_space=orcl2

standby_file_management=AUTO

remote_archive_enable=TRUE

standby_archive_dest='E:\oracle\standbyarc'

db_file_name_convert=('D:\oracle\oradata\orcl1', 'E:\oracle\oradata\orcl2')

log_file_name_convert=('D:\oracle\oradata\orcl1', 'E:\oracle\oradata\orcl2')

log_archive_dest_1=('LOCATION=E:\oracle\standbyarc')

整个操作的过程中,容易出现错误的地方几乎都集中在此处。必须认真仔细的对待这个文件。标记为黑色的地方是需要进行修改的。

2.6 创建一个Windows服务

WINNT> oradim -NEW -SID orcl2 -STARTMODE manual

2.7 Create a Server Parameter File for the Standby Database

可参考执行如下操作:

C:\>SET oracle_sid=orcl2

C:\>SQLPLUS /nolog

SQL> CONNECT / as sysdba

SQL> CREATE SPFILE FROM PFILE='E:\oracle\admin\orcl2\pfile\initorcl2.ora';

2.8 启动物理Standby数据库

C:\>set oracle_sid=orcl2

C:\>sqlplus /nolog

SQL> connect / as sysdba

SQL> STARTUP NOMOUNT;

SQL> ALTER DATABASE MOUNT STANDBY DATABASE;

2.9 在Standby数据库上,初始化Log Apply 服务

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;

2.10 激活到物理Standby数据库的归档

SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='SERVICE=orcl2' SCOPE=BOTH;

SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=ENABLE SCOPE=BOTH;

2.11 启动远程归档

SQL> ALTER SYSTEM ARCHIVE LOG CURRENT; -在primary database上执行.

3.安装完的的验证

3.1 在Primary database上

alter system set standby_archive_dest='E:\oracle\standbyarc' scope=both;

3.2 在database,查询V$ARCHIVED_LOG

(其实也可以直接到相关目录下查看Log是否创建):

SQL> SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME

FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;

SEQUENCE# FIRST_TIM NEXT_TIME---------- --------- --------- 30 09-JAN-07 17-JAN-07 31 17-JAN-07 17-JAN-073.3 在Primary数据库上,归档当前的Log

SQL> ALTER SYSTEM ARCHIVE LOG CURRENT;

3.4 验证是否收到

SQL> SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME

FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;

SEQUENCE# FIRST_TIM NEXT_TIME---------- --------- --------- 30 09-JAN-07 17-JAN-07 31 17-JAN-07 17-JAN-07 32 17-JAN-07 17-JAN-07

3.5 验证是否新的归档Redo日志已经被应用

SQL> SELECT sequence#, applied FROM v$archived_log ORDER BY sequence#;

SEQUENCE# APP---------- --- 30 YES 31 YES 32 YESOK.表明我们还是成功的.

附加内容:

primary数据库的Pfile内容

*.aq_tm_processes=1

*.background_dump_dest='D:\oracle\admin\orcl1\bdump'

*.compatible='9.2.0.0.0'

*.control_files='D:\oracle\oradata\orcl1\control01.ctl','D:\oracle\oradata\orcl1\control02.ctl','D:\oracle\oradata\orcl1\control03.ctl'

*.core_dump_dest='D:\oracle\admin\orcl1\cdump'

*.db_block_size=8192

*.db_cache_size=25165824

*.db_domain=''

*.db_file_multiblock_read_count=16

*.db_name='orcl1'

*.dispatchers='(PROTOCOL=TCP)'

*.fast_start_mttr_target=300

*.hash_join_enabled=TRUE

*.instance_name='orcl1'

*.java_pool_size=33554432

*.job_queue_processes=10

*.large_pool_size=8388608

*.log_archive_dest_1='LOCATION=D:\oracle\arc'

*.log_archive_start=TRUE

*.open_cursors=300

*.pga_aggregate_target=25165824

*.processes=150

*.query_rewrite_enabled='FALSE'

*.remote_login_passwordfile='EXCLUSIVE'

*.shared_pool_size=50331648

*.sort_area_size=524288

*.star_transformation_enabled='FALSE'

*.timed_statistics=TRUE

*.undo_management='AUTO'

*.undo_retention=10800

*.undo_tablespace='UNDOTBS1'

*.user_dump_dest='D:\oracle\admin\orcl1\udump'

*.standby_archive_dest='E:\oracle\standbyarc'

*.remote_archive_enable=true

(责任编辑:卢兆林)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· 推荐:Oracle9i 图解安装手册(pdf) (09-20) · 推荐:图解Oracle9i安装-win2000平台 (09-20)
· Oracle9i性能优化 (09-03) · Oracle9i中数据库结构的优化 (09-03)
· Oracle9i中性能优化方法和工具 (09-03) · 优化Oracle9i内存结构 (09-03)
· 优化Oracle9i中的系统和应用程序 (09-03) · 《优化Oracle9i中的系统和应用程序》课程推介 (08-13)
· 《优化Oracle9i内存结构》课程推介 (08-07) · 《Oracle9i中数据库结构的优化》课程推介 (08-07)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
· 移动信息化市场方兴未艾 企业呼唤标准出台
· 如何把握企业价值差异 避免CRM与SCM脱节
· 齐看四大厂商的SaaS动态 ERP案例分析
· 通方期货CRM解决方案 方正电子公文系统
  IT博客 ·曾剑秋·项立刚·Java学习·网管
  IT技术论坛 ·开发·网管·安全·数据库·系统