首页
学习
活动
专区
工具
TVP
发布

bisal的个人杂货铺

专栏作者
797
文章
979288
阅读量
38
订阅数
Oracle数据库揭露问题本质的利器 - errorstack
朋友咨询了一个问题,"Oracle停了所有应用的情况下(还有一个zabbix连接数据库),有一个用户被锁了,通过locked_date看是昨天晚上10:05锁的,然后今天早上解锁后也是10:05分锁住的,期间应用也没启动过,从监听日志看只有zabbix在连,没有失败的连接,从数据库看没有job,也没有触发器。这个用户锁住的问题还有哪个方向排查?数据库里面还有别的东西需要排查的呢?"
bisal
2023-12-30
1360
Oracle中truncate删除的数据还能找到?
Oracle的truncate删除数据操作,不会写日志,不产生回滚段,因此执行速度快,相当于Windows的shift+del,不经回收站直接删除。
bisal
2023-11-16
3121
Oracle数据库日常巡检指令
数据库的日常巡检可以说是保障系统稳定运行的基础,虽然不同的运维团队、不同的数据库,都会有适合自己的巡检体系,但是其中很多内容还是可以互相借鉴的。技术社群的这篇文章《Oracle数据库日常巡检指令》给我们提供了Oracle数据库日常巡检指令,虽然只针对Oracle,但是一些巡检的方向还是值得借鉴和学习的。
bisal
2023-10-19
5070
Oracle中数据导出成HTML的操作实践
spool是Oracle中将数据到成文件常用的一种工具,但它的强大,不仅仅是数据的导出,在格式和内容上,还可以自定义,甚至生成像AWR一样的统计报告。
bisal
2023-05-20
3870
Oracle导出Excel的几种操作方案的比较
针对这个需求,有多种实现方式,例如spool、utl_file、PLSQL Developer导出、Java等语言直连数据库操作,没有最佳方案,只有最合适的。
bisal
2023-03-19
1.5K0
寻找SQL执行线索的武器库
碰到一些SQL问题,有时常规的方式,例如执行计划,不足以给出问题的线索。因此,可能还需要跟踪这条SQL,通过Oracle提供的trace,了解它内部执行的机制,从中寻找线索。
bisal
2023-03-07
6700
推荐一篇Oracle RAC Cache Fusion的经典论文
Oracle RAC可以说是具有较高保障级别的生产环境中最常用的部署架构,我们能根据场景让应用选择load balance还是failover的模式(可以参考
bisal
2023-02-16
8880
Oracle中number数据类型的存储机制
Oracle中number数据类型存储的是整型,碰巧看到这篇文章讲解了通过分析索引了解0和1的存储机制,值得学习一下。
bisal
2023-01-13
9190
MySQL中的单引号和双引号
《请注意前方高能有引号!》提到过Oracle中引号的处理,其实不仅是Oracle,其他的数据库中,同样存在引号是否使用正确的问题,看到社区的这篇文章,就介绍了MySQL中对单引号和双引号的几种使用场景,可以借鉴学习。
bisal
2023-01-08
4.4K0
通过JDBC让应用能体验到Oracle高可用的"红利"
(1)使用SID,jdbc:oracle:thin:@host:port:SID,例如
bisal
2022-12-01
3570
How to Tell if the I/O of the Database is Slow - 1
系统变慢的原因有很多,有时是因为SQL,有时是因为硬件,有时又可能是系统,就如前几篇文章介绍的,AWR是一个查找问题原因的重要手段,同时OSWatcher等工具也是排查系统问题必不可少的方法。当然系统变慢,也需要知道他的主要现象,是整体慢,还是局部慢,是一直慢,还是瞬时慢。
bisal
2022-12-01
3070
"log file sync"等待事件-1
“log file sync”是等待事件中非常常见的一种,他排在AWR的top5中有时是正常情况,有时则需要格外注意。昨天也听了一次Oracle的网络研讨会,介绍的是AWR相关的分析,从中学习到最重要的一点,就是对于AWR报告中若干信息的判断不能独立地看,需要综合起来,一个参数值大,不一定代表有问题,也可能是正常的,需要具体问题具体分析,其实和日常生活是一样的,头疼,不一定是感冒,也可能是缺少睡眠。
bisal
2022-12-01
3760
续《表扫描与索引扫描返回的行数不一致》
上篇文章主要介绍了如何从分析表得到的报错,以及trace中的信息,判断表返回的记录与索引返回记录不一致时的处理方式。下面这篇文章则介绍了针对ORA-1499进行问题排查的一些基本方法。
bisal
2022-12-01
7660
表扫描与索引扫描返回的行数不一致
某个应用最近总出现死锁,其中一些是因为报了索引和数据行存在不匹配的问题,MOS中有如下文档可以参考。 ORA-1499. Table/Index row count mismatch(文档 ID 563070.1) 现象: 使用“validate structure cascade”分析表时报ORA-1499的错误,trace文件中包含“Table/Index row count mismatch”的错误信息。例如: SQL> analyze table test validate structure cascade; analyze table test validate structure cascade * ERROR at line 1: ORA-01499: table/index cross reference failure - see trace file  trace文件中包含: Table/Index row count mismatch  table 6559 : index 10000, 0  Index root = tsn: 6 rdba: 0x01400091 意味着扫描表返回6559行数据,索引扫描返回10000行数据。“Index root”是索引的段头信息。rdba: 0x01400091是相对于数据块地址的索引段头。他是十进制的20971665,Rfile#=5,Block#=145。
bisal
2022-12-01
1.2K0
使用索引快速全扫描(Index FFS)避免全表扫描的若干场景
2. Index FFS只能通过CBO(Index hint强制使用CBO)获得。
bisal
2022-12-01
6250
与IO相关的等待事件troubleshooting-系列8
        Redo日志活动期间会有很多的等待事件,而且他们大多是和IO相关的。最重要的两个就是‘log file sync’和‘log file parallel write’。
bisal
2022-12-01
4230
与IO相关的等待事件troubleshooting-系列6
当Oracle从多个数据文件并行读到内存(PGA或Buffer Cache)的非连续缓冲时,可以看到这种等待事件。在恢复操作或为了优化而预处理缓冲(代替执行多个单块读)时也会有这种等待事件。
bisal
2022-12-01
7890
与IO相关的等待事件troubleshooting-系列5
        这是另一种常见的等待事件。他产生于Oracle从磁盘读取多个块到Buffer Cache中非连续(" scattered")缓存的时候。这种读一次最大值是 DB_FILE_MULTIBLOCK_READ_COUNT。这种典型场景像全表扫描(Full Table Scans)和全索引快速扫描(Fast Full Index
bisal
2022-12-01
3920
与IO相关的等待事件troubleshooting-系列4
        这是一种最常见的IO相关的等待。大多数情况下,他指的是单块读,例如索引数据块或通过索引访问的表数据块,也能在读取数据文件头块时看到这种等待事件。在更早的版本中,这种等待事件也会产生于从磁盘的排序段通过多快读的方式读入Buffer Cache的连续("sequential")缓冲。
bisal
2022-12-01
3590
与IO相关的等待事件troubleshooting-系列3
        使用Statspack类似的工具对数据库响应时间分析之后,已经表明与IO相关的等待事件限制了系统性能,有许多的方法可以判断这种问题。
bisal
2022-12-01
3790
点击加载更多
社区活动
RAG七天入门训练营
鹅厂大牛手把手带你上手实战,赢鹅厂证书、公仔好礼!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档