Category Archives: Oracle

如何快速获取AWR中涉及到的表

最近遇到一个很少见的需求,是关于应用测试方面的。 具体来说,这个应用的测试需求要基于一个固定的时间点数据,而且只能测试一轮,再测试就需要还原到测试前状态。 因为我们使用的存储是分层的(热数据在Flash上,冷数据在传统机械盘),但因为每次测试都需要将数据库闪回还原到固定时间点,效果不佳,所以需要尽可能的预热测试涉及的对象。 方法也很简单,尽可能将所有使用到的相关对象提前全扫下,将其预热。 而相关对象,最佳方式是应用直接提供,这样最准确;但是各种原因,应用无法提供,那么DB层面观察,从测试期间的AWR获取,可以有不同维度: 1.精确找到所有I/O慢的TOP SQL,收集相关表进行预热 2.尽可能找更多AWR中的SQL,收集相关表进行预热 如果是第一种方式,需要人工去定位,SQL数量会很少的几条。 如果是第二种方式,会列出大量SQL,但工作量很大。 那有什么简单的方式吗? AWR本质就是文本内容,我们可以依据通常出现在表名前的关键字来定位。同样是有多种维度,比如SELECT语句表名前会有FROM关键字。 通过Shell列出: grep -o -i ‘\bFROM\s\+\(\w\+\)’ awr.html | sort -u 上面会把所有from关键字及之后的名字列出,然后再人为过滤下不是表的行,好为预热脚本做准备。 这个命令将使用 grep 工具, -o 表示只输出匹配的部分 -i 表示不区分大小写 \b 表示单词边界 FROM 表示匹配 FROM 关键字 \s+ 表示一个或多个空白字符 (\w+) 表示一个或多个字母数字字符(表名或视图名) sort … Continue reading

Posted in Oracle性能优化 | Tagged | Comments Off on 如何快速获取AWR中涉及到的表

如何计算DG环境下Redo传输所需的带宽?

MOS有篇文章:
How To Calculate The Required Network Bandwidth Transfer Of Redo In Data Guard Environments (Doc ID 736755.1)
还提供了一个参考公式 Continue reading

Posted in Oracle最佳实践 | Tagged | Comments Off on 如何计算DG环境下Redo传输所需的带宽?

部署19c ADG过程中的问题处理

回忆起来也是有些年没亲自动手搭建ADG了,今天正好有个机会重温,客户环境是19.16,恍惚记得上一次搭ADG还是在11.2.0.4的时代,时光荏苒啊。正好看下19c的ADG和11g的ADG在部署方面有啥不同? Continue reading

Posted in Oracle安装部署 | Tagged | Comments Off on 部署19c ADG过程中的问题处理

Oracle多租户架构之如何快速创建一个PDB

Oracle自从12c版本开始引入多租户的架构,整个管理理念也发生了很大的变化。
比如之前再小的业务只要选择了Oracle,DBA都会选择新建一套独立的数据库,因为传统的架构只能在schema级别作区分,而schema级别有很多问题,隔离不彻底,且最常见的就是出现同名的情况,而如今有了多租户架构之后,一切都已经变得简单起来.. Continue reading

Posted in Oracle体系原理 | Tagged , | Comments Off on Oracle多租户架构之如何快速创建一个PDB

关于Oracle多租户架构下的每个PDB的dbtime查询

有客户咨询在19c多租户这样的架构中,除了查询cdb本身外,还想查询具体pdb的负载(DB Time),但是使用之前的脚本发现查询不到,只显示cdb自己的结果.. Continue reading

Posted in Oracle体系原理 | Tagged , , , , | Comments Off on 关于Oracle多租户架构下的每个PDB的dbtime查询

小知识:安装系统后唯独搜不到自己的Wi-Fi

遇到的问题,笔记本在安装Win10系统后在可用Wi-Fi热点中唯独搜不到自己的Wi-Fi… Continue reading

Posted in Oracle | Comments Off on 小知识:安装系统后唯独搜不到自己的Wi-Fi

关于SUPPLEMENTAL_LOG_DATA_MIN的设置问题

Oracle数据库开启附加日志,用于Logminer或基于Logminer的一些操作。
客户咨询关于开启附加日志,SUPPLEMENTAL_LOG_DATA_MIN显示为啥是implicit,如何改成yes呢? Continue reading

Posted in Oracle日常运维 | Tagged | 1 Comment

12c/19c新特性官方文档快速参考

工作中会经常遇到被询问Oracle某一个新特性,是在哪个版本开始引入,通常都去查官方文档New Features部分章节,下面列出从12.1.0.1 到 19c的对应在线官方文档的链接,方便快速检索 Continue reading

Posted in New Features | Tagged , | Comments Off on 12c/19c新特性官方文档快速参考

小知识:enable_ddl_logging参数的设置和日志位置变化

业务部门需求,要协助客户DBA查truncate操作历史执行情况。
首先确认数据库已开启enable_ddl_logging, 然后从alert中查找没有记录.. Continue reading

Posted in Oracle日常运维 | Tagged | Comments Off on 小知识:enable_ddl_logging参数的设置和日志位置变化

小知识:RMAN基于某个具体时间点的恢复示例

最近帮忙基于某个时间点恢复一个库,说是备份和归档是全的。
好多年没做过这类事情了,不过这算是最基本的DBA技能,下面给出RMAN基于某个具体时间点的恢复示例脚本: Continue reading

Posted in Oracle备份恢复 | Tagged , | Comments Off on 小知识:RMAN基于某个具体时间点的恢复示例