Oracle DataGard备库为何接收不到日志呢?

luoyoumou 2010-02-04 03:23:00
Oracle DataGard备库为何接收不到日志呢?

--其操作文档如下:

-- http://jolly10.itpub.net/post/7268/414626

ORACLE10G DATAGUARD配置笔记
环境:
OS:RHL4+ORACLE10G10.2.0.1
IP:172.17.61.160(primary) 172.17.61.161(standby)
ORACLE_SID:orcl
ORACLE_HOME:/oracle/product/10.2.0


一、配置standby database为MAXIMIZE PERFORMANCE模式
二、转换模式由MAXIMIZE PERFORMANCE到MAXIMIZE PROTECTION
三、主库和备库的switchover.


一、配置standby database为MAXIMIZE PERFORMANCE模式

1.设置主库为force logging
SQL> alter database force logging;

2.设置主库为归档模式:
SQL> archive log list
SQL> shutdown immediate
SQL> startup mount
SQL> alter database archivelog;
SQL> archive log list

3.检查主机是否有口令文件,如没有需建立
orapwd file='/u01/app/oracle/product/10.2.0/db_1/dbs/orawdsztyora.ora' password=bee56915 entries=5

4.为主数据库添加"备用联机日志文件"
alter database add standby LOGFILE GROUP 5 ('/u02/oradata/sztyora/stdy_redo05.log') size 50m;
alter database add standby LOGFILE GROUP 6 ('/u02/oradata/sztyora/stdy_redo06.log') size 50m;
alter database add standby LOGFILE GROUP 7 ('/u02/oradata/sztyora/stdy_redo07.log') size 50m;
alter database add standby LOGFILE GROUP 8 ('/u02/oradata/sztyora/stdy_redo08.log') size 50m;

5.修改主库参数文件
SQL> create pfile from spfile;
vi /u01/app/oracle/product/10.2.0/db_1/dbs/initsztyora.ora

sztyora.__db_cache_size=188743680
sztyora.__java_pool_size=4194304
sztyora.__large_pool_size=4194304
sztyora.__shared_pool_size=83886080
sztyora.__streams_pool_size=0
*.audit_file_dest='/u01/app/oracle/admin/sztyora/adump'
*.background_dump_dest='/u01/app/oracle/admin/sztyora/bdump'
*.compatible='10.2.0.1.0'
*.control_files='/u02/oradata/sztyora/control01.ctl','/u02/oradata/sztyora/control02.ctl','/u02/oradata/sztyora/control03.ctl'
*.core_dump_dest='/u01/app/oracle/admin/sztyora/cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=8
*.db_unique_name='sztyoralf'
*.db_name='sztyora'
*.db_recovery_file_dest='/u01/app/oracle/flash_recovery_area'
*.db_recovery_file_dest_size=2147483648
*.log_archive_format='%T%S%r.ARC'
*.log_archive_max_processes=3
*.log_archive_config='DG_CONFIG=(sztyoralf,sztyoranj)'
*.log_archive_dest_1='LOCATION=/oracle/oradata/arch/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=sztyoralf'
*.log_archive_dest_2='SERVICE=sztyoranj arch ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=sztyoranj'
*.STANDBY_FILE_MANAGEMENT='AUTO'
*.LOG_ARCHIVE_DEST_STATE_1='ENABLE'
*.LOG_ARCHIVE_DEST_STATE_2='ENABLE'
*.FAL_SERVER='sztyoranj'
*.FAL_CLIENT='sztyoralf'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=sztyoraXDB)'
*.job_queue_processes=10
*.local_listener='LISTENER_SZTYORA'
*.open_cursors=300
*.pga_aggregate_target=94371840
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=285212672
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/u01/app/oracle/admin/sztyora/udump'

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

6.主库用PFILE建立SPFILE
[oracle@host160 pfile]$ sqlplus '/ as sysdba'
SQL> create spfile from pfile;

7.建立备用库的控制文件
SQL> alter database create standby controlfile as '/home/oracle/standby.ctl';

8.配置主数据库listener及tnsnames
---------------------------
# listener.ora Network Configuration File: /u01/app/oracle/product/10.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = sztyora)
(ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)
(SID_NAME = sztyora)
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.101)(PORT = 1521))
)
)

SID_LIST_LISTENER1 =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = sztyora)
(ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)
(SID_NAME = sztyora)
)
)

LISTENER1 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.101)(PORT = 1522))
)
)

------------------------------------------------------------
[oracle@host160 admin]$ cat tnsnames.ora
#1521和1522端口都能连上主机和备机,这样在做switchover时就不需要改这里的设置了

# tnsnames.ora Network Configuration File: /u01/app/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

SZTYORALF =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.102)(PORT = 1522))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.101)(PORT = 1522))
)
(CONNECT_DATA =
(SERVICE_NAME = sztyora)
)
)

SZTYORANJ =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.101)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.102)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = sztyora)
)
)

----------------------------------------------------------------
9.复制文件到备机 redo.log 呢?
--主库上操作
[oracle@host161 ~] cd /u02/oradata/sztyora/
[oracle@host161 orcl]$ scp *.dbf 192.168.1.102:/u02/oradata/sztyora/
[oracle@host161 orcl]$ scp /home/oracle/standby.ctl 192.168.1.102:/u02/oradata/sztyora/

