1、概述:
之前使用冷备的方式搭建了一个物理ADG环境,但是由于冷备需要停库。因此在一些大型库上使用这种技术就不怎么实用了,而使用duplicatefrom active database则必免了这种情况,它只需要短暂的重启库让主库参数文件生效,就能完成ADG的搭建。
2、环境说明
Oracle:11.2.0.1.0
OS:redhat 5.7
Primary IP:192.168.2.111/24
Hostname:dba1.test.com
DB_NAME=ora11g
Standby IP:192.168.2.112/24
Hostname:dba2.test.com
DB_NAME=ora11g
3、操作步骤:
3.1. Primary 端操作:
3.1.1. 设置归档模式
SQL> archive log list;
SQL> shutdown immediate
SQL> startup mount
SQL> alter database archivelog;
SQL> archive log list;
3.1.2. Primary 设置force logging
SQL> alterdatabase force logging;
SQL> selectforce_logging from v$database;
FORCE_LOG
---------
YES
3.1.3. 配置Oracle Net(主、从上修改)
注意:在Primary库和Standby都需要修改,可以将primary的listener.ora\tnsname.ora拷贝到standby上在做相应修改,如IP地址。修改完后重启listener。
主库:
Listener.ora
[oracle@dba1admin]$ cat listener.ora
# listener.oraNetwork Configuration File:/u01/oracle/product/11.2.0/network/admin/listener.ora
# Generated byOracle configuration tools.
-- 配置静态注册
SID_LIST_LISTENER=
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = ora11g)
(ORACLE_HOME =/u01/oracle/product/11.2.0)
(SID_NAME = ora11g)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.2.111)(PORT = 1521))
)
)
ADR_BASE_LISTENER= /u01/oracle
tnsname.ora
[oracle@dba1admin]$ cat tnsnames.ora
# tnsnames.oraNetwork Configuration File:/u01/oracle/product/11.2.0/network/admin/tnsnames.ora
# Generated byOracle configuration tools.
ORA11G_DBA1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.111)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ora11g)
)
)
ORA11G_DBA2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.2.112)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ora11g)
)
)
[oracle@dba2admin]$ tnsping ora11g_dba2
[oracle@dba2admin]$ tnsping ora11g_dba1
3.1.4. 添加data guard 参数
创建pfile
[oracle@dba1~]$ sqlplus / as sysdba
SYS@ora11g>create pfile from spfile;
[oracle@dba1~]$ cd $ORACLE_HOME/dbs
修改参数文件
[oracle@dba1dbs]$ vim initora11g.ora
ora11g.__db_cache_size=75497472
ora11g.__java_pool_size=4194304
ora11g.__large_pool_size=4194304
ora11g.__oracle_base='/u01/oracle'#ORACLE_BASEset from environment
ora11g.__db_cache_size=75497472
ora11g.__java_pool_size=4194304
ora11g.__large_pool_size=4194304
ora11g.__oracle_base='/u01/oracle'#ORACLE_BASEset from environment
ora11g.__pga_aggregate_target=146800640
ora11g.__sga_target=222298112
ora11g.__shared_io_pool_size=0
ora11g.__shared_pool_size=125829120
ora11g.__streams_pool_size=4194304
*.audit_file_dest='/u01/oracle/admin/ora11g/adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='/oradata/ora11g/control01.ctl','/u01/oracle/flash_recovery_area/ora11g/control02.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_recovery_file_dest='/u01/oracle/flash_recovery_area'
*.db_recovery_file_dest_size=4039114752
*.diagnostic_dest='/u01/oracle'
*.dispatchers='(PROTOCOL=TCP)(SERVICE=ora11gXDB)'
*.log_archive_format='%t_%s_%r.dbf'
*.memory_target=367001600
*.nls_language='SIMPLIFIEDCHINESE'
*.nls_territory='CHINA'
*.open_cursors=300
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sessions=170
*.undo_tablespace='UNDOTBS1'
--