企業級 oracle11G r2 DataGuard 安裝配置

企業級 oracle11G r2 DataGuard 安裝配置

安裝環境

IP地址與機器名 /etc/hosts

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1          localhost.localdomain localhost

::1              localhost6.localdomain6 localhost6

172.16.0.173   oracle173       #primary

172.16.0.174   oracle174            #standby

準備安裝環境172.16.0.173  oracle173       #primary把數據庫軟件與實例,監聽安裝好。

172.16.0.174   oracle174            #standby 只安裝數據庫軟件

 

1.修改oracle173  #primaryr tnsnames.ora文件

[oracle@oracle173 ~]$ cd /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/

[oracle@oracle173 admin]$ vi tnsnames.ora

 

orcl02 =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = oracle174)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = orcl)

    )

  )

 

orcl01 =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = oracle173)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = orcl)

    )

  )

 

ORCL =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = oracle173)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = orcl)

    )

  )

2.修改oracle173  #primaryr listener.ora

[oracle@oracle173 admin]$ vi listener.ora

 

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (GLOBAL_DBNAME = orcl)

      (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)

      (SID_NAME = orcl)

    )

  )

 

LISTENER =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS = (PROTOCOL = TCP)(HOST = oracle173)(PORT = 1521))

    )

  )

 

ADR_BASE_LISTENER = /u01/app/oracle

3.oracle173  #primary listener.oratnsnames.ora及密碼文件 orapworcl  oracle174

#standby,並修改listener.oratnsnames.ora文件  

[oracle@oracle173admin]$cd /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/

$ scp  listener.ora    oracle174:/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/

$ scp  tnsnames.ora  oracle174:/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/

[oracle@oracle173 admin]$ cd /u01/app/oracle/product/11.2.0/dbhome_1/dbs/

$ scp orapworcl oracle174:/u01/app/oracle/product/11.2.0/dbhome_1/dbs/

 

[oracle@oracle174 ~]$ cd /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/

[oracle@oracle174 admin]$ vi listener.ora

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (GLOBAL_DBNAME = orcl)

      (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)

      (SID_NAME = orcl)

    )

  )

 

LISTENER =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS = (PROTOCOL = TCP)(HOST = oracle174)(PORT = 1521))

    )

  )

 

ADR_BASE_LISTENER = /u01/app/oracle

[oracle@oracle174 admin]$ vi tnsnames.ora

orcl02 =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = oracle174)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = orcl)

    )

  )

 

orcl01 =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = oracle173)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = orcl)

    )

  )

 

ORCL =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = oracle174)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = orcl)

    )

  )

4.啓動監聽

[oracle@oracle173 dbs]$ lsnrctl start

[oracle@oracle174 admin]$ lsnrctl start

5.創建oracle目錄

#oracle173  #primary

[root@oracle173 ~]# mkdir -p /u02/app/oracle/oradata/orcl/

[root@oracle173 ~]# chown -R oracle:oinstall /u02

[root@oracle173 ~]# chmod -R +x /u02

#oracle174   #standby

[root@oracle174 ~]# mkdir -p /u02/app/oracle/oradata/orcl/

[root@oracle174 ~]# chown -R oracle:oinstall /u02

[root@oracle174 ~]# chmod -R +x /u02

[oracle@oracle174 admin]$ mkdir -p /u01/app/oracle/oradata/orcl/

[oracle@oracle174 admin]$ mkdir -p /u01/app/oracle/flash_recovery_area/orcl/

[oracle@oracle174 admin]$ mkdir -p /u01/app/oracle/admin/orcl/adump/

[oracle@oracle174 admin]$ mkdir -p /u01/app/oracle/admin/orcl/dpdump/

[oracle@oracle174 admin]$ mkdir -p /u01/app/oracle/admin/orcl/pfile/

[oracle@oracle174 admin]$ mkdir -p /u01/app/oracle/admin/orcl/scripts/

6.配置oracle173 #primary數據庫的參數

[oracle@oracle173 orcl]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Mon Jun 23 21:25:48 2014

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup

ORACLE instance started.

Total System Global Area 1653518336 bytes

Fixed Size              2213896 bytes

Variable Size                956303352 bytes

Database Buffers      687865856 bytes

Redo Buffers                 7135232 bytes

Database mounted.

Database opened.

