李阳和他的疯狂英语
今天在翻看之前在人人网中的日志时,发现一篇关于的文章引起了我的注意,我觉得还是有必要和大家分享下的,这篇文章算是一个私人评论,来源是出自eygle的一篇转载。http://www.eygle.com/digest/2011/07/crazy_english.html#comments时过境迁,在几年后再来看时,竟然发现还是保留了...
对一道if-else相关的程序题的简单分析
今天同事在微信群里提出了一个问题,看似是一个面试题。大体的意思就是补充下面if条件使得输出 Hello Worldif(){System.out.print("Hello");}else{System.out.println(" world");}乍一看这个题目就是类似脑筋急转弯之类的问题。一看就不可能实现,本来if-else之类的逻辑处理就会占据很多...
持续近7个小时的索引扫描的查询优化分析
昨天客户的DBA反映有一个数据抽取的任务持续了很长时间最后超时退出了,让我看看有什么地方可以调优一下。找到了对应的日志,发现在一个大表抽取的时候,抽取持续了将近7个小时,最后超时退出了。对于这个问题,有以下几个方面需要考虑一下。1)为什么这个问题之前没有发现过2)是否是由某些变化导致了这个问题3)这个...
生活琐事随感
生活中总是会有各种各样的琐事,看起来不是很起眼的事情但是细细琢磨起来还是有点意思的,有些是感慨,有些是反思,有些则是无奈。这些都来源于生活,有时候自己就有意无意的记下来,时间长了,肯定记不住,但是某一天想来看看还是蛮有意思的。发现自己也是一个很注意观察生活的人哦。-->机场的免费充电台 周末的...
关于提问的一些建议
今天看到一个网友的提问,在晚上分析了问题之后还是有一些感慨的。网友的问题做move tablespace的操作时,报了类似下面的错误。alter table a move to users *ERROR at line 1:ORA-14133: ALTER TABLE MOVE cannot be combined with other opera...
简单对比MySQL和Oracle中的一个sql解析细节
SQL的语法解析器是一个很强大的内置工具集,里面会涉及到很多的编译原理的相关知识,语法分析,词法分析。。一大堆看起来很理论的东东,不过看起来枯燥之余,它们的价值也更加明显。借用一下网络中的原话:如果我们考究一下历史,就会发现很多被称为程序设计大师的人都是编译领域的高手.写出第一个微型机上运行的Basic语言...
关于Oracle和MySQL中的无密码登录
无密码登录在一定程度上能够简化流程,对于密码敏感,但是又需要提供访问权限的情况下是一个不错的选择。尤其是在乙方在做一些操作的时候,要密码和给密码是一个纠结的问题。不给没法工作,给了又对信息安全又影响。在Oracle和MySQL中都有相应的解决方案,大道至简,这个功能的目的都是类似的。在Oracle中可以通过设置wal...
快速定位隐蔽的sql性能问题及调优
在前几天,有个开发同事问我一个问题,其实也算是技术救援,他说在有个job数据处理的频率比较高,在测试环境中很难定位出在哪有问题,而且速度也还能接受,但是在生产环境中总是会慢一些,希望我能在测试环境中协助他们,看看是不是sql语句出什么问题了还是其它相关的问题。这种类似实时监控的语句,从第一印象来说,很可...
关于统计信息过期的性能落差
今天客户反馈某一个应用部署补丁的时候,执行了一个脚本一个多小时还没有执行完。语句是下面这样的形式。insert into em1_rater_00068_01 (select * from em1_rater_00050_01_backup a where a.record_id
系统级alias vs Oracle ADR功能
Oracle在11g中推出的新特性ADR,即Automatic Diagnostic Repository个人理解这个工具就是能够高效的把一些日志文件轻松管理起来。比如查看数据库alert日志就不必麻烦去到对应的路径下去找一圈,直接使用show alert即可,比如查看现在数据库中出现了哪些错误,直接通过show problem命令即可。命令的使用也很方便。直接输入a...
关于收缩数据文件的尝试
在数据库中对于数据文件都是提前规划,不够就加的情况,很少会留意到其实有些数据文件那么大,其实条件允许也是可以收缩收缩的。这种情况在本地测试环境中尤为突出,本来就用虚拟机跑个数据库,硬盘空间就够紧张,几十M几百M都是空间,都得“兆兆”计较。今天在做dataguard的练习的时候,发现主库中的数据文件有些大,差...
搭建dataguard碰到的几个小问题
今天在搭建dataguard环境的时候,发现操作还是生疏了,环境也被反反复复折腾了好久,也碰到了一些小问题,总结一下。第一个问题是使用sys账户登录rman的时候总是报错。比如密码是oracle ,使用sqlplus登录的时候总是报错。>sqlplus sys/oracle@test11g as sysdbaERROR:ORA-01031: insufficient privileges这个问题的思...
MySQL OCP考试记
自从有幸参加了Oracle Young Expert项目之后,按照组织福利,送了一张券可以参加Oracle的任一考试(OCM考试除外),考试券价值在1000元人民币,还算是比较实惠的,最后选择了MySQL的考试想挑战一下,终于在今天侥幸通过后,可以稍作放松,准备好好复习整理一下,不能让考试认证成为paper认证。考完之后...
通过Oracle来辅助MySQL数据问题的恢复
今天琢磨一个问题,在平时的工作中如果碰到一些不规范的操作,drop,truncate,delete,恢复起来还是很困难的,drop操作在oracle中如果开启了recycle bin还是基本安全的,delete操作可以借助flashback delete操作,可能有些更细微的操作update,insert等等操作导致了问题,需要做数据修复的时候,这个时候可以使用flashback q...
使用strace诊断奇怪的sqlplus登录问题
今天刚到公司,印度同事就开始急忙找我,说客户有一个环境sqlplus连不上了。我第一反应是数据库是不是停了,连接资源满了等等,赶紧查收邮件,看到报错信息还是比较生疏的。>sqlplus CHIDB7/xxxx@TDB1SQL*Plus:Release 11.2.0.3.0 Production on Thu May 7 09:31:19 2015Copyright(c) 1982, 2011, Oracle.&nb...
深度解析dba_segments和sys.seg$中的细节差异(下)
继续昨天的内容 http://blog.itpub.net/23718752/viewspace-1624762/我们已经根据dba_segments和sys.seg$的不同发现最后的差距有2T左右,已经定位到了dba_segments的一些细节信息,可以发现其实还是一个层级的调用关系。我们把SYS_DBA_SEGS是一个处于中间层的角色,它的定义是3个union all,可以从定义中看到,差别...
深度解析dba_segments和sys.seg$中的细节差异(上)
今天在查看系统空间使用情况的时候,发现一个细节的问题,自己死磕了一把,还是发现了不少有价值的东西。事情的起因是我在使用脚本在某个环境中查看每个用户所占有的空间的时候,如果发现有些临时用户占用的空间过大,就需要协调开发去做一些清理,但是这次用户占用的空间表空间使用情况有很大的差异。查看用户占用空间的...
浅谈事务(一)
关于事务,在Oracle中似乎是习以为常的,但是在学习MySQL的过程中,发现各种灵活的存储引擎,一个很大的焦点就是对于事务的支持,足以看出事务的实现还是有一定难度的,自己在学习数据库理论和Oracle的时候,对于事务的特性也都是一笔带过,ACID似乎就是书本中的概念和术语,感觉太偏向理论了,但是今天在学习看书中,也借...
由MySQL中的falcon存储引擎引申的八卦杂谈
今天在看这本书时 ,看到大师paul Dubois对于Falcon存储引擎的介绍,这是一种用来进行事务处理的存储引擎。在设计时增加了一些自我优化和免维护的功能,描述总体感觉和InnoDB很相似,不过整本书中讲解存储引擎的篇幅基本还是MyISAM和InnoDB为主。所以对Falcon产生了好奇,网络中对于Falcon的大体描述如下...
数据补丁中需要注意的几个问题
今天来感慨一下在工作中碰到的几处数据补丁问题,当然这些细节都是流程之外的控制和规范了,但是也或多或少出现了不少的问题,有些让人纠结,有些让人抓狂,有些让人无奈,但是不管怎么样,数据补丁是修复数据,完善业务的,DBA在这个关键时候就不能麻痹大意,把好这个关口还是很重要的。让人吐血的dump文件这是个真实的...