因项目预研需要,所以想找一个能够满足内外网数据库同步方案,前面先是测试了一下Oracle的高级复制功能,未果;才转而进行Oracle Stream的测试,大概是我水平太差了,前后测试了3.5遍总算把Oracle Stream运行正常起来了。错误的原因其实称不上原因,无他,读文档读的不细致,手误、本身对这方面也缺乏理论认识。关于Oracle流的原理Oracle 流能够共享信息。Oracle流每个单元的共享信息来自于消息,我们可以在流中共享这些消息。流可以在同一个数据库或不同数据库之间传播信息。”流路由”指定信息到达特定的目的地。流比起传统的在不同数据库之间捕获、管理、共享消息的解决方案,有着更强大的功能和灵活性。流提供的功能可用于分布式企业程序、数据仓库和高可用性解决方案。我们可以在同一时刻使用oracle流的所有功能。我们可以使用流的新功能而不会严重影响数据库的性能。使用Oracle流,我们可以控制流里的信息,流的流向,流进入目标数据库时,消息怎样运作,中止流。通过配置流,可以满足我们的特殊需求。基于我们的特殊情况,流可以在数据库里自动捕获、传播和管理DML、DDL消息。我们可以把用户定义的消息放入流中,流可以自动把信息传播到其它数据库或应用程序。当消息到达目的数据库时,流可以根据我们的设定应用它们。
本文主要参考文档《Step by step 配置Oracle Stream》杨宝秋(hrb_qiuyb)《stream_concepts_administration_读书笔记.doc》试验环境采用虚拟机方式,操作系统Windows2003,Oracle版本10.2.0数据源机器配置目标机器配置计算机名SourceDestIP地址192.168.23.130192.168.23.131SIDSourceDest第一步:进行Stream前的参数配置,Source和Dest机器上均运行,运行命令可完全一致SQL> conn sys/inxite as sysdba;已连接。SQL> alter system set aq_tm_processes=2 scope=both;系统已更改。SQL> alter system set global_names=true scope=both;系统已更改。SQL> alter system set job_queue_processes=20 scope=both;系统已更改。SQL> alter system set parallel_max_servers=20 scope=both;系统已更改。SQL> alter system set undo_retention=3600 scope=both;系统已更改。SQL> alter system set nls_date_format="YYYY-MM-DD HH24:MI:SS" scope=spfile;系统已更改。SQL> alter system set streams_pool_size=25M scope=spfile;系统已更改。SQL> alter system set utl_file_dir="*" scope=spfile;系统已更改。SQL> alter system set open_links=4 scope=spfile;系统已更改。SQL> alter system set log_archive_dest="e:/OracleDB/arch" scope=spfile;系统已更改。SQL> alter system set log_archive_start=TRUE scope=spfile;系统已更改。SQL> alter system set log_archive_format="arch%t_%s_%r.arc" scope=spfile;系统已更改。第二步:查看系统归档状态(双机可以同时检查,检查方式完全一致)SQL> shutdown immediate数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。SQL> startup mountORA-32004: obsolete and/or deprecated parameter(s) specifiedORACLE 例程已经启动。Total System Global Area167772160 bytesFixed Size1247900 bytesVariable Size92276068 bytesDatabase Buffers71303168 bytesRedo Buffers2945024 bytes数据库装载完毕。SQL> alter database archivelog;数据库已更改。SQL> alter database open;数据库已更改。SQL> archive log list;数据库日志模式存档模式自动存档启用存档终点USE_DB_RECOVERY_FILE_DEST最早的联机日志序列1下一个存档日志序列2当前日志序列2SQL>第三步:创建Stream用户和表空间(双机可以同时设置,设置方式完全一致)#创建主环境的Stream专用表空间SQL> create tablespace tbs_stream datafile "e:/OracleDB/tbs_stream01.dbf"2size 100m autoextend on next 100m maxsize 1000m segment space management auto;表空间已创建。#将logminer 的数据字典从system表空间转移到新建的表空间,防止撑满system表空间SQL> execute dbms_logmnr_d.set_tablespace("tbs_stream");PL/SQL 过程已成功完成。#创建Stream管理用户SQL> create user strmadmin identified by strmadmin default tablespace tbs_streamtemporary tablespace temp;用户已创建。#授权Stream管理用户SQL> grant connect,resource,dba,aq_administrator_role to strmadmin;授权成功。SQL> begin2dbms_streams_auth.grant_admin_privilege(3grantee => "strmadmin",4grant_privileges => true);5end;6/PL/SQL 过程已成功完成。第四步:配置各自双方的数据库连接在source机器上添加dest数据源,名称为dest在dest机器上添加source数据源,名称为source
Linux RHEL5.0+Oracle10G安装超级复杂困难之Oracle数据库大恢复相关资讯 oracle
- [INS-32052] Oracle基目录和Oracle (07/22/2014 07:41:41)
- Oracle 4个大对象(lobs)数据类型 (02/03/2013 12:33:05)
- Oracle按时间段分组统计 (07/26/2012 10:36:48)
| - [Oracle] dbms_metadata.get_ddl的 (07/12/2013 07:37:30)
- Liferay Portal 配置使用Oracle和 (07/31/2012 20:07:18)
- Concurrent Request:Inactive (07/20/2012 07:44:05)
|
本文评论 查看全部评论 (0)