熟悉oracle数据库性能优化,rman备份,数据库恢复技术.
[20130718]数据库表结构设计的小问题.txt感觉很久没有写blog,最近一段时间,忙着安装12c,oracle变化实在太快,许多东西没搞懂,新的东西就出来了。
[20130709]从进程号找到IP地址.txt今天有人问如果在linux下top显示某个进程CPU很忙,如果从spid找到对应的IP地址。实际上不过是一个反推的过程,一些图形化工具很容易知道termnial,machine,从这些获得IP地址还是需要一点功夫的。
[20130708]传输表空间与data_object_id.txt传输表空间与scn.txt:http://space.itpub.net/267265/viewspace-750140初学者经常搞混视图dba_objects中object_id和data_object_id,一般建立表两者是相等的,容易混淆。
[20130705]gettimeofday() 系统调用.txt链接:http://space.itpub.net/267265/viewspace-755535今天本来想看看GETTIMEOFDAY,发现一个链接:http://www.scaleabilities.co.uk/2012/12/18/who-stole-gettimeofday-from-oracle-straces/自己找一台安装centos 6.2的系统做了测试。
[20130701]db link与事务.txt昨天帮别人修复数据库,安全起见,我先启动read only模式,叫他们检查一些相关数据是否正常,但是在程序界面上出现:ORA-16000: database open for read-only access。
[20130628]关于cursor pin S以及cursor pin S wait on X的相关问题.txt生产系统最近一段时间总是出现cursor pin S wait on X,以前从来没有遇到,今天抽空看了一下.
[20130628]sql语句显示不全的问题.txt 今天在优化一条sql语句的时候遇到一个怪问题,sql语句显示有问题,仔细查看才想起来以前看itpub的一本书上讲过,老杨遇到的问题,语句里面仅仅含有0d(十六进制)编码,自己为了加深印象,做一个测试例子:SQ...
[20130626]11GR2 SQL Tuning Advisor.txt11GR2加入了sql tuning advisor,缺省是打开的,我发现一些dba建议安装11G后,直接关闭它,好像因为消耗资源.
[20130622]Creating Test Scripts With Bind Variables.txt我们程序需要大量优化,而程序没有存在大量使用非绑定变量,我修改了回话参数cursor_sharing=force,这样要优化这些语句非常麻烦,一些参数要通过视图获取v$sql_bind_capture.
[20130618]改变dbid.txt_just play!.txt参考链接:http://www.pythian.com/blog/how-to-choose-your-oracle-database-id-dbid/修改数据库的dbid,一般可以选择nid工具,或者alter database open resetlogs打开.
[20130618]imp(impdp)以及lob的导入问题.txt前几天要建立一个测试库,数据库很小50G,我想导入这么数据库exp/imp应该很快完成,结果我发现大约花了8个多小时.
[20130614]linux下删除数据文件的恢复的一些细节问题.txt前天看了链接:http://space.itpub.net/26015009/viewspace-763506我仅仅做一些测试以及补充,以及注意的细节问题,实际上最好的方法依旧是使用rman备份恢复.
[20130610]褆与竖线分隔符.txt前几天生产系统系统遇到的一个问题,就是上传数据到医保中心时,总有一条记录总是报传入参数数量不对.传入的内容按照|来分割.我仔细检查发现传入的参数数量正确,数据类型也正确,为什么还是报这个错误.
[20130609]ORA_HASH and LOBs.txthttp://connormcdonald.wordpress.com/2013/03/29/ora_hash-and-lobs-not-nice-partners/参考以上链接,重复测试:creat...
[20130607]PL/SQL存储过程的commit提交问题.txt昨天在看别人写的存储过程的时候,发现程序代码里面不好的写法,就是把commit写在循环体内,这样写按照以前应该会产生很大的redo日志,主要是redo waste也会增加,但是我在11G下测试,情况好像不一样.
[20130607]行迁移与ALTER TABLE MINIMIZE RECORDS_PER_BLOCK.txt前一阵子,在ITPUB上讨论避免行迁移的方法.想到ALTER TABLE MINIMIZE RECORDS_PER_BLOCK.当数据行发生大量的行迁移(migrate)时,对其访问将会造成 I/O 性能降低,因为Oracle为获取这些数据行的数据时,必须访问更多的数据块(data block)。
[20130606]11G的表以及表空间的只读.txt1.只读表:SQL> @verBANNER--------------------------------------------------------------------------------Oracle Database 11g Enterprise Edition Release 11.
[20130603]dbms_space.object_growth_trend.txt10G开始dbms_space.object_growth_trend包,来显示和预计每个段的增长情况.
[20130530]OS block header破坏以及恢复.txtoracle文件的第一个块(block 0)是OS block header,在数据库中查询不到信息,记录的是OS信息,以及文件大小的等信息:如果损坏,应该对数据文件影响大吗? 自己做一个测试看看.
[20130529] dbms_stats.report_col_usage.txt11G下dbms_stats包增加了report_col_usage函数,我曾经写过两篇blog.
[20130528]dbms_stats.gather_table_stats的method_opt.txt同事想删除某个表的直方图信息,结果老是删除不掉.问我,我看了一下,马上明白使用参数错误,他使用的是method_opt=>'for columns size 1'.
[20130528]tnsnames.ora的格式问题.txt--注:为了blog的显示问题,空格使用下划线.40X =(DESCRIPTION =_(ADDRESS_LIST =_(ADDRESS = (PROTOCOL = TCP)(HOST = 192.
[20130527]估计redo文件的大小.txt oracle一般建议20-30分钟切换一次redo文件.简单的查询计算如下:参考链接:http://www.
[20130524]11G的Deferred segment creation的问题.txt11G的Deferred segment creation是一个非常好的特性,有这个特性也产生一些问题.
[20130522]service以及一些falover的测试.txt以前我记得我第一次安装rac的时候,那个时候许多东西不懂,基本按照人家写的文档安装,其中的辛苦只有自己知道.
[20130520]统计那个对象生成的redo多.txthttp://timothyhopkins.net/2009/09/summarise-redo-by-object/如果统计那个对象生成的redo多,一直是我比较头疼的问题.
[20130513]给lob字段命名的问题.txt前几天同事建议把一些表移动到其他表空间,主要是增长太快.在测试时忘记移动lob字段,这样效果不大.我突然想能否lob字段命名一个好名字,这样看到这个字段就知道它属于这个表.
[20130513]Interval Partition的一些问题.txtInterval Partition管理是11G的新特性,简单了分区管理,本文简单探讨维护时遇到的问题.
[20130502]dbms_stats缺省参数.txt今天抽空看了dbms_stats缺省参数,我的测试环境是11G。column cascade format a30column degree format a10column estimate_p...
[20130502]rman的set nocfau表示什么.txt今天在论坛发贴问rman的set nocfau表示什么?http://www.itpub.net/thread-1784962-1-1.
今天使用vim编辑一个存储过程的时候,正好接听一个电话,不知道什么回事,点击X,选择“否”,导致将近半个小时的工作没有保存下 来。 我冷静下来,想起使用vim会在它的dir目录保存为"原来文件名.swp".我的vim设置如下: set dir=d:\\temp缺省如果不设置,保存在当前目录。
[20130425]删除分区与recycle bin.txthttp://mwidlake.wordpress.com/2012/01/24/dropped-partitions-do-not-go-in-the-recycle-bin/昨天别人删除一个分区,想恢复里面的信息。
[20130422]修改oracle监听端口.txt昨天朋友想尝试修改oracle的缺省监听端口,测试没有通过,而我在我的测试机器通过,通过对比监听文件,我发现其中的差异,问题出在动态注册以及静态注册的问题,把一些测试记录下来,便于理解动态以及静态注册监听的问题。
[20130416]seq命令.txt昨天看一些shell脚本,发现一个命令seq。自己以前从来没有使用过。$ rpm -qif `which seq`Name : coreutils Relocations: (not relocatable)Version : 5.
[20130415]数据泵与db link.txt数据泵是10g以后采用的新特性,按照一些介绍速度比exp/imp快。以前我总是成对的使用它,也就是先expdp导出数据,然后再传输到新的服务器,然后在impdp导入数据,这样的过程明显不是很快,特别是导出文件很大的情况下,速度并没有感觉快到哪里,如果数据泵加上db link,这样仅仅使用impdp导入就可以,省去了前面的步骤。
[20130412]rman备份文件大小.txt记得以前看rman的书,rman仅仅备份已经格式话的块,如果这样一个表被truncate后,即使空间回收了。但是在rman备份时,备份大小不会变化太多,这些前面使用的块一定会备份。
[20130411]timestamp数据类型与运算.txt昨天查看sql语句,发现程序员使用日期类型有问题,使用了timestamp数据类型。拿scott.emp表作为例子来说明:create index i_emp_hiredate on emp(hiredate) ;在hiredate上建立索引。
[20130410]v$sql_bind_capture和隐含参数_bind_capture_area_size.txt今天想优化一天sql语句,使用视图v$sql_bind_capture想取出里面的绑定变量。
[20130409]Data file init write等待事件.txt清明前几天帮别人解决数据库问题,就是高峰的时候有点慢。仔细看awr报表,除了发现几条sql语句没有建立索引外,发现等待事件里Data file init write。
[20130407]分区的段大小2.txt参看链接:http://hemantoracledba.blogspot.com/2013/03/segment-size-of-partition-11202-and.html自己重复它的测试,仅仅使用表空间名字与他不同吧了。
[20130402]分区的段大小.txt参看链接:http://hemantoracledba.blogspot.com/2013/03/segment-size-of-partition-11202-and.html自己重复它的测试,仅仅使用表空间名字与他不同吧了。
[20130328]dbms_stats.seed_col_usage的使用2.txt对昨天dbms_stats.seed_col_usage的使用做一些补充。SQL> exec dbms_stats.
[20130327]dbms_stats.seed_col_usage的使用.txthttp://blogs.oracle.com/optimizer/entry/how_do_i_know_what_extended_statistics_are_needed_for_a_given_workloadhttp://www.itpub.net/thread-1498587-1-1.htmloracle 11.2.0.2介绍了Auto Column Group Creation,自动确立在那些字段上建立extended statistics。
[20130325]KEEP_MASTER and METRICS in EXPDPIMDP.txt"KEEP_MASTER" and "METRICS"是两个未文档的参数。
[20130325]11GR2.0.3的sshUserSetup.sh文件.txt前几天在升级11GR2到11.2.0.3后,发现在database目录下有一个sshsetup目录,里面有一个sshUserSetup.sh执行程序。
[20130325]表Initrans的数量.txthttp://aprakash.wordpress.com/2010/12/18/oracle-tables-initrans/ SQL> @ver BANNER -----------------------...
[20130322]undo与set trace read only.txt闲着没事,研究一下undo与set trace read only.DML操作在UNDO中的信息通过Dump UNDO Block观察到DML操作记录在UNDO中的信息,主要为以下内容:1、对于Insert操作,需要在UNDO中记录插入行的ROWID.2、对于Update操作,需要在UNDO中记录被更新列的前镜像的值,同时也会记录被更新行的ROWID。
[20130312]undo与select for update.txt闲着没事,研究一下undo与select for update.DML操作在UNDO中的信息通过Dump UNDO Block观察到DML操作记录在UNDO中的信息,主要为以下内容:1、对于Insert操作,需要在UNDO中记录插入行的ROWID.2、对于Update操作,需要在UNDO中记录被更新列的前镜像的值,同时也会记录被更新行的ROWID。
[20130320]升级oracle 11.2.0.1到11.2.0.3.txt一直想升级自己的测试环境从oracle 11.2.0.1到11.2.0.3。我的使用版本是SQL> select * from v$version where rownumBANNE...
[20130319]一条sql语句的优化.txt生产系统,遇到这样一条语句:SELECT MAX (LENGTH (pe_id)) FROM pe_master_index WHERE SUBSTR (pe_id, 1, 2) = 'TJ';--真不知道开发人员如何想的,写出这样的语句.