杨建荣的学习笔记

每天坚持一点点,个人微信公众号 jianrong-notes

  • 博客访问: 11931632
  • 博文数量: 1203
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-14 23:24
  • 认证徽章:
个人简介

每日发文,或技术、或总结,偶有日间小事也以为记,谓之学习笔记,成年累月1100多天,中间几乎没有间断,要旨只有一个:学习交流,共同进步 。 学习笔记精华整理,个人新书《Oracle DBA工作笔记》已开售,在京东,当当,亚马逊,淘宝,天猫均有售,欢迎选购。

ITPUB论坛APP

ITPUB论坛APP



APP发帖 享双倍积分

文章分类

全部博文(1203)

文章存档

2017年(135)

2016年(358)

2015年(360)

2014年(278)

2013年(48)

2012年(21)

微信关注

IT168企业级官微



微信号:IT168qiye



系统架构师大会



微信号:SACC2013

订阅
热词专题

发布时间:2014-10-31 17:08:47

对于awr,里面涵盖的内容比较杂,有时候看报告的时候总是不知道该怎么下手。时间长了,可能会有一些阅读习惯或者心得。今天在看大师chris lawson的一篇博文对于awr的一些心得(http://www.oraclemagician.com/white_papers/10awr.pdf ),还是蛮有收获,赶紧按照这个方子来细细品味一番。首先是查看等待事件,这个也是.........【阅读全文】

阅读(7319) | 评论(0) | 转发(3)

发布时间:2014-10-30 19:21:32

exp算是一个经典的数据导出工具了。对于小数量的表来说,个人还是比较钟爱exp。毕竟expdp还需要配置directory而且还在服务端。exp在数据量小的情况下速度还是很理想的。关于exp导出的这个问题,已经拖了很久了,自己也排查了各种方法。通过查看wait event,查看exp的debug日志,都没有得出一些很有说服力的内容,今天下定.........【阅读全文】

阅读(50638) | 评论(0) | 转发(1)

发布时间:2014-10-29 18:17:57

这个案例发生有段时间了,但是今天无意中看到当时的邮件,感觉还是收益匪浅,看来还是细节决定成败啊。从一些日志或trace 文件中的警告信息中我们可以发掘出潜在的问题。当时系统中的用户数很小,所以每天都能抽时间看看日志记录,看有没有明显的问题。结果在grep的时候发现trace文件中有一些警告记录。当时的库是10gR2的库.........【阅读全文】

阅读(11435) | 评论(0) | 转发(4)

发布时间:2014-10-28 18:33:10

陆陆续续写了九篇关于生产环境sql语句的调优案例,发现了不少问题,可能有些问题回头来看是比较低级的错误,稍加改动就能够运行在秒级,有些可能是在秒级到毫秒级的小步提升等等,不管调优的改进多大,从dba的角度来看,好多问题都是基于资源来调优的,比如添加索引,降低IO,降低CPU消耗,提高CPU利用率等等。如果有时候从.........【阅读全文】

阅读(8582) | 评论(0) | 转发(3)

发布时间:2014-10-27 17:27:31

今天在做一个问题排查的时候碰到了另外一个有些“奇怪的”问题。我们在测试库中已经禁用了SGA自动存储管理,结果在spfile文件里丢掉了shared_pool_size的配置测试环境的参数类似下面的样子sga_max_size                         big integer 1200Msga_targ.........【阅读全文】

阅读(7190) | 评论(0) | 转发(2)

发布时间:2014-10-26 23:15:13

在sql解析器中,在生成执行计划的时候,会在多个执行计划中选择最优的计划,在这个过程中,查询转换就是一个很重要的过程。虽然最终的执行结果没有变化,但是从优化器的角度来看,查询转换的结果会更好。大体来说查询转换有以下几种类型。视图合并子查询解嵌套谓词推进物化视图查询重写比如select *from emp whe.........【阅读全文】

阅读(7469) | 评论(0) | 转发(2)

发布时间:2014-10-25 23:24:29

今天和大家简单分享几个实用的sql小技巧。还有一些还在整理中,会不断的分享出来。有些其实也不算是sql的技巧,可能大家在写sql语句的时候没有意识到我们可以通过一条sql语句实现一些貌似复杂的功能。首先来创建测试用表。create table test_obj as select *from dba_objects;先随机抽出5条记录看看set linesize.........【阅读全文】

阅读(7390) | 评论(0) | 转发(2)

发布时间:2014-10-24 19:29:22

在之前的章节中讨论了关于修改表分区的一些准备工作和操作细则,这个问题的来由有必要说一下。通过分区键值发现性能问题   http://blog.itpub.net/23718752/viewspace-1263068/当时是在做数据迁移的时候发现了一些表,导入数据比较慢,尽管做了分区的并行切分,速度还是很慢,最后查看数据的分布时,发现90%左右的数.........【阅读全文】

阅读(5376) | 评论(0) | 转发(2)

发布时间:2014-10-23 19:37:01

生产环境中有一些sql语句是不定时炸弹,不声不响的运行着,可能相关的表很大,运行时间达数小时。上周在生产环境中发现一条sql语句,运行时间几乎是按照天来计算的。看到这种sql语句,就希望能够马上能够找到立竿见影的效果,不过欲速则不达,需要做不少工作。一定要反复验证可行。sql语句的运行情况如下:SQL Execution .........【阅读全文】

阅读(11844) | 评论(7) | 转发(2)

发布时间:2014-10-22 22:41:00

ash是在10g以来一个很有用的特性,能够作为awr的补充,对于排查一些历史的问题能够提供更加详细和针对性的数据。当然个人在使用ash的时候感觉最慢的地方就是在于输入时间戳了,每次输入侧时候都得一边看着样例,一边按照格式,一份ash的报告,至少20%以上的时间耗在这个时间戳上了。有时候想查看几个时间点的数据,如果精.........【阅读全文】

阅读(9432) | 评论(1) | 转发(3)

发布时间:2014-10-21 23:25:00

大家在做性能问题诊断的时候,awr是不可或缺的工具,使用?/rdbms/admin/awrrpt.sql可能大家使用的多了,可能有时候感觉输入参数还是有些太繁琐了。一边复制,一边得到一个快照列表查看,其实还是不太方便。比如我想查看某一天的8点到9点的快照,生成一个awr报告,那么可能得算一下大概需要多少天的快照,然后从一个冗长的快.........【阅读全文】

阅读(8533) | 评论(2) | 转发(6)

发布时间:2014-10-20 18:12:44

早上来到公司,照例进行了简单的检查,发现系统负载不高,就开始计划一些sql tuning的工作,但是过了一会,在通过shell命令查找一些sql信息的时候,发现系统的反应有些慢,当时也没在意,当我查看v$session都开始慢的时候,感觉哪里出了什么问题了,最直观的感受就是一些命令的运行都很缓慢了。首先查看了一下数据库的负载.........【阅读全文】

阅读(10292) | 评论(2) | 转发(3)

发布时间:2014-10-19 22:43:18

在第一篇中介绍了关于纯文本和特殊字符在正则表达式中的应用,来看看其它的一些相关的点。--关于锚定锚定就跟大家在开发网页的时候使用的锚定是一个意思,其实就是给一段字符做个标识。对于行首使用是^,对于行尾使用时$,可能大家并不陌生。锁定在行首$ echo "The book store" |sed -n '/^book/p'   &.........【阅读全文】

阅读(6931) | 评论(0) | 转发(2)

发布时间:2014-10-18 23:11:04

正则表达式在编程语言中,数据库中,linux中都有着广泛的应用,一说起正则表达式就有些高深晦涩的味道,正则表达式精炼而重要,在Linux中有着举足轻重的作用,也是学好sed,awk的一个基本门槛。正则表达式是基于正则表达式引擎来实现的,引擎主要有以下两类。可能大家对这个比较陌生。POSIX基本正则表达式引擎  BREP.........【阅读全文】

阅读(6990) | 评论(0) | 转发(2)

发布时间:2014-10-17 23:29:50

在开始学习数据库的时候,总是尝试手动创建数据库,安装完成之后需要运行一些脚本,总是看到屏幕上闪个不停,可以看到大多数的存储过程代码都是一堆乱码,最开始还以为是乱码了。:)有时候心血来潮想看看里面的代码,但是基本上都是看到存储过程名或者函数名,再细节的代码都被屏蔽掉了。大家在运行awr,ash的时候,也看.........【阅读全文】