SQL> alter database force logging;

Database altered.

SQL> create pfile from spfile;

File created.

 

[oracle@oracle173 orcl]$ cd /u01/app/oracle/product/11.2.0/dbhome_1/dbs/

[oracle@oracle173 dbs]$ ls

hc_DBUA0.dat  init.ora      lkORCL     spfileorcl.ora

hc_orcl.dat   initorcl.ora  orapworcl

[oracle@oracle173 dbs]$ mv spfileorcl.ora spfileorcl.ora.bak

[oracle@oracle173 dbs]$ vi initorcl.ora

orcl.__db_cache_size=687865856

orcl.__java_pool_size=16777216

orcl.__db_cache_size=687865856

orcl.__java_pool_size=16777216

orcl.__large_pool_size=16777216

orcl.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment

orcl.__pga_aggregate_target=671088640

orcl.__sga_target=989855744

orcl.__shared_io_pool_size=0

orcl.__shared_pool_size=251658240

orcl.__streams_pool_size=0

*.audit_file_dest='/u01/app/oracle/admin/orcl/adump'

*.audit_trail='db'

*.compatible='11.2.0.0.0'

*.control_files='/u01/app/oracle/oradata/orcl/control01.ctl','/u01/app/oracle/flash_recovery_area/orcl/control02.ctl'

*.db_block_size=8192

*.db_domain=''

*.db_name='orcl'

*.db_recovery_file_dest='/u01/app/oracle/flash_recovery_area'

*.db_recovery_file_dest_size=4070572032

*.diagnostic_dest='/u01/app/oracle'

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

#*.log_archive_dest_1='LOCATION=/home/oracle/arch'

*.log_archive_format='%t_%s_%r.dbf'

*.memory_target=1655701504

*.open_cursors=300

*.processes=150

*.remote_login_passwordfile='EXCLUSIVE'

*.undo_tablespace='UNDOTBS1'

 

*.db_unique_name=uqn_orcl01

*.log_archive_config='DG_CONFIG=(uqn_orcl01,uqn_orcl02)'

*.log_archive_dest_1='LOCATION=/home/oracle/arch noreopen optional VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=uqn_orcl01'

*.log_archive_dest_2='SERVICE=orcl02 VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=uqn_orcl02 ARCH SYNC REOPEN=10'

*.log_archive_dest_state_1=ENABLE

*.log_archive_dest_state_2=ENABLE

*.FAL_SERVER='orcl02'

*.FAL_CLIENT='orcl01'

*.STANDBY_FILE_MANAGEMENT='AUTO'

*.log_file_name_convert='/u01/app/oracle/oradata/orcl/','/u01/app/oracle/oradata/orcl/'

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

 

[oracle@oracle173 dbs]$ sqlplus / as sysdba

 

SQL*Plus: Release 11.2.0.1.0 Production on Mon Jun 23 21:48:04 2014

 

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

 

 

Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

 

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup

ORACLE instance started.

 

Total System Global Area 1653518336 bytes

Fixed Size              2213896 bytes

Variable Size                956303352 bytes

Database Buffers      687865856 bytes

Redo Buffers                 7135232 bytes

Database mounted.

Database opened.

 

7.拷貝參數文件到standby (oracle174)

[oracle@oracle173 dbs]$ cd /u01/app/oracle/product/11.2.0/dbhome_1/dbs/

$ scp initorcl.ora oracle174:/u01/app/oracle/product/11.2.0/dbhome_1/dbs/

8.修改standby(oracle174) 參數文件

[oracle@oracle174 admin]$ cd /u01/app/oracle/product/11.2.0/dbhome_1/dbs/

[oracle@oracle174 dbs]$ vi initorcl.ora

 

orcl.__db_cache_size=687865856

orcl.__java_pool_size=16777216

orcl.__large_pool_size=16777216

orcl.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment

orcl.__pga_aggregate_target=671088640

orcl.__sga_target=989855744

orcl.__shared_io_pool_size=0

orcl.__shared_pool_size=251658240

orcl.__streams_pool_size=0

*.audit_file_dest='/u01/app/oracle/admin/orcl/adump'

*.audit_trail='db'

*.compatible='11.2.0.0.0'

*.audit_trail='db'

*.compatible='11.2.0.0.0'

*.db_block_size=8192

orcl.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment

