- 博客(194)
- 资源 (3)
- 收藏
- 关注
原创 记一次oracle数据库瞬时卡顿排查过程
(自动段指导)*识别有可用回收空间的段,并提出如何消除这当段中的碎片的建议,也可以手动运行 Segment Advisor 获取更多最新建议,或获取 Automatic segment Advisor 没有检查到的那些有可能做空间回收的段的建议。(自动优化器统计信息收集)**收集数库中所有无统计信息或仅有过时统计信息的 schema 对象的 Optmzer(优化)统计信息,SQL query optimizer(SQL 查询优化器)使用此任务收集的统言息提高 SQL 执行的性能。
2024-02-01 16:57:48
2274
原创 alert log输出启动信息,却不是数据库重启了?
了解这个特性 无需惊慌 看到警报日志中突然冒出的“启动信息”,别急着以为数据库重启了——这很可能只是Oracle 12c+在归档切换XML日志文件。通过分段,旧日志被归档,新日志从头开始,保持文件大小可控。经过查看原来是alert log输出了“启动信息”,同时启动信息中有一个ORA-04031相关的oneoff 补丁,被alert log日志监控给捕获,导致误告警!Oracle 12c的新日志分段机制这其实是Oracle从12c版本开始引入的一个新行为,在11.2.0.4或更早版本中不会出现。
2026-01-21 21:14:56
646
原创 Oracle SQL的时间你都清楚吗?
Oracle 在执行 SQL 时,会记录多个时间维度,这些指标反映了从查询解析到结果返回的全过程。定义:SQL 语句从开始执行到完成(包括所有子过程)的总实际时间,通常以秒为单位。包含内容:CPU 时间、IO 等待、网络延迟、锁等待等所有消耗。意义:这是用户感知的最直接性能指标。如果 Elapsed Time 过长,可能表示查询效率低或资源争用。CPU Time(CPU 时间):定义:SQL 执行过程中 CPU 实际使用的处理时间,不包括等待时间。
2026-01-06 21:50:13
631
原创 使用分区表的请一定注意这个问题
在Oracle数据库中,分区表(Partitioned Tables)是处理大规模数据的利器,通过将表数据按键值(如日期、范围)分成逻辑分区,提高查询效率和管理灵活性。异步全局索引维护机制从Oracle 12c开始,当执行DROP或TRUNCATE PARTITION并带有UPDATE GLOBAL INDEXES时,Oracle默认采用异步全局索引维护(Asynchronous Global Index Maintenance)。通过主动管理,可最大化分区表的优势,确保系统稳定。
2025-12-23 20:30:40
618
原创 ORACLE_PDB_SID和ORACLE_SID的区别
本文探讨一个很小的问题,很容易被忽略的一个小问题,那就是ORACLE_PDB_SID和ORACLE_SID这两个环境变量;ORACLE_SID这个大家很熟悉了,ORACLE_PDB_SID是CDB模式下的一种连接到某个PDB的方式;当然也可以使用 alter session set container=pdb的方式。这一段很简单就是连接到19.11的CDB环境,CDB下有一个PDB1,设置完ORACLE_PDB_SID后可以切换至PDB下。
2025-12-04 22:43:03
483
原创 一次微小的CPU波动,你能查到什么?
前几天负责维护的一套核心系统的主机CPU,出现了一次小的CPU波动,(正常5%左右,问题时段最高到15%)因为是最核心的系统,所以要追查根本原因;跟着博主一起来看,是什么造成的这次CPU波动。
2025-11-27 22:09:39
1041
原创 跨机房ADG因带宽限制引起的GAP问题
数据库默认是4个arc进程(log_archive_max_processes=4),可以看到3号在传输120037号归档,值得注意的是在active的进程中,1号进程是no fal no srl的,就是不响应fal和server请求,2号进程是检测心跳的,也就是说真正能响应fal的只有0号和3号进程。本案例来自网友“缺角的西瓜头”的投稿,看了下和他的聊天时间,正好过去两年了,而这个问题也困扰了他两年,终于在调整了一个参数后,有大幅的改善(并未彻底解决), 请看他描述的这个案例。
2025-11-03 21:56:13
733
原创 ORACLE 高危漏洞(9.8分)
CrowdStrike研究人员确认,攻击始于2025年8月9日,Clop利用该漏洞及7月补丁修复的其他漏洞,构建复杂攻击链,潜伏于企业网络中,直至9月30日发出首批勒索邮件。Oracle E-Business Suite(EBS)接连曝出两枚高危零日漏洞——CVE-2025-61882与CVE-2025-61884,宛如悬在企业数字命脉上的双重利剑。臭名昭著的Clop勒索软件组织已利用CVE-2025-61882潜伏攻击数月,并可能将新披露的CVE-2025-61884纳入其复杂攻击链,进一步放大破坏力。
2025-10-13 20:59:21
1226
原创 MOS(My Oracle Support)双因子再升级!
甲骨文(Oracle)于2025年3月为支持用户引入了多因素认证(MFA),使访问My Oracle Support和My Oracle Cloud Support账户更加安全。甲骨文推荐使用上述新的MFA方法,因为它们具有增强的安全功能和抗钓鱼攻击的能力。今年三月份Oracle官方技术支持网站My Oracle Support(本文简称MOS),启用了双子验证,当时可选的方式有两种,一种是短信,一种是邮箱,以这两种方式来实现双因子验证。1.我原有为邮件验证,今天登录后会有如下提示,点击链接。
2025-08-21 22:01:44
686
原创 ORACLE 19C建库时卡在46%、36%
alertlog,其他log也没有更多有用的信息,结果一查MOS发现原来是因为我之前为了本机登录显示当前dbname等信息修改了glogin.sql引起的,真的是自己给自己挖了个坑,要把glogin.sql 改为原来的样子把所有自己手动添加的都需要删除或者注释掉。今天给测试库新建数据库,原来这台测试机上已经有3个实例了,打算再建三个。结果DBCA建库一直卡在36%(CDB模式),如果是non cdb就会卡在46%。今天遇到一个小case,写下来做个记录,也算是自己挖的坑自己填上。
2025-08-06 22:02:10
362
原创 一个时代的落幕 2026年起ORACLE不再支持HPUX
这台小机跑了20多年了,是真的稳!这个可能就是所谓的幸存者偏差吧,因为HPUX系统遇到的case最多,当时这两套集群真的是遇到了太多问题,仅仅在我维护的这两套集群中就发现了至少四个新BUG,但从这两套系统后来迁移至Solaris+11G之后,这十几年的DBA职业生涯,我再也没有帮ORACLE发现过新的BUG。2010年我刚入行的时候,维护的两套最重要的生产系统,就是跑在HP小机搭建的ORACLE 10GR2 RAC集群上,当时还是使用的HP的CM做的集群,那时ORACLE 的Grid还不是特别成熟。
2025-07-29 22:32:27
1037
原创 Oracle19C 19.28补丁发布,打补丁到19.28
北京时间2025年7月16日,oracle发布了新的季度补丁19.28,但是和Q2的19.27类似,本次windows补丁继续delay,预计要到月底才能发布,所以windows系统的补丁,还要再等等。欢迎关注我公众号:潇湘秦,公众号有超多资源福利!
2025-07-16 20:54:49
1954
原创 DBA 7*24 on call的人生!
刚入行时是管理几套 HPUX 和IBM P5/6小机集群,其中有套HPUX三节点 oracle 10g RAC 利用HP CM做的集群,非常不稳定,当时记得几乎每周都要半夜处理问题,搞得压力很高,经常失眠;第二天早上起来一看手机关机了,心里立马有种不详的预感,赶紧充电开机,一看手机十几个未接电话,十几个未接微信语音,有同事有领导的!还好很快解决,出问题的时候已经是早上并未造成重大的宕机故障,但是这也给我带来了很大的冲击,之后睡觉前我都会一再确认手机是否正常充电!现在是6月26日的凌晨三点,没错我失眠了!
2025-06-28 15:20:22
230
原创 Oracle日志体系和遇到问题后日志排查路径
Oracle 11g 引入了 Automatic Diagnostic Repository (ADR),用于统一管理数据库和集群相关的诊断日志和跟踪文件,取代了 10g 及之前版本的分散日志结构(如 bdump、udump 等目录)。日志主要分为以下几类:Alert 日志:记录数据库或集群的重大事件(如启动、关闭、错误、死锁等)。Trace 文件:记录详细的诊断信息,通常与特定进程或错误相关。监听日志:记录数据库监听器的连接和错误信息。
2025-06-11 16:22:16
1696
原创 在Oceanbase桌面版体验OB自动分区表,小功能大作用!
直接官网搜“自动分区”,就能很方便的找到官方文档对自动分区分裂的介绍,而且非常详细。其实这个并不算是ob的一个新功能,在V4.3.4就已经引入了自动分区分裂,只是这次Oceanbase开发者大会上提到了,所以才在被大家热议。简单来说,OB 可以在表级别或者租户级别实现表的自动区分,分区依赖大小,这个大小可以在建表时设置,如果不设置则使用默认参数auto_split_tablet_size ,也就是达到这个大小就自动分区;:租户级别配置项,控制租户是否开启自动分区功能,默认关闭。
2025-05-19 16:43:45
999
原创 大表归档,要注意哪些坑?稍有不慎造成业务宕机!
OS:Centos7.9 DB:19c标准版 因为是标准版数据库,所以没有办法使用分区表目前是用户有几个大的log表需要做归档,最大的一个表大概4亿笔数据,打算只保留最近180天的数据,其他的历史数据迁移至归档库我这里给出的方案是如下1.以CTAS创建一个新的log_new表,这个表只保留最近180天的数据。2.expdp 或者dblink的方式将这个大表迁移到归档库3.truncate log,然后drop log表4.将log_new rename to log5.参照原表创建索引。
2025-05-15 09:16:49
413
原创 Oracle非归档模式遇到文件损坏怎么办?
因为这个是库是非归档模式的,所以没有物理备份,这样遭遇了block corrupt确实非常麻烦,建议重要的库还是一定要启用归档并使用RMAN备份。expdp备份部分表的脚本 供参考/bin/bashINCLUDE = TABLE:"IN (select table_name from exptab)" ##将需要备份的表名放入到exptab表中。
2025-05-09 14:49:39
589
原创 Oceanbase单机版上手示例
obdOceanBase Deployer,OceanBase 安装部署工具,简称为 obd。详细信息请参考官网文档OceanBase 安装部署工具。OBAgentOBAgent 是 OceanBase 数据库监控采集框架,支持推、拉两种数据采集模式,可以满足不同的应用场景。GrafanaGrafana 是一款开源的数据可视化工具,它可以将数据源中的各种指标数据进行可视化展示,以便更直观地了解系统运行状态和性能指标。详细信息可参见Grafana 官网。Prometheus。
2025-04-18 13:41:31
1142
原创 Oracle19C低版本一天遭遇两BUG(ORA-04031/ORA-600)
截止至2025年4月16日 Oracle19C已经更新至19.27,我认为至少在未来五年内,19c仍然会是主力版本;当然拉如果没有遭遇BUG,理论上可以不打补丁的,但是为了系统的稳定,仍然建议将19C升级至19.20+ (保守点19.15+)附录oracle各版本支持时间线。
2025-04-16 17:05:03
1323
原创 Oracle19C 19.27补丁发布
p6880880_190000_Linux-x86-64.zip (更新 OPatch .45)本文仅供简明指令和大概用时,方便直接 copy 使用,并了解指令的预期执行时间,减少等待焦虑。北京时间4/16日Oracle 19C 19.27季度补丁发布,至此,19c RAC 升级至19.27 完成。
2025-04-16 09:26:59
1850
原创 Oracle用户的PASSWORD_LIFE_TIME有哪些坑?
如果不了解用户密码的过期时间的计算逻辑,很可能遇到前面这几个坑,特别是场景三中在面对审计时,以为将PASSWORD_LIFE_TIME 改一下截个图,再改回去就完事了?实际上可能留了一个大坑,甚至造成系统宕机的风险,特别是对于应用账号,只有应用使用,ORA-28002不影响系统运行,直到账号过期无法使用,造成应用宕机,所以针对PASSWORD_LIFE_TIME 的修改大家要谨慎,涉及到修改PASSWORD_LIFE_TIME 参数后一定要检查用户的状态。
2025-04-15 10:28:50
1026
原创 利用Deepseek自动优化SQL并推送给开发
这里只是实现了一个非常简单的功能,通用API的能力应付基本的sql优化,日常排错还是没有问题;使用本地化部署的deepseek,即使是加了知识库,可能还是无法与官方满血的deepseek相提并论,不过受限于数据安全问题和网络限制无法访问官方API, 我这里也不是使用的数据库直接调用,而是使用EMCC主机,EMCC主机已经打通了所有被管理数据库的网络和端口,只需要将EMCC加个白名单api.deepseek.com 443即可。
2025-03-28 10:07:45
999
原创 白领如何找到远程兼职工作,告诉你十个平台(上)
1.Remotive 是一家专注于远程工作机会的招聘平台,涵盖多个行业,特别适合寻找全职远程工作的专业人士,尤其是在技术和数字领域。IT的小伙伴如果是英语OK,还是可以在上面找到适合自己的兼职远程工作机会的,尤其是云平台(AWS,azure)比较熟悉的同学。3.User Interviews 是一家专门为用户研究人员和企业提供参与者招募服务的平台,旨在帮助研究人员快速找到符合特定条件的受访者,以获取有价值的用户洞察。:查找工作不需要特定的经验,但资格要求因职位而异,适合那些寻求工作机会的人。
2025-03-14 17:25:17
1971
原创 AI的SQL优化能力,取决于你问问题的能力!
我又尝试了多个大sql给chatgpt,它基本上都是按这三种模式来给我提出优化建议1.根据具体的sql建议创建联合索引2.使用MV物化耗时较久的子查询模块,这个建议有点耍流氓,你说有用吗?确实有用,但是在实际操作中可操作性较小,除非该子查询会被大量使用;3.代码重构而且chatgpt给出的优化后的时间和io的估算也是比较准确的,这点不得不说还是蛮强大的。如果想进一步调优,还可以使用ash,sqlhc等脚本跑出更详细的sql执行信息,丢给AI相信给出的优化信息将会更精准。
2025-03-11 11:23:01
967
原创 AI处理数据库问题哪家强?Chatgpt,Deepseek,Grok对比!
通过优化网络传输、调整MRP参数、统一补丁版本、优化自动处理脚本和加强监控,可以有效减少GAP的出现和恢复时间。如果问题仍然存在,建议进一步分析具体的日志和错误信息,或者联系Oracle支持获取更专业的帮助。🔹 1. 总体对比AI分析深度可操作性(命令给出情况)技术全面性(覆盖的优化点)整体评价ChatGPT⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐(详细 SQL + ALTER 语句)⭐⭐⭐⭐⭐(网络、补丁、MRP、并行度等)最佳,分析有理有据,优化点全面DeepSeek⭐⭐⭐⭐。
2025-02-20 12:01:43
1170
1
原创 Oracle CDB自动处理表空间不足脚本
之前我曾经发过一个自动处理表空间的脚本,可以通过定时任务自动处理表空间不足的问题;但是之前那个脚本没有涵盖CDB模式下的PDB,这里将脚本做了一下更新,可以处理CDB模式下多PDB的表空间问题。比如有多个PDB可以一个脚本搞定,设置定时任务就可以自动处理表空间问题,无需人工介入。如果达到阈值添加了数据文件则发送邮件告警。传统模式的脚本请参考这个链接。表空间问题引起的问题请看如下。
2025-02-07 16:47:11
582
原创 oracle 19C RAC打补丁到19.26
oracle 19CRAC打补丁到19.26本文只保留简介命令和每个命令大概的用时,方便大家直接copy使用,并了解每个命令的预期时间,减少命令执行期的等待焦虑。
2025-01-27 10:11:58
3104
3
原创 Oracle DG备库数据文件损坏修复方法(ORA-01578/ORA-01110)
今天负责报表的同事反馈在DG库查询时出现如下报错可以看到报错是数据文件损坏,提示了file id和block id在 Oracle Data Guard 环境中,如果出现坏块,而主库正常,如何来修复呢?这里假设备库是模式。如果是逻辑备库则如下的方法1/2不适用。
2025-01-03 14:41:31
1550
原创 Oracle 11G还有新BUG?ORACLE 表空间迷案!
前段时间遇到一个奇葩的问题,在开了SR和oracle support追踪两周以后才算是有了不算完美的结果,在这里整理出来给大家分享。
2024-12-27 14:11:08
1296
原创 Oracle12C登录卡顿问题
昨天一个微信上的朋友找我帮忙看一个登录问题,如下是他的问题描述在他们沟通排除了网络问题后,开始看做进一步的问题排查。
2024-12-26 16:47:14
636
原创 一文了解Oracle数据库如何连接(2)
特性PRCP客户端池和 DRCP客户端池和 PRCP应用风格需要应用代码显式调用 session get/release需要多线程编程需要多线程编程编程模型任意需要多线程编程需要多线程客户端优点在数据库之外进行池化允许多个应用程序使用会话池共享较少数量的数据库会话允许多个应用程序使用会话池共享较少数量的数据库会话,并在数据库之外进行池化缺点额外的网络跳转需要多线程编程;数据库资源用于池化需要多线程客户端;额外的网络跳转部署注意事项单线程应用的 DRCP 替代方案。
2024-12-25 16:30:46
1000
原创 一文了解Oracle数据库如何连接(1)
让我们从一些定义开始,这些定义有助于解释池化过程中发生的事情。首先,我们讨论数据库层中进程和内存的使用。然后,我们解释会话的概念,这是本文的核心内容。接着,我们探讨应用程序端如何连接到数据库。
2024-12-24 14:38:19
1216
原创 Oracle RAC最佳实践-优化私网连接
私网连接性能直接影响集群的整体效率,尤其是在全局缓存(GC,Global Cache)操作中,如果通信延迟或带宽不足,会导致等待事件增多,进而影响数据库性能。在ORACLE RAC最佳实践中 私网络建议配置 Jumbo Frame(也就是设置网卡的 MTU 为 9000,默认为1500),可以极大的减少心跳网络上的包重组。,以避免网络不兼容问题。因此,在使用较低或默认的 MTU 值时,消息会被分段得更加频繁,碎片化更严重,消息重组消耗更多的时间,从而带来RAC性能问题。或更小的帧,在端点之间进行传输。
2024-12-18 09:08:03
1516
原创 Oracle最佳实践-优化硬解析
前段时间参加oracle CAB,oracle高级服务部门做了一个数据库最佳实践的报告,其中就有一项就是解决未使用绑定变量但执行次数很多的SQL;对于一个数据库来说如果不知道该如何优化,那么最简单最有效的优化就是减少硬解析,当然这部分优化对于DBA来说推动起来会有些难度,毕竟修改代码需要开发和业务部分配合,但是相对来说优化的难度低(绑定变量),带来的收益高,这里来介绍一下如何优化硬解析。
2024-12-13 15:55:09
1514
原创 NBU备份常见报错 ERROR: access to the client was not allowed (59)
这个是一个NBU备份的常见报错,一般是因为配置文件只添加了master 主机名,没有配置media主机名引起的报错截图原因:客户端配置问题验证办法:Media服务端验证client的连接性修改bp.conf添加media服务器再次验证 可以抓取client的信息 即表示正常windows和Linux有不同,没有bp.conf文件是通过注册表来配置的注册表的路径如下安装好NBU的客户端后默认只会添加安装时填写的master服务器,而不会添加media服务器,这就需要配置时自行添加。
2024-12-03 17:15:36
742
原创 哪些参数仅CDB能修改?哪些参数PDB能修改?
昨天有位网友,问哪些参数是只能在CDB可以修改的,哪些参数是可以在PDB基本修改的?:内存管理涉及整个容器数据库(CDB)的资源分配的参数,PDB 不能独立管理内存相关资源。:控制数据库的内存分配或使用的参数,需要在 CDB 层面统一管理,确保全局一致性。:用于优化性能的参数,由于可能影响整个 CDB,因此只能在 CDB 修改。:与数据文件、日志文件、控制文件相关的参数,定义存储路径和管理方式。:与数据库的功能特性相关的参数,一般只能在 CDB 层级修改。
2024-11-22 13:41:20
1047
原创 查询DBA_FREE_SPACE缓慢问题
这个是一个常见的问题,理论上应该也算是一个bug,在oracle10g,到19c,我都曾经遇到过;今天在给两套新建的19C RAC添加监控脚本时,又发现了这个问题,在这里记录一下。
2024-11-13 16:56:52
1170
1
原创 AI助力智能运维!在Linux主机上实现和chatgpt对话
如果点子比较好,我会优先来实现!- **自动化脚本**:编写和使用 Ansible、Puppet、Chef 等运维自动化工具,自动化完成日常运维任务(如部署、配置、补丁管理)。- **智能告警**:引入机器学习算法分析历史数据和当前监控数据,减少误报和漏报,并实现告警的智能化分级处理。- **可视化**:使用 Grafana 等工具,将分析结果进行可视化展示,帮助运维人员做出数据驱动的决策。1. **增加撤销段大小**:增加撤销表空间的大小或增加撤销段的数量,使得撤销段能保留更长时间的旧数据。
2024-11-11 17:07:17
1241
原创 如何一键完成20个Oracle实例运维脚本部署
在没有商业的集中管理平台的情况下,如何快速的部署监控或者运维脚本,是一个值得探讨的问题,这里博主以一个简单的示例来演示如何快速一次性给20个实例部署运维脚本。这台部署服务器要和所有数据库实例网络通,ssh端口通,我这里选择了EMCC服务器,为了管理实例EMCC服务器已经和所有数据库实例打通了网络。是一个用于在命令行中非交互式提供 SSH 密码的工具,特别适合自动化脚本。这里只是一个范例,如果脚本需要定制化修改,也可以通过抓取主机上的信息来自动修改脚本实现批量部署,希望能帮助到大家。到目标主机检查部署情况。
2024-10-31 16:05:09
1093
CDB架构、pdb资源管理、pdb克隆、pdb快照 应用容器等
2023-07-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