理解 Balanced Histogram 与Height Balanced Histogram
在数据查询中,对于有谓词的操作,优化器需要根据数据的分布情况,计算是走索引还是全表扫描,实现数据的Access方法的选择。所以就需要一种方法使得优化器知道该如何选择。直方图是统计学中的一个概念,通过数据的条块分割,统计出不同值的数据分布,给优化器计算cardinality提供依据。
日志切换频繁的处理思路
日志切换太频繁,对事务影响比较大,系统可能整体感觉事务慢,需要分析具体原因做出调整,下面根据我具体处理的一个案例,给出具体的分析思路。
Enq: KO - Fast Object Checkpoint导致系统缓慢的案例分析
当Oracle使用direct path read时,在操作对象上发生对象级的checkpoint,需要等待脏数据写入磁盘,这个等待事件 就是Enq: KO - Fast Object Checkpoint,此时IO异常会导致严重的Enq: KO - Fast Object Checkpoint这个等待事件
HAIP地址被占用导致集群一个节点无法正常启动的处理过程
HAIP是Oracle提供的满足CacheFusion功能的高可用地址,该地址在集群启动前不允许被占用,(一个网段),否则导致集群启动异常,本文是我的一个测试环境,重启集群发现第二个节点一直无法启动,希望这个处理案例给大家一个启示吧。
12C之一创建PDB的方法。
本文介绍12C中创建CDB的各种方法
Oracle12C SPM的使用方法
活学活用SPM
12C容器数据库的备份恢复及闪回CDB与PDB。
12C容器数据库的备份恢复较非容器数据库增加了区分容器的特点,CDB中包含多个PDB其备份恢复有其特有注意事项,本文通过例子一一说明
Oracle12C 服务器池管理
本文测试12C中ServerPool的配置使用
OCR和VotingDISK迁移
这个迁移测试是基于某银行测试环境的一个需求,将现有ASM磁盘迁移到更小的ASM磁盘组上,从而将之前的ASM磁盘给其他项目组用,这个过程中OCR和VOTINGdisk盘的迁移最为关键,我们在实施前进行了测试。
通过测试用例了解Oracle Temp表空间具体使用情况
Oracle的temp空间不足往往是未调优 的SQL或者异常SQL导致,本文通过示例讨论如何观察temp空间使用情况,定位异常SQL。
12C 之分区技术测试与总结
分区宏观上基于分而治之的思想,分区表技术也是Oracle应对海量数据处理(大表)的核心技术,本文讨论分区目的,分区表类别,其特点优劣以及索引分区相关知识和注意事项。
使用存储过程DBMS_REPAIR.SKIP_CORRUPT_BLOCKS恢复模拟验证
如果数据没有备份,或者段启用了nologging选项,我们就只能尽可能抢救数据,确定受损的数据对象,再通过人工手段补录数据,本文通过模拟重现整个过程。
数据库block corruption的检测和恢复模拟
在生产库中一旦出现坏块就需要及时处理,比如需要确认坏块影响对象范围,对应数据文件是否备份,是否有足够旧的归档,针对不同对象如何恢复,本文给出一个完整的模拟过程,后续讨论了几种坏块恢复方式,以及文件是否备份,归档等的处理方法。我们做过这样的验证,手里有对应的脚本,再遇到类似问题就心里不慌了。
迁移数据文件到ASM
最近遇到一个案例,用户自己在RAC的节点2上创建了一个表空间,当节点1 重启后发现数据库无法启动,集群状态是正常的,下面我们分析这个问题,其实这往往是初学者容易犯的错误。
ASM第二个实例异常报ORA-600错误,而另一个节点报4031错误的分析处理
ASM实例负责管理ASM的元数据,管理ASM磁盘,ASM磁盘组等,这个案例是某路局巡检发现的ASM磁盘组无法写入。
DG环境下通过心跳表从业务角度监控数据同步
在生成环境中,创建心跳表是从业务角度监控数据同步的常用方法,其实这个表就说普通表,指示通过定时任务每分钟向表中插入数据,通过对比主-备库之间的数据是否一致从而判断主备同步问题。
Scheduler Job 测试
最近生产库经常报各种job异常,这里简单做一个测试,最后给出我们遇到的各种job异常。
因为漏洞扫描借机谈谈打补丁这事
需要对一个11.2.0.3.0的数据库打PSU,借机谈谈打补丁这事吧。做Oracle数据库的运维,打补丁这事是必须面对的,这是世界上哪里会有没有bug的软件呢,其实一个通用软件面对这个世界这么复杂的使用环境,有一系列的补丁策略、流程、标准本身也是十分成熟软件公司的体现。
ORA-03137: malformed TTC packet from client reject
在日常数据库巡检中,看到ORA错误都需要我们保持谨慎的态度,需要搞清楚其含义,对数据库或者对用户查询是否有影响, 今天我们看一个之前巡检中发现的错误3137这个错误之前从来没有遇到过,算是一起学习下吧。
查询用户open cursors的分布情况
生产库由于开发的各种原因导致游标没有释放,此时会话无法打开新的游标,数据库告警日志也会有告警记录,此时需要我们查询那些用户的哪些游标打开了而没有关闭。