阅读(7135) | 评论(0) | 转发(4)

发布时间:2014-10-16 23:46:13

在java中,有方法重写,方法重载,重载的一个典型例子就是类中的构造函数,可以根据自己的需求定义多个构造函数,默认是一个无参数的空函数。重写是基于父类子类之间的多态性体现上,父类的一个方法,在子类中可以重写.oracle中也可以有重载的实现。自己在总结的时候归纳了一下两种。一种是通过包来实现,一种是通过pl/s.........【阅读全文】

阅读(5388) | 评论(0) | 转发(2)

发布时间:2014-10-15 18:55:45

在之前的博文中,讨论过一个根据分区键值发现性能问题的案例。90%以上的数据都分布在了一个分区上,其它的分区要么没有数据要么数据很少,这是很明显的分区问题。当然这个过程中也发现了分区的划分从开发角度和数据角度还是存在很大的差别,导致了分区的问题。通过分区键值发现性能问题 http://blog.itpub.net/237187.........【阅读全文】

阅读(41312) | 评论(2) | 转发(3)

发布时间:2014-10-14 17:35:40

有时候开发人员写sql语句的时候,接触的性能问题越多,可能对sql语句的结构,性能考虑会多一些,这也是一件好事,不过如果考虑不当,本来原本想做的的一些优化却使得问题变得更加严重。在生产环境中我们对指定的客户端都有一定的监控,在下午的时候发现一个sql语句执行的时间太长了,抓到语句,一看倒不复杂,是一个开发人员.........【阅读全文】