orcl.__pga_aggregate_target=671088640

orcl.__sga_target=989855744

orcl.__shared_io_pool_size=0

orcl.__shared_pool_size=251658240

orcl.__streams_pool_size=0

*.audit_file_dest='/u01/app/oracle/admin/orcl/adump'

*.audit_trail='db'

*.compatible='11.2.0.0.0'

*.control_files='/u01/app/oracle/oradata/orcl/control01.ctl','/u01/app/oracle/flash_recovery_area/orcl/control02.ctl'

*.db_block_size=8192

*.db_domain=''

orcl.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment

orcl.__pga_aggregate_target=671088640

orcl.__sga_target=989855744

orcl.__shared_io_pool_size=0

orcl.__shared_pool_size=251658240

orcl.__streams_pool_size=0

*.audit_file_dest='/u01/app/oracle/admin/orcl/adump'

*.audit_trail='db'

*.compatible='11.2.0.0.0'

*.control_files='/u01/app/oracle/oradata/orcl/control01.ctl','/u01/app/oracle/flash_recovery_area/orcl/control02.ctl'

*.db_block_size=8192

*.db_domain=''

*.db_name='orcl'

*.db_recovery_file_dest='/u01/app/oracle/flash_recovery_area'

*.db_recovery_file_dest_size=4070572032

*.diagnostic_dest='/u01/app/oracle'

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

#*.log_archive_dest_1='LOCATION=/home/oracle/arch'

*.log_archive_format='%t_%s_%r.dbf'

*.memory_target=1655701504

*.open_cursors=300

*.processes=150

*.remote_login_passwordfile='EXCLUSIVE'

*.undo_tablespace='UNDOTBS1'

 

*.db_unique_name=uqn_orcl02

*.log_archive_config='DG_CONFIG=(uqn_orcl01,uqn_orcl02)'

*.log_archive_dest_1='LOCATION=/home/oracle/arch noreopen optional VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=uqn_orcl02'

*.log_archive_dest_2='SERVICE=orcl01 VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=uqn_orcl01 ARCH SYNC REOPEN=10'

*.log_archive_dest_state_1=ENABLE

*.log_archive_dest_state_2=ENABLE

*.FAL_SERVER='orcl01'

*.FAL_CLIENT='orcl02'

*.STANDBY_FILE_MANAGEMENT='AUTO'

*.log_file_name_convert='/u01/app/oracle/oradata/orcl/','/u01/app/oracle/oradata/orcl/'

 

9.oracle174中創建目錄

[oracle@oracle174 ~]$ mkdir /home/oracle/arch

10.備份primary主庫(oracle173上)

[oracle@oracle173 dbs]$ rman target/

 

Recovery Manager: Release 11.2.0.1.0 - Production on Mon Jun 23 22:06:34 2014

 

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

 

connected to target database: ORCL (DBID=1378624651)

 

RMAN> run {

 allocate channel d1 device type disk;

 backup as compressed backupset

 incremental level=0 format='/home/oracle/arch/inc0_%d_%T_%s_%p'

 tag='inc0' channel=d1 database;

 sql "alter system archive log current";

 backup as compressed backupset

 format=2> 3> 4> 5> 6> 7> 8> '/home/oracle/arch/arch_%d_%T_%s_%p'

 tag='arch' channel=d1 archivelog all delete input;

 backup as compressed backupset

 format='/home/oracle/arch/ctl_%d_%T_%s_%p'

 tag='ctl' channel=d1 current controlfile for standby reuse;

  }

 

11.拷貝primaryoracle173)備份文件到standbyoracle174

[oracle@oracle173 ~]$ cd /home/oracle/arch/

[oracle@oracle173 arch]$ scp * oracle174:/home/oracle/arch/

 

12. duplicate primary數據庫上主庫與備庫防火牆要關閉

RMAN> connect auxiliary sys/sys_admin@orcl02

connected to auxiliary database: ORCL (not mounted)

RMAN> duplicate target database for standby nofilenamecheck;

13恢復standby數據庫oracle174

SQL> recover managed standby database disconnect from session;

Media recovery complete.

 

14.standby數據庫啓動到open read only狀態

SQL> recover managed standby database cancel;

Media recovery complete.

SQL> alter database open read only;

Database altered.

SQL> recover managed standby database disconnect from session;

