Informix常见错误处理思路课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《Informix常见错误处理思路课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Informix 常见 错误 处理 思路 课件
- 资源描述:
-
1、2023年年1月月1日日深圳深圳IT-叶万华叶万华Informix 常见错误处理思路及应用常见错误处理思路及应用informix常见错误处理思路常见错误处理思路逻辑日志满频繁的锁冲突长事务I/O 失败故障现象:数据库不再进行任何操作,使用 onstat l 命令观察逻辑日志状态,所有的逻辑日志都处于已使用未备份状态,即 flags 为 U-标志。onspa01g2:/home/szitonstat l address number flags uniqid begin size used%used1228d4ed0 1 U-10521 3:53 12800 12800 100.001228d4
2、f38 2 U-10522 3:12853 12800 12800 100.001228d4fa0 3 U-C-L 10523 3:25653 12800 10828 84.591228bec50 4 U-B-10504 3:38453 12800 12800 100.001228becb8 5 U-B-10505 3:51253 12800 12800 100.001228bed20 6 U-B-10506 3:64053 12800 12800 100.001228bed88 7 U-10507 3:76853 12800 12800 100.001228bedf0 8 U-10508 3
3、:89653 12800 12800 100.001228bee58 9 U-10509 3:102453 12800 12800 100.00(注:红色部分为异常状态,如绿色部分也被使用完,数据库将出现异常。版面上只显示出该店出现异常时用onstat l监控到的部分信息。)逻辑日志满逻辑日志满故障分析:由于数据库的大部分操作都需要记录逻辑日志,所以如果逻辑日志由于各种各样的原因被充满都会导致数据库停止正常的操作,等待逻辑日志空间的释放、重新再利用。原因可能为:1.数据库逻辑日志没有及时备份2.数据库逻辑日志空间分配过小3.逻辑日志里面包含活动事务、包含检查点信息逻辑日志满逻辑日志满故障处理:
4、检查是否是由于逻辑日志备份出现问题,如果是不能备份请查找不能备份的原因,可能是由于磁带满或磁带机出现故障,或者是磁带设备繁忙;个别情况下即使逻辑日志标志为已备份但是仍然是不可使用的,包括:1.该逻辑日志包含活动的事务信息,由于数据库需要考虑其可能的回滚操作,因此是不会让该逻辑日志的内容被覆盖的,可以通过 onstat x 检查其 beginlg 来确定事务的逻辑日志起始位置;2.包含检查点信息,可以通过 onstat l 观察 flags 的最后一位为 L 的逻辑日志的位置,在它之后的逻辑日志即使已经备份也是不可使用的,因为这些逻辑日志内容将会在快速恢复中使用到。3.在这些情况出现以后如果暂时
5、不能快速的处理,可以使用逻辑日志联机增加的功能,只要有空闲的 chunk 空间,即可在当前逻辑日志后增加新的逻辑日志,并且不需要执行 0 级备份。逻辑日志满逻辑日志满故障现象:在正常的数据库操作中会经常出现243、244 等一类的锁错误码出现-243 Could not position within a table table-name.-244 Could not do a physical-order read to fetch next row.类似的锁表现象中,我们在日常的监控过程中会经常观察得到。频繁的锁冲突频繁的锁冲突故障分析:数据库在进行修改操作的时候为了防止其他用户的同时修改
6、,都会在修改所涉及的数据上设置对应的锁,如果其他用户再访问到这些已经被放置上锁的数据,就会出现锁失败。例如如果需要知道在指定的表上是有哪些用户具体占用了锁,可以通过以下的方式查看:执行 onstat u来获得实际的 session 信息,从中就可以找到锁的拥有者。频繁的锁冲突频繁的锁冲突频繁的锁冲突频繁的锁冲突使用onstat g sql+sessid r 跟踪查询锁状态故障处理:1.调整数据库隔离级别,例如使用 dirty read,将数据库表的缺省页级锁修改为行级锁;2.设置锁等待时间;3.调整应用 SQL,提高执行效率,尽量快的完成事务处理,释放资源;4.如果需要快速处理锁冲突的情况,在
7、确定锁的实际拥有者以后可以确定是否应该终止其操作,执行 onmode z Kill specified session id,以达到释放锁资源的目的。频繁的锁冲突频繁的锁冲突故障现象:在数据库日志里面出现发现长事务的提示,受影响的事务处于回滚状态,个别情况下会导致整个数据库实例的其他数据库会话都停止执行。故障分析:当一个活动事务它所占用的逻辑日志个数的比例达到或超过 LTXHWM(长事务基准线)所设定的值,数据库就会判定该事务为一个长事务,对该事务进行回滚操作,如果这个时候逻辑日志的使用个数仍然持续上涨达到或超过 LTXEHWM 所设定的值,则数据库会停止其他会话的正常运转,全力保证该长事务的
展开阅读全文