Oracle數據保護DataGuard安裝和配置二

                    Oracle數據保護DataGuard安裝和配置二

續接上一篇。

主庫上的操作

強制日誌

Alter database force logging;

開啓歸檔,指定歸檔路徑

Shutdown immediate;

Startup mount;

Alter database archivelog;

Alter system set log_archive_dest_1 = ‘’;

Alter database open;

設置相關參數,通過pfile方式設置

create pfile='/home/oracle/pfile.txt' from spfile;

Shutdown immediate;

編輯pfile文件

Vi /home/oracle/pfile.txt

 

orcl.__large_pool_size=16777216

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

orcl.__pga_aggregate_target=754974720

orcl.__sga_target=2231369728

orcl.__shared_io_pool_size=0

orcl.__shared_pool_size=486539264

orcl.__streams_pool_size=0

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

*.audit_trail='db'

*.compatible='11.2.0.0.0'

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

*.db_block_size=8192

*.db_domain=''

*.db_name='orcl'

*.db_unique_name='prim'

*.fal_client='prim'

*.fal_server='pdg'

*.db_file_name_convert='/u01/oracle/oradata/orcl','/u01/oracle/oradata/orcl'

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

*.db_recovery_file_dest='/u01/oracle/fast_recovery_area'

*.db_recovery_file_dest_size=4322230272

*.diagnostic_dest='/u01/oracle'

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

*.log_archive_config='DG_CONFIG=(prim,pdg)'

*.log_archive_dest_1='LOCATION=/u01/oracle/archivelog VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=prim'

log_archive_dest_2  = 'SERVICE=pdg LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=pdg'

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

*.standby_file_management='AUTO'

*.open_cursors=300

*.pga_aggregate_target=739246080

*.processes=150

*.remote_login_passwordfile='EXCLUSIVE'

*.sga_target=2217738240

*.undo_tablespace='UNDOTBS1'

 

編寫listener.ora

# Gracle configuration tools.

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (SID_NAME = PLSExtProc)

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

      (PROGRAM = extproc)

    )

    (SID_DESC =

      (SID_NAME = orcl)

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

    )

  )

LISTENER =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS = (PROTOCOL = TCP)(HOST = prim_new.com)(PORT = 1521))

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))

    )

  )

編寫tnsnames.ora

prim =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = prim_new.com)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = prim)

    )

  )

pdg =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = pdg_new.com)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = pdg)

    )

  )

這裏的名字就是對應pfile中參數service後面的服務名。

select name,remote_archive,database_role,guard_status,db_unique_name from v$database;

查看主狀態,是否已經就緒:

NAME   REMOTE_A DATABASE_ROLE    GUARD_S DB_UNIQUE_NAME

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

ORCL   ENABLED  PRIMARY     NONE    prim

 

備庫需要的相關文件

密碼文件

在主庫上:

生成:

[oracle@prim_new database]$ cd $ORACLE_HOME/dbs

[oracle@prim_new dbs]$ orapwd file=./orapw$ORACLE_SID password=oracle123 force=y

然後scp傳輸到備庫,需要在同一個目錄下:

[oracle@prim_new dbs]$ scp ./orapw$ORACLE_SID pdg.up.com:$ORACLE_HOME/dbs/

控制文件

在主庫上生成控制文件:

alter database create standby controlfile as '/u01/control01.ctl';

然後傳輸到與主庫同一個目錄下。由於備機上時安裝了與主機上完全相同目錄的數據庫,那麼只需要將原來的文件刪除保留目錄就行,先備機上(相應目錄上)刪除oradata下面的所有文件。

備機上:

Shutdown immediate;

主機上:

scp /u01/control01.ctl pdg_new.com:/u01/oracle/oradata/orcl/control01.ctl

scp /u01/control01.ctl pdg_new.com:/u01/oracle/fast_recovery_area/orcl/control02.ctl

其他核心文件

數據文件,redo,歸檔文件全部傳輸到備庫上,此時我將主庫處於mount狀態

主機上:shutdown immediate;

Startup mount;

Redo:

[oracle@prim_new orcl]$ scp *.log pdg_new.com:/u01/oracle/oradata/orcl/

Dbf:

[oracle@prim_new orcl]$ scp *.dbf pdg_new.com:/u01/oracle/oradata/orcl/

Archivelog:

[oracle@prim_new orcl]$ scp /u01/oracle/archivelog/*.arc pdg_new.com:/u01/oracle/archivelog/

Listener,tnsnames.ora

從主庫上傳輸給備機,並且適當修改

[oracle@prim_new orcl]$ cd /u01/oracle/product/11.2.0/network/admin/

[oracle@prim_new admin]$ ll

total 16

-rw-r--r--. 1 oracle oinstall  475 Jan  8 06:58 listener.ora

drwxr-xr-x. 2 oracle oinstall 4096 Jan  8 03:29 samples

-rw-r--r--. 1 oracle oinstall  205 May 11  2011 shrept.lst

-rw-r--r--. 1 oracle oinstall  350 Jan  8 06:52 tnsnames.ora

[oracle@prim_new admin]$ scp *.ora pdg_new:$ORACLE_HOME/network/admin/

 

Pfile

將主機上的pfile文件傳輸到備機

[oracle@prim_new admin]$ scp /home/oracle/pfile.txt  pdg_new:/home/oracle/pfile.txt

oracle@pdg_new's password:

pfile.txt    

修改pfile.txt:

orcl.__large_pool_size=16777216

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

orcl.__pga_aggregate_target=754974720

orcl.__sga_target=2231369728

orcl.__shared_io_pool_size=0

orcl.__shared_pool_size=486539264

orcl.__streams_pool_size=0

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

*.audit_trail='db'

*.compatible='11.2.0.0.0'

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

*.db_block_size=8192

*.db_domain=''

*.db_name='orcl'

*.db_unique_name='pdg'

*.fal_client='pdg'

*.fal_server='prim'

*.db_file_name_convert='/u01/oracle/oradata/orcl','/u01/oracle/oradata/orcl'

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

*.db_recovery_file_dest='/u01/oracle/fast_recovery_area'

*.db_recovery_file_dest_size=4322230272

*.diagnostic_dest='/u01/oracle'

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

*.log_archive_config='DG_CONFIG=(prim,pdg)'

*.log_archive_dest_1='LOCATION=/u01/oracle/archivelog VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=pdg'

*.log_archive_dest_2='SERVICE=prim LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=prim'

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

*.open_cursors=300

*.pga_aggregate_target=739246080

*.processes=150

*.remote_login_passwordfile='EXCLUSIVE'

*.sga_target=2217738240

*.undo_tablespace='UNDOTBS1'

 

啓動備庫到mount

備庫:startup pfile=/home/oracle/pfile.txt mount

主機:alter database open;因爲剛纔是mount狀態

alter database set standby database to maximize availability;

完成後,在備庫上查看狀態:

SQL>  select name,remote_archive,database_role,guard_status,db_unique_name from v$database;



NAME   REMOTE_A DATABASE_ROLE    GUARD_S DB_UNIQUE_NAME

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

ORCL   ENABLED  PHYSICAL STANDBY NONE    pdg

備庫開啓日誌應用

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