Media recovery complete.

 

 

 

 

15.測試DataGuard

# primary數據庫(oracle173

SQL> alter system archive log current;

System altered.

 

#oracle174

16.通過命令查看是否有歸檔日誌恢復

$ tail -f /u01/app/oracle/diag/rdbms/uqn_orcl02/orcl/trace/alert_orcl.log

17.使用LGWR進程進行primarystandby之間的歸檔日誌傳輸

#添加standby logfile

standby 添加standby logfile

SQL> recover managed standby database cancel;

Media recovery complete.

SQL> alter database add standby logfile group 6 ('/u02/app/oracle/oradata/orcl/stb_redo01.dbf') size 50M reuse;

Database altered.

SQL> alter database add standby logfile group 7 ('/u02/app/oracle/oradata/orcl/stb_redo02.dbf') size 50M reuse;

Database altered.

SQL> alter database add standby logfile group 8 ('/u02/app/oracle/oradata/orcl/stb_redo03.dbf') size 50M reuse;

Database altered.

SQL> alter database add standby logfile group 9 ('/u02/app/oracle/oradata/orcl/stb_redo04.dbf') size 50M reuse;

Database altered.

 

#查看standby logfile

SQL> select * from v$standby_log;

 

18.primary 添加standby logfile

SQL> alter database add standby logfile group 6 ('/u02/app/oracle/oradata/orcl/stb_redo01.dbf') size 50M reuse;

Database altered.

SQL> alter database add standby logfile group 7 ('/u02/app/oracle/oradata/orcl/stb_redo02.dbf') size 50M reuse;

Database altered.

SQL> alter database add standby logfile group 8 ('/u02/app/oracle/oradata/orcl/stb_redo03.dbf') size 50M reuse;

Database altered.

SQL> alter database add standby logfile group 9 ('/u02/app/oracle/oradata/orcl/stb_redo04.dbf') size 50M reuse;

Database altered.

19.修改primarystandby的初始化參數log_archive_dest_2

#primary

[oracle@oracle173 arch]$ vi /u01/app/oracle/product/11.2.0/dbhome_1/dbs/initorcl.ora

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

*.log_archive_dest_2='SERVICE=orcl02 VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=uqn_orcl02 LGWR SYNC REOPEN=10'

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

#standby

[oracle@oracle174 arch]$ vi /u01/app/oracle/product/11.2.0/dbhome_1/dbs/initorcl.ora

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

*.log_archive_dest_2='SERVICE=orcl01 VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=uqn_orcl01 LGWR SYNC REOPEN=10'

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

20.重啓primarystandby數據庫

#關閉

#primary oracle173

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

 

#standby oracle174

SQL> recover managed standby database cancel;

Media recovery complete.

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

 

#啓動

#primary oracle173

SQL> startup

ORACLE instance started.

Total System Global Area 1653518336 bytes

Fixed Size              2213896 bytes

Variable Size                956303352 bytes

Database Buffers      687865856 bytes

Redo Buffers                 7135232 bytes

Database mounted.

Database opened.

 

#standby oracle174

SQL> startup nomount

ORACLE instance started.

Total System Global Area 1653518336 bytes

Fixed Size              2213896 bytes

Variable Size                956303352 bytes

Database Buffers      687865856 bytes

Redo Buffers   

 

SQL> alter database mount standby database;

 

Database altered.

SQL> alter database open read only;

 

Database altered.

SQL> recover managed standby database disconnect from session;

Media recovery complete.

 

21修改參數文件爲spfile

 創建spfile文件

#primary oracle173

SQL> create spfile from pfile;

File created.

 

#standby oracle174

SQL> create spfile from pfile;

File created.

22.重啓primarystandby數據庫

同上

 

 

 ####################################################################

#測試DataGuard數據

#primary

SQL> create table dg_test(sno number,sname varchar(20));

Table created.

 

SQL>  insert into dg_test values(1,'DataGuard');

1 row created.

 

SQL>  insert into dg_test values(2,'primary');

1 row created.

 

SQL> insert into dg_test values(3,'standby');

1 row created.

 

SQL> commit;

Commit complete.

 

SQL> alter system archive log current;

System altered.

#standby

SQL> select * from dg_test;

 

       SNO SNAME

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

          1 DataGuard

          2 primary

          3 standby

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章