当前位置: 首页 > news >正文

苏州网络推广公司网站建设如何使用万网主机建设网站

苏州网络推广公司网站建设,如何使用万网主机建设网站,如何制作一个完整的网页,备案通过网站还是打不开Oracle Stream配置详细步骤 作者: 杨宝秋,  出处:IT168 1 引言 Oracle Stream功能是为提高数据库的高可用性而设计的#xff0c;在Oracle 9i及之前的版本这个功能被称为Advance Replication。Oracle Stream利用高级队列技术#xff0c;通过解析归档日志#xff0c;将归档日…Oracle Stream配置详细步骤 作者: 杨宝秋,  出处:IT168 1 引言   Oracle Stream功能是为提高数据库的高可用性而设计的在Oracle 9i及之前的版本这个功能被称为Advance Replication。Oracle Stream利用高级队列技术通过解析归档日志将归档日志解析成DDL及DML语句从而实现数据库之间的同步。这种技术可以将整个数据库、数据库中的对象复制到另一数据库中通过使用Stream的技术对归档日志的挖掘可以在对主系统没有任何压力的情况下实现对数据库对象级甚至整个数据库的同步。   解析归档日志这种技术现在应用的比较广泛Quest公司的shareplex软件及DSG公司的realsync都是这样的产品一些公司利用这样的产品做应用级的容灾。但shareplex或是realsync都是十分昂贵的因此你可以尝试用Stream这个Oracle提供的不用额外花钱的功能。Oracle Stream对生产库的影响是非常小的从库可以是与主库不同的操作系统平台你可以利用Oracle Stream复制几个从库从库可用于查询、报表、容灾等不同的功能。本文不谈技术细节只是以手把手的方式一步一步的带你把Stream的环境搭建起来细节内容可以查联机文档。   2 概述   主数据库   操作系统Solaris 9   IP地址192.168.10.35   数据库Oracle 10.2.0.2   ORACLE_SIDprod   Global_nameprod   从数据库   操作系统AIX 5.2   IP地址192.168.10.43   数据库Oracle 10.2.0.3   ORACLE_SIDh10g   Global_nameh10g   3 环境准备   3.1 设定初始化参数   使用pfile的修改init.ora文件使用spfile的通过alter system命令修改spile文件。主、从数据库分别执行如下的语句   以下是引用片段  Sqlplus ‘/ as sysdba’   alter system set aq_tm_processes2 scopeboth;   alter system set global_namestrue scopeboth;   alter system set job_queue_processes10 scopeboth;   alter system set parallel_max_servers20 scopeboth;   alter system set undo_retention3600 scopeboth;   alter system set nls_date_formatYYYY-MM-DD HH24:MI:SS scopespfile;   alter system set streams_pool_size25M scopespfile;   alter system set utl_file_dir* scopespfile;   alter system set open_links4 scopespfile;    执行完毕后重启数据库。 3.2 将数据库置为归档模式   设置log_archive_dest_1到相应的位置;设定log_archive_start为TRUE即启用自动归档功能;设定log_archive_format指定归档日志的命令格式。   举例   以下是引用片段  sqlplus ‘/ as sysdba’   alter system set log_archive_dest_1’location/yang/arch’ scopespfile;   alter system set log_archive_startTRUE scopespfile;   alter system set log_archive_format’ arch%t_%s_%r.arc’ scopespfile;   shutdown immediate;   startup mount;   alter database archivelog;   alter database open;    数据库置为归档模式后可以按如下方式检验一下   以下是引用片段  SQL archive log list   Database log mode Archive Mode   Automatic archival Enabled   Archive destination /yang/arch   Oldest online log sequence 534   Next log sequence to archive 536   Current log sequence 536    3.3 创建stream 管理用户   3.3.1 创建主环境stream管理用户   以下是引用片段  #以sysdba身份登录   connect / as sysdba   #创建主环境的Stream专用表空间   create tablespace tbs_stream datafile /yang/oradata/prod/tbs_stream01.dbf   size 100m autoextend on maxsize unlimited segment space management auto;   #将logminer的数据字典从system表空间转移到新建的表空间防止撑满system表空间   execute dbms_logmnr_d.set_tablespace(tbs_stream);   #创建Stream管理用户   create user strmadmin identified by strmadmin   default tablespace tbs_stream temporary tablespace temp;   #授权Stream管理用户   grant connect,resource,dba,aq_administrator_role to strmadmin;   begin   dbms_streams_auth.grant_admin_privilege(   grantee  strmadmin,   grant_privileges  true);   end;   /  3.3.2 创建从环境stream管理用户   以下是引用片段  #以sysdba身份登录   connect / as sysdba   #创建Stream专用表空间我的从库用了ASM这一步也可以参见3.3.1   create tablespace tbs_stream datafile VGDATA/h10g/datafile/tbs_stream01.dbf   size 100m autoextend on maxsize unlimited segment space management auto;   #同样将logminer的数据字典从system表空间转移到新建的表空间防止撑满system表空间   execute dbms_logmnr_d.set_tablespace(tbs_stream);   #创建Stream管理用户   create user strmadmin identified by strmadmin   default tablespace tbs_stream temporary tablespace temp;   #授权Stream管理用户   grant connect,resource,dba,aq_administrator_role to strmadmin;   begin   dbms_streams_auth.grant_admin_privilege(   grantee  strmadmin,   grant_privileges  true);   end;   /    3.4 配置网络连接   3.4.1配置主环境tnsnames.ora   主数据库(tnsnames.ora)中添加从数据库的配置。   以下是引用片段  H10G    (DESCRIPTION    (ADDRESS_LIST    (ADDRESS  (PROTOCOL  TCP)(HOST  192.168.10.43)(PORT  1521))   )   (CONNECT_DATA    (SID  h10g)   (SERVER  DEDICATED)   )   )    3.4.2配置从环境tnsnames.ora   以下是引用片段  从数据库(tnsnames.ora)中添加主数据库的配置。   PROD    (DESCRIPTION    (ADDRESS_LIST    (ADDRESS  (PROTOCOL  TCP)(HOST  192.168.10.35)(PORT  1521))   )   (CONNECT_DATA    (SID  prod)   (SERVER  DEDICATED)   )   )   3.5 启用追加日志   可以基于Database级别或Table级别启用追加日志(Supplemental Log)。在建立根据Schema粒度进行复制的Oracle Stream环境中如果确认Schema下所有Table都有合理的主键(Primary Key)则不再需要启用追加日志。   以下是引用片段  #启用Database 追加日志   alter database add supplemental log data;   #启用Table追加日志   alter table add supplement log group log_group_name(table_column_name) always;    3.6 创建DBlink   根据Oracle 10gR2 Stream官方文档针对主数据库建立的数据库链的名字必须和从数据库的global_name相同。   如果需要修改global_name执行“alter database rename global_name to xxx”。   3.6.1创建主数据库数据库链   #以strmadmin身份登录主数据库。   connect strmadmin/strmadmin   #建立数据库链   create database link h10g connect to strmadmin identified by strmadmin using h10g;   3.6.2创建从数据库数据库链   #以strmadmin身份登录从数据库。   connect strmadmin/strmadmin   #建立数据库链   create database link prod connect to strmadmin identified by strmadmin using prod;   3.7 创建流队列   3.7.1创建Master流队列   以下是引用片段  #以strmadmin身份登录主数据库。   connect strmadmin/strmadmin   begin   dbms_streams_adm.set_up_queue(   queue_table  prod_queue_table,   queue_name  prod_queue);   end;   /    3.7.2创建Backup流队列   以下是引用片段  #以strmadmin身份登录从数据库。   connect strmadmin/strmadmin   begin   dbms_streams_adm.set_up_queue(   queue_table  h10g_queue_table,   queue_name  h10g_queue);   end;   /    3.8 创建捕获进程   以下是引用片段  #以strmadmin身份登录主数据库。提醒一下本文档以hr用户做示例。   connect strmadmin/strmadmin   begin   dbms_streams_adm.add_schema_rules(   schema_name  hr,   streams_type  capture,   streams_name  capture_prod,   queue_name  strmadmin.prod_queue,   include_dml  true,   include_ddl  true,   include_tagged_lcr  false,   source_database  null,   inclusion_rule  true);   end;   /    3.9 实例化复制数据库   在主数据库环境中执行如下Shell语句。如果从库的hr用户不存在建立一个hr的空用户。   exp useridhr/hrprod file/tmp/hr.dmp object_consistenty rowsy   imp useridsystem/managerh10g file/tmp/hr.dmp ignorey commity log/tmp/hr.log streams_instantiationy fromuserhr touserhr   3.10 创建传播进程   以下是引用片段  #以strmadmin身份登录主数据库。   connect strmadmin/strmadmin   begin   dbms_streams_adm.add_schema_propagation_rules(   schema_name  hr,   streams_name  prod_to_h10g,   source_queue_name  strmadmin.prod_queue,   destination_queue_name  strmadmin.h10g_queueh10g,   include_dml  true,   include_ddl  true,   include_tagged_lcr  false,   source_database  prod,   inclusion_rule  true);   end;   /   #修改propagation休眠时间为0表示实时传播LCR。   begin   dbms_aqadm.alter_propagation_schedule(   queue_name  prod_queue,   destination  h10g,   latency  0);   end;   /   3.11 创建应用进程   以下是引用片段  #以strmadmin身份登录从数据库。   connect strmadmin/strmadmin   begin   dbms_streams_adm.add_schema_rules(   schema_name  hr,   streams_type  apply,   streams_name  apply_h10g,   queue_name  strmadmin.h10g_queue,   include_dml  true,   include_ddl  true,   include_tagged_lcr  false,   source_database  prod,   inclusion_rule  true);   end;   /    3.12 启动STREAM   以下是引用片段  #以strmadmin身份登录从数据库。   connect strmadmin/strmadmin   #启动Apply进程   begin   dbms_apply_adm.start_apply(   apply_name  apply_h10g);   end;   /   #以strmadmin身份登录主数据库。   connect strmadmin/strmadmin   #启动Capture进程   begin   dbms_capture_adm.start_capture(   capture_name  capture_prod);   end;   /    3.13 停止STREAM   以下是引用片段  #以strmadmin身份登录主数据库。   connect strmadmin/strmadmin   #停止Capture进程   begin   dbms_capture_adm.stop_capture(   capture_name  capture_prod);   end;   /   #以strmadmin身份登录从数据库。   connect strmadmin/strmadmin   #停止Apply进程   begin   dbms_apply_adm.stop_apply(   apply_name  apply_h10g);   end;   /   3.14 清除所有配置信息   要清楚Stream配置信息需要先执行3.13停止Stream进程。   以下是引用片段  #以strmadmin身份登录主数据库。   connect strmadmin/strmadmin   exec DBMS_STREAMS_ADM.remove_streams_configuration();   #以strmadmin身份登录从数据库。   connect strmadmin/strmadmin   exec DBMS_STREAMS_ADM.remove_streams_configuration();    4 测试场景   本文档建立了针对hr用户的Stream 复制环境如果没有特别声明以下测试场景均以hr用户身份执行。   4.1 建一张表测试   主数据库   SQL CREATE TABLE TTT(id NUMBER PRIMARY KEY,   2 name VARCHAR2(50)   3 )   4 /   Table created.   从数据库   SQL desc TTT   Name Null? Type   ---------- -------- -------------   ID NOT NULL NUMBER   NAME VARCHAR2(50)   4.2 表中插入一行数据   主数据库   SQL insert into ttt values (1,sdfsdfsdfsdf);   1 row created.   SQL commit;   Commit complete.   SQL   从数据库   SQL select * from TTT;   ID NAME   ---------- --------------------   1 sdfsdfsdfsdf   4.3 变更一下表的结构添加一列   主数据库   SQL ALTER TABLE TTT ADD(age NUMBER(2));   Table altered   从数据库   SQL desc TTT   Name Null? Type   ----------- -------- --------------   ID NOT NULL NUMBER   NAME VARCHAR2(50)   AGE NUMBER(2)   4.4 将表换一个表空间   主数据库   SQL SELECT table_name,tablespace_name FROM user_tables   2    WHERE table_nameTTT;   TABLE_NAME TABLESPACE_NAME   ------------------------------ ------------------------------   TTT USERS   SQL ALTER TABLE TTT MOVE TABLESPACE tbs_stream;   Table altered   SQL SELECT table_name,tablespace_name FROM user_tables   WHERE table_nameTTT;   TABLE_NAME TABLESPACE_NAME   ------------------------------ ------------------------------   TTT TBS_STREAM   从数据库   SQL SELECT table_name,tablespace_name FROM user_tables   WHERE table_nameTTT;   TABLE_NAME TABLESPACE_NAME   ------------------------------ ------------------------------   TTT TBS_STREAM   4.5 表上Name列建一索引   主数据库   SQL CREATE INDEX ttt_name_idx ON TTT(name);   Index created   从数据库   SQL SELECT table_name, index_name FROM user_indexes WHERE table_name TTT;   TABLE_NAME INDEX_NAME   ------------------------------     ------------------------------   TTT TTT_NAME_IDX   TTT SYS_C005721   4.6 Rebuild索引测试   主数据库   SQL ALTER INDEX ttt_name_idx REBUILD;   Index altered   从数据库   SQL SELECT table_name, index_name FROM user_indexes WHERE table_name TTT;   TABLE_NAME INDEX_NAME   ------------------------------     ------------------------------   TTT TTT_NAME_IDX   TTT SYS_C005721   4.7 索引换一个表空间测试   主数据库   SQL ALTER INDEX ttt_name_idx REBUILD TABLESPACE tbs_stream;   Index altered   从数据库   SQL SELECT table_name,index_name,tablespace_name FROM user_indexes   WHERE table_name TTT;   TABLE_NAME INDEX_NAME TABLESPACE_NAME   ------------------------------ ------------------------------ ------------------------------   TTT TTT_NAME_IDX TBS_STREAM   TTT SYS_C005721 USERS   4.8 删除索引测试   主数据库   SQL DROP INDEX ttt_name_idx;   Index dropped   从数据库   SQL SELECT table_name,index_name,tablespace_name FROM user_indexes   WHERE table_name ‘TTT’;   TABLE_NAME INDEX_NAME TABLESPACE_NAME   ------------------------------ ------------------------------ ------------------------------   TTT SYS_C005721 USERS   4.9 删除表测试   主数据库   SQL DROP TABLE ttt;   Table dropped   从数据库   SQL DESC ttt;   Object ttt does not exist.   4.10 建一张带有LOB类型字段的表测试   主数据库   SQL CREATE TABLE tttclob(id NUMBER PRIMARY KEY, memo CLOB);   Table created   从数据库   SQL DESC tttclob;   Name Null? Type   ----------- -------- --------------   ID NOT NULL NUMBER   MEMO CLOB   4.11 表中插入一行数据   主数据库   SQL INSERT INTO tttclob VALUES(1,clob_test);   1 row inserted   SQL commit;   Commit complete   从数据库   SQL SELECT * FROM tttclob;   ID MEMO   ---------- --------------------------------------------------------------------------------   1 clob_test   4.12 创建Type测试   主数据库   SQL CREATE or REPLACE TYPE ttttype;   2 /   Type created   从数据库   SQL SELECT * FROM user_types WHERE type_nameTTTTYPE;   TYPE_NAME TYPE_OID TYPECODE ATTRIBUTES METHODS PREDEFINED INCOMPLETE FINAL INSTANTIABLE SUPERTYPE_OWNER SUPERTYPE_NAME LOCAL_ATTRIBUTES LOCAL_METHODS TYPEID   ------------------------------ -------------------------------- ------------------------------ ---------- ---------- ---------- ---------- ----- ------------ ------------------------------ ------------------------------ ---------------- ------------- --------------------------------   TTTTYPE 1B36AAF10DA8301DE040A8C0289A77B4 OBJECT 0 0 NO YES YES YES   4.13 删除Type测试   主数据库   SQL DROP TYPE ttttype;   Type dropped   从数据库   SQL SELECT * FROM user_types WHERE type_nameTTTTYPE;   TYPE_NAME TYPE_OID TYPECODE ATTRIBUTES METHODS PREDEFINED INCOMPLETE FINAL INSTANTIABLE SUPERTYPE_OWNER SUPERTYPE_NAME LOCAL_ATTRIBUTES LOCAL_METHODS TYPEID   ------------------------------ -------------------------------- -  5 问题诊断   5.1 如何知道捕捉(Capture)进程是否运行正常?   以strmadmin身份登录主数据库执行如下语句   SQL SELECT CAPTURE_NAME,   2 QUEUE_NAME,   3 RULE_SET_NAME,   4      NEGATIVE_RULE_SET_NAME,   5 STATUS   6 FROM DBA_CAPTURE;   结果显示如下   CAPTURE_NAME QUEUE_NAME   ------------------------------ ------------------------------   RULE_SET_NAME NEGATIVE_RULE_SET_NAME STATUS   ------------------------------ ------------------------------ --------   CAPTURE_PROD PROD_QUEUE   RULESET$_14 ENABLED   ENABLED   如果STATUS状态是ENABLED表示Capture进程运行正常;   如果STATUS状态是DISABLED表示Capture进程处于停止状态只需重新启动即可;   如果STATUS状态是ABORTED表示Capture进程非正常停止查询相应的ERROR_NUMBER、ERROR_MESSAGE列可以得到详细的信息;同时Oracle会在跟踪文件中记录该信息。   5.2 如何知道Captured LCR是否有传播GAP?   以strmadmin身份登录主数据库执行如下语句   SQL SELECT CAPTURE_NAME, QUEUE_NAME, STATUS, CAPTURED_SCN, APPLIED_SCN   2 FROM DBA_CAPTURE;   结果显示如下   CAPTURE_NAME QUEUE_NAME STATUS   ------------------------------ ------------------------------ --------   CAPTURED_SCN APPLIED_SCN   ------------ -----------   CAPTURE_PROD PROD_QUEUE ENABLED   17023672 17023672   如果APPLIED_SCN小于CAPTURED_SCN则表示在主数据库一端要么LCR没有被dequeue要么Propagation进程尚未传播到从数据库一端。   5.3 如何知道Appy进程是否运行正常?   以strmadmin身份登录从数据库执行如下语句   SQL SELECT apply_name, apply_captured, status FROM dba_apply;   结果显示如下   APPLY_NAME APPLY_ STATUS   ---------------------- ------ ----------------   APPLY_H10G YES ENABLED   如果STATUS状态是ENABLED表示Apply进程运行正常;   如果STATUS状态是DISABLED表示Apply进程处于停止状态只需重新启动即可;   如果STATUS状态是ABORTED表示Apply进程非正常停止查询相应的ERROR_NUMBER、ERROR_MESSAGE列可以得到详细的信息;同时可以查询DBA_APPLY_ERROR视图了解详细的Apply错误信息。   6 结篇   通过如上的测试可以看出stream的功能还是十分强大的通过配置Oracle Stream可以更大的提升数据库的可用性和安全性,如此一个好用且不用花费高昂额外费用的功能还是很值得一用的。 转载于:https://www.cnblogs.com/jerryxing/archive/2013/03/13/2957000.html
http://www.zqtcl.cn/news/52297/