阅读(5031) | 评论(0) | 转发(2)

发布时间:2014-10-13 17:36:13

生产环境中的sql语句执行时间是很关键的性能指标,如果某个sql语句执行几个小时,优化以后几分钟,几十秒的话。会有很大的成就感,同时如果某个sql语句执行10秒,能够优化到1秒,感觉提升的幅度不是很大,但是如果这条语句执行极为频繁的话,那这种调优还是更有成就感的。执行时间是sql调优的一把标尺,但是同时也需要考虑到.........【阅读全文】

阅读(7883) | 评论(0) | 转发(2)

发布时间:2014-10-12 23:40:22

vmstat一直以来就是linux/unix中进行性能监控的利器,相比top来说它的监控更加系统级,更侧重于系统整体的情况。今天在学习vmstat的时候,突然想看看数据库中的并行对于系统级的影响到底有多紧密,自己简单测试了一下。首先来看看vmstat的命令的解释。可能大家并不陌生,如果需要每隔2秒,生成3次报告,可以使用vmstat 2.........【阅读全文】

阅读(11767) | 评论(8) | 转发(10)
给主人留下些什么吧!~~

dsktt2016-12-30 10:56

lhrbest:建荣博客写了4年了,佩服,我们都是12年申请的,我14年7月开始写,你12年7月开始写

你们都是我佩服的!

回复  |  举报

lhrbest2016-07-09 23:31

建荣博客写了4年了,佩服,我们都是12年申请的,我14年7月开始写,你12年7月开始写

回复  |  举报

jeanron1002015-09-01 10:49

berlits:可怜,公司所有数据都不允许带出办公室。回家发,只能重新写了。

你们确实太严格了,说明你的工作是高危,高机密的工作。

回复  |  举报

berlits2015-09-01 00:20

jeanron100:这个还是可以有的,整理个思路,回家发

可怜,公司所有数据都不允许带出办公室。回家发,只能重新写了。

回复  |  举报

jeanron1002015-08-31 09:28

berlits:公司不让上网,想发都没条件。

这个还是可以有的,整理个思路,回家发

回复  |  举报
留言热议
请登录后留言。

登录 注册