æ•°æ�®åº“读写分离解决方æ¡?-DG实施方案 - 百度文库 ÏÂÔØ±¾ÎÄ

Oracle Data Guardʵʩ·½°¸

SQL > ALTER DATABASE ARCHIVELOG; SQL > ALTER DATABASE OPEN;

5.10 ±¸·ÝÉú²úÊý¾Ý¿â

$scp -rp /home/db/oracle/oradata/ORCL oracle@192.168.204.132://home/db/oracle/oradata/ $scp ¨Crp /home/db/oracle/admin/orcl oracle@192.168.204.132://home/db/oracle/admin

5.11 Ð޸ı¸¿âpfile

[oracle@localhost dbs]$vi initorcl.ora

*.db_unique_name=orcldg

*.log_archive_config='dg_config=(orcldg,orcl)'

*.log_archive_dest_1='location=/home/db/oracle/oradata/ORCL/archive valid_for=(all_logfiles,all_roles) db_unique_name=orcldg' *.log_archive_dest_2='service=orcl lgwr async

valid_for=(online_logfiles,primary_role) db_unique_name=orcl' *.log_archive_dest_state_1=enable *.log_archive_dest_state_2=enable *.log_archive_format=%t_%s_%r.arc *.fal_server=orcl *.fal_client=orcldg

*.standby_file_management=auto

*.control_files='/home/db/oracle/oradata/ORCL/controlfile/stdby_control01.ctl','/home/db/oracle/flash_recovery_area/ORCL/controlfile/stdby_control01.ctl'

5.12 ÔÚ±¸¿âÉÏ´´½¨spfile

sql>shutdown immediate

sql>create spfile from pfile;

Oracle Data Guardʵʩ·½°¸

5.13 Æô¶¯ÎïÀí±¸ÓÃÊý¾Ý¿â

SQL>startup nomount

SQL>alter database mount standby database;

5.14 ÅäÖÃStandby Redo Log

ÔÚÁ½±ß¶¼ÅäÖÃstandby redo log

ÔÚÖ÷¿â²é¿´ÈÕÖ¾×éµÄÊýÁ¿ºÍÿ¸öÈÕÖ¾ÎļþµÄ´óС SQL> SELECT GROUP#, BYTES FROM V$LOG;

ÔÚ±¸¿â¿â²é¿´ÈÕÖ¾×éµÄÊýÁ¿ºÍÿ¸öÈÕÖ¾ÎļþµÄ´óС SQL> SELECT GROUP#, BYTES FROM V$STANDBY_LOG; ÔÚÖ÷±¸¿â´´½¨ÈÕÖ¾×éºÍredo logÎļþ

SQL> ALTER DATABASE ADD STANDBY LOGFILE group 4('/home/db/oracle/product/11.2.0/db_1/dbs/slog4.rdo') SIZE 50M; SQL> ALTER DATABASE ADD STANDBY LOGFILE group 5 ('/home/db/oracle/product/11.2.0/db_1/dbs/slog5.rdo') SIZE 50M; SQL>ALTER DATABASE ADD STANDBY LOGFILE group 6 ('/home/db/oracle/product/11.2.0/db_1/dbs/slog6.rdo') SIZE 50M; SQL>ALTER DATABASE ADD STANDBY LOGFILE group 7('/home/db/oracle/product/11.2.0/db_1/dbs/slog7.rdo') SIZE 50M;

±¸×¢£º

ɾ³ýÈÕÖ¾×éredo logÎļþµÄ·½·¨

SQL>ALTER DATABASE DROP STANDBY LOGFILE GROUP N;(N´ú±íÊý×Ö)

5.15 Start Redo Apply

ÔÚÖ÷Êý¾Ý¿âÉÏÉèÖÃDataGuardµÄ±£»¤Ä£Ê½.°ÑÖ÷Êý¾Ý¿âÆô¶¯µ½mount״̬ÉèÖúÃDataGuardµÄ±£»¤Ä£Ê½.

SQL>alter system set log_archive_dest_state_2=ENABLE scope=both; SQL>shutdown immediate; SQL>startup mount;

SQL>alter database set standby database to maximize availability; SQL>alter database open;

Oracle Data Guardʵʩ·½°¸

ÔÚ±¸ÓÃÊý¾Ý¿âÉÏÆô¶¯ÈÕÖ¾´«Êä #ʵʱӦÓÃÈÕÖ¾

SQL>alter database recover managed standby database using current logfile disconnect from session;

²é¿´ÄÄЩ¹éµµÈÕÖ¾±»APPLYÁË

SQL>select sequence#,applied from v$archived_log order by sequence#;

ÔÚÖ÷¿â

Ç¿ÖÆÈÕÖ¾Çл»µ½µ±Ç°µÄonline redo log file. SQL>alter system archive log current;

ÔÚ±¸¿â

²é¿´Ðµı»¹éµµµÄredo data

SQL> SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;

ÔÚ±¸¿â²é¿´½ÓÊÕµ½µÄ±»Ó¦ÓõÄredo

SQL> select sequence#,applied from v$archived_log order by sequence#;

²é¿´Êý¾Ý¿âµÄ½ÇÉ«

SQL>select database_role,protection_mode,protection_level from v$database;

ÔÚÖ÷¿â²é¿´ÈÕÖ¾´«ËÍÇé¿ö

SQL> Select dest_name,status,error from v$archive_dest;

DEST_NAME STATUS ERROR

-------------------- --------- ------------------------------------------------- LOG_ARCHIVE_DEST_1 VALID LOG_ARCHIVE_DEST_2 VALID 31 rows selected.

Á½¸ö½Úµã¶¼Õý³£¡£

Ñé֤ͬ²½Çé¿ö

ÔÚÖ÷¿âÇл»ÈÕÖ¾£º

SQL> alter system switch logfile;

Oracle Data Guardʵʩ·½°¸

System altered.

SQL> select sequence# from v$archived_log; SEQUENCE# ---------- ¡­

15 16

SQL> alter system switch logfile;

System altered.

SQL> select sequence# from v$archived_log; SEQUENCE# ---------- ¡­

17 18

ÔÚ±¸¿â½øÐÐÑéÖ¤£º

SQL> select sequence#,applied from v$archived_log;

SEQUENCE# APP ---------- --- ¡­

13 YES 4 NO 14 YES 15 YES 16 YES 18 NO 16 YES