动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Oracle教程 ]的信息

本月文章推荐
.Oracle:PL/SQL中怎样使用Array.
.手工创建Oracle数据库脚本及说明.
.Start Console on Oracle9i VS O.
.Oracle数据库10g的安全性和身份管.
.Oracle及IBM称SQL无新意 微软以商.
.两小时搞定RHAS 3.0上的Oracle 9.
.ORA-00600 [2662]错误解决过程.
.轻松取得建表和索引的DDL语句.
.使用 SQL Server 时需要经常用到.
.实例解析:DB2中实现Oracle的相关.
.oracle毛病(二).
.Oracle数据库技术(22).
.常用数据库JDBC连接写法大全.
.RedHat8.0下轻松实现主板状态监测.
.开机、关机、线上求助与指令下达.
.在 Red Hat Linux 9 上安装 Orac.
.基于规则的优化机制对表达式的处.
.Apache+mod_ssl+Tomcat3.1+php(支.
.怎样在Oracle字段上建立并使用索.
.Oracle数据库技术(2).

Qracle高级复制维护中要注意的方面

发表日期:2008-2-9 |


前段时间一致在做Oracle高级复制,下面是在维护过程中对出现问题的一些分析、解决,贴出来希望对大家有帮助。 高级复制是oracle数据库的高级功能,它的维护比普通数据库复杂,下面是在已有高级复制数据库维护过程中出现过一些问题和解决办法。 1、稳定的物理链路:连接服务器的网络由于故障断开,服务器彼此之间数据就不能访问,数据无法传输;网络不稳定,数据就会发生丢包,不完整。 2、传输速度方面要求较高:否则还不如单级版本。 3、参与的服务器不能长期不开机:这样会积压大量的延迟任务,导致数据无法进行发布。 4、参与复制的表,不能在它上面直接执行任何DDL语句:因为ORACLE自动在参与复制的表上建立了内部的支持复制的TRIGGER和PACKAGE,在它上面直接执行任何DDL语句都会破坏这些复制支持。应该先SUSPEND要修改表所在的复制组,在REPICATION MANAGER中或调用REPCAT API执行DDL语句,然后重新GENERATE该表的复制支持,最后将复制组状态恢复为NORMAL。注重修改表结构的DDL语句中表名前一定要带上属主,并且最后没有分号。假如不小心直接执行了DDL语句,应该将该表移出复制环境,删掉,重新建立或从其它节点复制过来。 5、修改一张表加一个字段,并设置缺省值,如 ALTER TABLE OWNER.TABLE_NAME ADD(FIELD_NAME VARCHAR2(20) DEFAULT 'AAA');在9i之前不能一次执行,要分成两部分执行: 1、ALTER TABLE OWNER.TABLE_NAME ADD FIELD_NAME 2、ALTER TABLE OWNER.TABLE_NAME MODIFY FIELD_NAME DEFAULT 'AAA' 这是因为执行任何DDL语句,需要SUSPEND复制组,此时复制表只能查询,不能执行其它DML语句。假如直接加上一个字段同时赋予缺省值,此时的处理是加上一个字段,并马上给该字段赋上给定的缺省值,这后面的DML语句是不能执行的,所以会报错。而分成两部分执行,第一部分先加一个字段,第二部分再修改该字段的定义,不会发生插入缺省值的DML操作,因此可以执行。 6、执行任何ADMIN REQUEST(对复制环境的治理命令)前,都要保证此时没有堆积的DEFERRED TRANS。 7、执行任何ADMIN REQUEST,必须一步一步执行。因为ADMIN REQUEST的工作原理,是用一个REPCATLOG表保存ADMIN REQUEST语句,执行完一条消失一条,后面的再继续执行。假如前面一条没执行完,后面的ADMIN REQUEST就无法执行,而REPCATLOG表假如不为空,复制组就无法恢复为NORMAL。因此每次发出ADMIN REQUEST后,都要检查REPCATLOG表,当所有节点上的REPCATLOG表都为空后,才能发出下一条命令。 8、假如发现REPCATLOG表中有无法执行的命令,可以重新APPLY或PURGE掉再重新发出命令执行。假如只是某一个节点上有遗留命令,可以在该节点上多APPLY几次执行。 9、假如发出命令后一直没有响应,而ADMIN REQUEST又无法PURGE掉,现象类似死锁。可以试着BROKEN掉该ADMIN REQUEST对应的JOB,重新刷新命令。假如命令能继续执行,恢复JOB的状态。假如还不行,从V$SESSION 和V$LOCK中查出死锁,用ALTER SYSTEM KILL SESSION 杀掉死锁的进程,假如还是杀不掉。就需要查出类型为'RQ'的分布式死锁,用SID再从V$PROCESS、V$BGPROCESS查出对应的后台进程,从操作系统级杀掉后台进程的方式来解锁,可能还需要重启数据库。最后再恢复JOB的状态和其他涉及的复制环境状态。 10、可以通过REPLICATION MANAGER或相关系统表查询复制环境情况,以REPADMIN用户登陆: 查看复制组和复制对象:
  select gname,status from dba_repgroup;   --其中gname 即为复制组名,status 表示状态   select gname,oname,status from dba_repobject where type =’TABLE’ and oname =   ‘table_name’;
要查询某张表在哪个复制组中,将table_name 替换成表名,注重表名一定要大写。 查看分布式状态:
  select job,what,next_sec,this_sec, last_sec,failures,broken from dba_jobs;   failures 小于16,broken 为N 表示分布式状态正常  
  查看数据库连接
  select * from dba_db_links;  
  恢复传播复制任务 当连接复制环境中数据库的网络出现问题,可能会造成复制任务的停止。具体现象表现为本地数据库的更新操作没有发布到远地数据库中。当出现这种情况时,请参考前面提到的查看分布式状态的方法,检查复制任务是否正常。假如failures 大于等于16,broken 为Y 表示分布式状态不正常,需要恢复传播复制任务。
  exec dbms_job.run(jobno);   -- jobno 为在dba_jobs 表中ailures 大于等于16,broken 为Y 的job。  
  查看执行出错的事务,当分布式数据库出现不正常时,请执行下列语句,并根据查询的error_msg 来解决问题。
  select distinct origin_tran_db,destination,error_msg from deferror;  
  尝试执行出错的事务,根据查询的error_msg 解决了网络无法连接等问题后,请执行下列语句,并拷贝生成的拼接exec 语句在客户端执行。
  select ' exec dbms_defer_sys.execute_error ( ' ' ' DEFERRED_TRAN_ID ' ' ' , ' ' '   DESTINATION ' ' ' )' from deferror;
   删除执行出错的事务,可能会碰到这样一种状况,尝试执行出错的事务,该事务依旧执行不成功。假如此时deferror 表中的error_msg 都是“NO DATA FOUND”的错误,那么可以考虑删除执行出错的事务。请非凡注重,必须确认已经解决了出错原因,并在每个分布式节点都尝试执行出错的事务后,才可以删除再次执行出错的事务,否则会造成分布式数据库的数据不一致。
上一篇:oracle存储过程编译时的一些错误 人气:716
下一篇:关于《深入浅出Oracle》中granule的补充 人气:511
浏览全部Oracle教程的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-8-30 HBcms(宏博cms)内容管理系统 v1.1
2008-8-30 邓西网站帮助系统 v2.3
2008-8-30 破竹CMS v4.0.7.21
2008-8-30 美女写真网图片小偷 v1.5 全站静
2008-8-30 PHP美女写真Cms v1.00
2008-8-30 PHPer.yang情书系统 v1.0
2008-8-30 快乐商城全站源码
2008-8-29 oblog v4.6 build 20080827
2008-8-29 ASBLOG v2.5 bulid 080828
2008-8-23 Mini WinMount V0.4
2008-8-23 Vista优化大师3.11正式版
2008-8-23 Wine 1.13
2008-8-23 KlipFolio 5.0 Build 5899-80
2008-8-23 Windows Sysinternals Desktops
2008-8-23 OneTap Movies1.2破解版
2008-8-23 AnnotaterPDF阅读1.1.503 破解版
2008-8-23 SoundMeter分贝测量仪 v1.0汉化破
2008-8-23 iDrum音乐节拍1.0破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | Html转换js | js/vbs加密 | md5加密 | 进制转换
实用工具:汉字翻译拼音 | 符号对照表 | 个税计算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