---备库上操作
[oracle@host161 orcl]$ cd /u02/oradata/sztyora
[oracle@host161 orcl]$ mv standby.ctl control01.ctl
[oracle@host161 orcl]$ cp control01.ctl control02.ctl
[oracle@host161 orcl]$ cp control01.ctl control03.ctl

10.复制并修改备机的参数文件 (备库上操作)
[oracle@host161 ~] cd /u01/app/oracle/product/10.2.0/db_1/dbs/
[oracle@host161 pfile]$ scp initsztyora.ora 192.168.1.102:/u01/app/oracle/product/10.2.0/db_1/dbs/

修改为如下:
sztyora.__db_cache_size=188743680
sztyora.__java_pool_size=4194304
sztyora.__large_pool_size=4194304
sztyora.__shared_pool_size=83886080
sztyora.__streams_pool_size=0
*.audit_file_dest='/u01/app/oracle/admin/sztyora/adump'
*.background_dump_dest='/u01/app/oracle/admin/sztyora/bdump'
*.compatible='10.2.0.1.0'
*.control_files='/u02/oradata/sztyora/control01.ctl','/u02/oradata/sztyora/control02.ctl','/u02/oradata/sztyora/control03.ctl'
*.core_dump_dest='/u01/app/oracle/admin/sztyora/cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=8
*.db_name='sztyora'
*.db_recovery_file_dest='/u01/app/oracle/flash_recovery_area'
*.db_recovery_file_dest_size=2147483648
*.dispatchers='(PROTOCOL=TCP) (SERVICE=sztyoraXDB)'
*.job_queue_processes=10
*.local_listener='LISTENER_SZTYORA'
*.open_cursors=300
*.pga_aggregate_target=94371840
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=285212672
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/u01/app/oracle/admin/sztyora/udump'
*.DB_UNIQUE_NAME='sztyoranj'
*.log_archive_format='%T%S%r.ARC'
*.log_archive_max_processes=3
*.log_archive_config='DG_CONFIG=(sztyoralf,sztyoranj)'
*.log_archive_dest_1='LOCATION=/oracle/oradata/arch/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=sztyoranj'
*.log_archive_dest_2='SERVICE=sztyoralf arch ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=sztyoralf'
*.STANDBY_FILE_MANAGEMENT='AUTO'
*.LOG_ARCHIVE_DEST_STATE_1='ENABLE'
*.LOG_ARCHIVE_DEST_STATE_2='ENABLE'
*.FAL_SERVER='sztyoralf'
*.FAL_CLIENT='sztyoranj'

11.生成备用库密码文件
orapwd file='/u01/app/oracle/product/10.2.0/db_1/dbs/orawdsztyora.ora' password=bee56915 entries=5

12.修改备机的listener及tnsnames
[oracle@host161 admin]$ cat listener.ora

----
# listener.ora Network Configuration File: /u01/app/oracle/product/10.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = sztyora)
(ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)
(SID_NAME = sztyora)
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.102)(PORT = 1521))
)
)

SID_LIST_LISTENER1 =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = sztyora)
(ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)
(SID_NAME = sztyora)
)
)

LISTENER1 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.102)(PORT = 1522))
)
)

----------------------------------------------------------------------------
[oracle@host161 admin]$ cat tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

SZTYORALF =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.102)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.101)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = sztyora)
)
)

SZTYORANJ =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.101)(PORT = 1522))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.102)(PORT = 1522))
)
(CONNECT_DATA =
(SERVICE_NAME = sztyora)
)
)

-------------------------------------------
13.测试主备之间网络连通
[oracle@host160 admin]$ lsnrctl start
[oracle@host160 admin]$ tnsping sztyoranj
[oracle@host161 admin]$ lsnrctl start
[oracle@host161 admin]$ tnsping sztyoralf

--------------------------------------------
14.打开备库
SQL> conn / as sysdba
SQL> create spfile from pfile;
SQL> startup mount;
SQL> alter database recover managed standby database disconnect from session;

--------------------------------------------
15.打开主库
SQL> startup

--------------------------------------------
16.测试是否OK
主库:
SQL> alter system switch logfile;

从库:
SQL> select FIRST_TIME,NEXT_TIME, APPLIED,SEQUENCE#
from v$archived_log order by SEQUENCE#;

FIRST_TIME NEXT_TIME APP SEQUENCE#
------------------- ------------------- --- ----------
2007-10-16 11:39:33 2007-10-16 14:16:39 YES 5
2007-10-16 14:16:39 2007-10-16 14:21:06 YES 6
...全文
260 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
luoyoumou 2010-02-05
  • 打赏
  • 举报
回复
????????????????????????????/
suiziguo 2010-02-04
  • 打赏
  • 举报
回复
呃,好久没玩这个了,一时半会找不出问题。
帮你顶,多做这样的HA实验。
luoyoumou 2010-02-04
  • 打赏
  • 举报
回复
??????
luoyoumou 2010-02-04
  • 打赏
  • 举报
回复
-- 郁闷:整了好几天了!

3,491

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