首页 Oracle 10g RAC配置DATAGUARD

Oracle 10g RAC配置DATAGUARD

举报
开通vip

Oracle 10g RAC配置DATAGUARD RAC 配置 dataguard 1、配置实例 Primary Standby RAC(2 instance) Single Instance 环境: RAC PRIMARY STANDBY HOST RAC1 RAC2 DG IP VIP 192.168.5.239 PUBIP 192.168.5.246 PRIIP 10.0.0.1 VIP 192.168.5.240 PUBIP 192.168.5.247 PRIIP 10.0.0.2 192...

Oracle 10g RAC配置DATAGUARD
RAC 配置 dataguard 1、配置实例 Primary Standby RAC(2 instance) Single Instance 环境: RAC PRIMARY STANDBY HOST RAC1 RAC2 DG IP VIP 192.168.5.239 PUBIP 192.168.5.246 PRIIP 10.0.0.1 VIP 192.168.5.240 PUBIP 192.168.5.247 PRIIP 10.0.0.2 192.168.5.243 Instance racdb1 racdb1 racdb DB_NAME racdb racdb Data 、 control file、redo file ASM /usr/oracle/oradata/racdb 2、Primary准备工作 1)启动数据库 force logging SQL> alter database force logging; 2)配置 primary归档模式 配置 flash recovery area,用于存放两个实例的归档 SQL> alter system set db_recovery_file_dest_size=4G; SQL> alter system set db_recovery_file_dest='+recovery'; SQL> show parameter recovery NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ db_recovery_file_dest string +recovery db_recovery_file_dest_size big integer 4G recovery_parallelism integer 0 启动归档,要求两个实例都处于非 OPEN 状态,在其中一个实例处于 mount 状态修改后,再 打开其他实例即可。 SQL> alter database archivelog; SQL> archive log list; Database log mode Archive Mode Automatic archival Enabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 18 Next log sequence to archive 19 Current log sequence 19 3、Standby准备工作 目录规划 [oracle@dg ~]$ cd /usr/oracle $ mkdir -p oradata/racdb/archive $ mkdir –p admin/racdb $ cd admin/racdb $ mkdir adump bdump dpdump pfile udump 4、生成 standby 数据库的备份、参数文件、密码文件、控制文件 1)primary和 standby 参数文件 SQL> create pfile='/usr/oracle/initracdb.ora' from spfile; Primary最终参数文件: racdb2.__db_cache_size=83886080 racdb1.__db_cache_size=88080384 racdb1.__java_pool_size=4194304 racdb2.__java_pool_size=4194304 racdb1.__large_pool_size=4194304 racdb2.__large_pool_size=4194304 racdb2.__shared_pool_size=109051904 racdb1.__shared_pool_size=104857600 racdb1.__streams_pool_size=0 racdb2.__streams_pool_size=0 *.audit_file_dest='/usr/oracle/admin/racdb/adump' *.background_dump_dest='/usr/oracle/admin/racdb/bdump' *.cluster_database_instances=2 *.cluster_database=true *.compatible='10.2.0.1.0' *.control_files='+DATA/racdb/controlfile/current.260.749574973' *.core_dump_dest='/usr/oracle/admin/racdb/cdump' *.db_block_size=8192 *.db_create_file_dest='+DATA' *.db_domain='' *.db_file_multiblock_read_count=16 *.db_name='racdb' *.db_recovery_file_dest_size=4294967296 *.db_recovery_file_dest='+recovery' *.dispatchers='(PROTOCOL=TCP) (SERVICE=racdbXDB)' racdb2.instance_number=2 racdb1.instance_number=1 *.job_queue_processes=10 racdb2.local_listener='LISTENERS_RACDB2' racdb1.local_listener='LISTENERS_RACDB1' *.log_archive_config='dg_config=(racdb,racdb_single)' *.log_archive_dest_2='service=racdb_single db_unique_name=racdb_single lgwr async' *.log_archive_dest_state_2='ENABLE' *.open_cursors=300 *.pga_aggregate_target=52428800 *.processes=150 *.remote_listener='LISTENERS_RACDB' *.remote_login_passwordfile='exclusive' *.sga_target=209715200 racdb2.thread=2 racdb1.thread=1 *.undo_management='AUTO' racdb2.undo_tablespace='UNDOTBS2' racdb1.undo_tablespace='UNDOTBS1' *.user_dump_dest='/usr/oracle/admin/racdb/udump' Standby参数文件为: *.audit_file_dest='/usr/oracle/admin/racdb/adump' *.background_dump_dest='/usr/oracle/admin/racdb/bdump' *.compatible='10.2.0.1.0' *.control_files='/usr/oracle/oradata/racdb/control01.ctl' *.core_dump_dest='/usr/oracle/admin/racdb/cdump' *.db_block_size=8192 *.db_domain='' *.db_file_multiblock_read_count=16 *.db_name='racdb' *.dispatchers='(PROTOCOL=TCP) (SERVICE=racdbXDB)' *.job_queue_processes=10 *.db_unique_name='racdb_single' *.undo_management='AUTO' *.undo_tablespace='UNDOTBS1' *.log_archive_config='dg_config=(racdb,racdb_single)' *.log_archive_dest_1='location=/usr/oracle/oradata/racdb/archive' *.log_archive_format='%t_%s_%r.dbf' *.db_file_name_convert='+DATA/racdb/datafile','/usr/oracle/oradata/racdb' *.log_file_name_convert='+DATA/racdb/onlinelog','/usr/oracle/oradata/racdb' *.standby_file_management=auto *.fal_client='racdb_single' *.fal_server='racdb1','racdb2' *.open_cursors=300 *.pga_aggregate_target=52428800 *.processes=150 *.remote_login_passwordfile='exclusive' *.sga_target=209715200 *.standby_file_management='auto' *.user_dump_dest='/usr/oracle/admin/racdb/udump' 2)密码文件 直接拷贝一个实例上的密码文件即可。 [oracle@rac1 ~]$ ls /usr/oracle/product/10.2.0/db/dbs/orapwracdb1 3)利用 RMAN 备份数据库 [oracle@rac1 ~]$ rman [oracle@rac1 ~]$ rman Recovery Manager: Release 10.2.0.1.0 - Production on 星期四 5月 5 10:54:15 2011 Copyright (c) 1982, 2005, Oracle. All rights reserved. RMAN> connect target connected to target database: RACDB (DBID=747191741) RMAN> backup database format '/usr/oracle/full.bak'; 4)创建 standby 控制文件 SQL> alter database create standby controlfile as '/usr/oracle/control01.ctl'; 5)设置 primary和 standby 的 listener和 tnsnames.ora Primary: Rac1: Listener: LISTENER_RAC1 = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.5.239)(PORT = 3173)(IP = FIRST)) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.5.246)(PORT = 3173)(IP = FIRST)) ) ) ) tnsnames.ora RACDB1 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.5.239)(PORT = 3173)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = racdb) (INSTANCE_NAME = racdb1) ) ) RACDB2 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.5.240)(PORT = 3173)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = racdb) (INSTANCE_NAME = racdb2) ) ) RACDB_SINGLE = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.5.243)(PORT = 3173)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = racdb) ) ) Rac2的 listener 和 tnsname 和 RAC1 类似 Standby: Listener: SID_LIST_LISTENER = (SID_LIST = (SID_DESC= (GLOBAL_DBNAME = racdb) (ORACLE_HOME = /usr/oracle/product/10.2.0) (SID_NAME = racdb) ) ) LISTENER = (DESCRIPTION= (ADDRESS=(PROTOCOL=TCP)(HOST=192.168.5.243)(PORT=3173)) ) tnsname.ora 和 primary 的 tnsnames.ora 相同 5、生成 standby 数据库 1)ftp 将在 primary 数据库生成的数据库备份,控制文件、参数文件、密码文件分别放到对 应的目录下。 2)启动 standby 数据库到 mount 状态 $ sqlplus " / as sysdba" SQL> startup nomount SQL> alter database mount 3)使用 RMAN restore 数据文件 $ORACLE_HOME/bin/rman RMAN> connect target RMAN> restore database 4)创建 standby redo logfiles SQL> select member from v$logfile; MEMBER -------------------------------------------------------------------------------- /usr/oracle/oradata/racdb/group_2.262.749574975 /usr/oracle/oradata/racdb/group_1.261.749574975 /usr/oracle/oradata/racdb/group_3.265.749575023 /usr/oracle/oradata/racdb/group_4.266.749575023 需要针对每个 thread创建 3 个 standby 日志组 SQL> alter database add standby logfile thread 1 group 5 ('/usr/oracle/oradata/racdb/st_1_5.log')size 50M, group 6 ('/usr/oracle/oradata/racdb/st_1_6.log')size 50M, group 7 ('/usr/oracle/oradata/racdb/st_1_7.log')size 50M; SQL> alter database add standby logfile thread 2 group 8 ('/usr/oracle/oradata/racdb/st_2_8.log')size 50M, group 9 ('/usr/oracle/oradata/racdb/st_2_9.log')size 50M, group 10 ('/usr/oracle/oradata/racdb/st_2_10.log')size 50M; SQL> select member from v$logfile; MEMBER -------------------------------------------------------------------------------- /usr/oracle/oradata/racdb/group_2.262.749574975 /usr/oracle/oradata/racdb/group_1.261.749574975 /usr/oracle/oradata/racdb/group_3.265.749575023 /usr/oracle/oradata/racdb/group_4.266.749575023 /usr/oracle/oradata/racdb/st_1_5.log /usr/oracle/oradata/racdb/st_1_6.log /usr/oracle/oradata/racdb/st_1_7.log /usr/oracle/oradata/racdb/st_2_8.log /usr/oracle/oradata/racdb/st_2_9.log /usr/oracle/oradata/racdb/st_2_10.log 5)启动 standby 数据库日志应用 SQL> recover managed standby database using current logfile disconnect from session; SQL> select process,status from v$managed_standby; PROCESS STATUS --------- ------------ ARCH CLOSING ARCH CONNECTED MRP0 WAIT_FOR_LOG RFS IDLE RFS IDLE RFS IDLE 6、在 primary 进行操作,验证数据同步 primary [oracle@rac1 ~]$ sqlplus " / as sysdba" SQL> alter tablespace test add datafile size 100M; Tablespace altered. SQL> select name from v$datafile; NAME -------------------------------------------------------------------------------- +DATA/racdb/datafile/system.256.749574909 +DATA/racdb/datafile/undotbs1.258.749574911 +DATA/racdb/datafile/sysaux.257.749574911 +DATA/racdb/datafile/users.259.749574911 +DATA/racdb/datafile/undotbs2.264.749575005 +DATA/racdb/datafile/test.268.750281521 +DATA/racdb/datafile/test.269.750339203 Standby [oracle@dg oracle]$ sqlplus " / as sysdba" SQL> select process,status from v$managed_standby; PROCESS STATUS --------- ------------ ARCH CLOSING ARCH CLOSING RFS IDLE RFS IDLE RFS IDLE RFS IDLE MRP0 APPLYING_LOG SQL> select name from v$datafile; NAME -------------------------------------------------------------------------------- /usr/oracle/oradata/racdb/system.256.749574909 /usr/oracle/oradata/racdb/undotbs1.258.749574911 /usr/oracle/oradata/racdb/sysaux.257.749574911 /usr/oracle/oradata/racdb/users.259.749574911 /usr/oracle/oradata/racdb/undotbs2.264.749575005 /usr/oracle/oradata/racdb/test.268.750281521 /usr/oracle/oradata/racdb/test.269.750339203 7、switchover 在 switchover 过程中,只能有一个主实例和一个 standby 实例处于 active 状态中,因此,在 switchover 之前,停止集群中的其他实例。 如果 standby 数据库为 RAC 的话,日志接收和日志恢复可以不是同一个实例,分别称为 Receive Instance和 Recover Instance。为了简化,一般将二者统一为一个 instance,
本文档为【Oracle 10g RAC配置DATAGUARD】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_956759
暂无简介~
格式:pdf
大小:330KB
软件:PDF阅读器
页数:8
分类:互联网
上传时间:2013-08-31
浏览量:15