相关文章:

  • 做爰视频免费安全的网站公司变更函模板
  • 爱做网站网址公司建网站有何意义
  • 中国建设银行山西省分行网站网站建设亿玛酷神奇5
  • 八方资源网做网站优化怎么样贵阳白云网站建设
  • 社交网站页面设计了解深圳网站定制开发
  • 少儿编程加盟十大机构网站内链优化
  • 主流建站开源程序有哪些如何用二级域名做网站布奏
  • 怎么制作网站的网页设计在家写代码可以赚钱吗
  • 电影网站如何建设会员式汕头市澄海建设局门户网站
  • 长沙哪里做网站价格便宜泰安集团
  • 免费制作永久企业网站淄博百度网站建设
  • 做网站游戏推广赚钱怎么黑网站的步骤
  • 网站seo方案案例软件实施的五个步骤
  • 活动汪策划网站举例一个成功的网络营销案例
  • 广州做手机网站信息营销计划书7个步骤
  • 网站建设的频道是什么意思做美容仪器的网站
  • 国外自建站怎么样wordpress打赏链接
  • 大品牌网站建设哪个网站做浏览器主页好
  • 网站 设计 精髓大连里程科技做网站
  • 学校网站网站建设网站描述优化
  • 免费域名注册网站怎么登录wordpress 链接 弹窗
  • 网站建设调研问卷网络认证工程师
  • 怎么建立一个网站搜关键词会跳出做导航网站有发展吗
  • 什么类型网站网站优化排名易下拉系统
  • 网站后台的编辑器不显示宁波公司查询
  • 免费发帖推广网站培训心得体会感悟
  • 郑州快速网站优化公司哪家好建设网站得目的
  • 为什么网站建设图片显示不出来如何写手机app程序
  • 电子商务网站费用视频直播网站建设方案
  • 互联网三网合一网站建设宁波企业建站