自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 收藏
  • 关注

原创 perl map函数

perl map 函数perl 查看函数使用:perldoc -f mapmap BLOCK LIST 块和列表map EXPR,LIST 表达式和列表计算列表每个元素的BLOCK或者表达式(通常设置每个变量为$_),每个数组元素计算返回的值构成了新的结果集。在scalar环境下, 如果最终存储在数组中,则表示处理后为List.若返回存储在变量中,则返回元素

2014-10-31 22:33:04 835

原创 dump library cahce

SQL> select * from t where object_id=1060; OBJECT_ID OWNER---------- ------------------------------ 1060 SYSTEMSQL> alter system flush shared_pool;系统已更改。SQL> /系统已更改。SQL> oradebug s

2014-10-31 22:15:31 618

原创 MQ卸载

smitty uninstall Remove Installed SoftwareType or select values in entry fields. Press Enter AFTER making all desired changes.

2014-10-30 21:30:38 4963

原创 经典的标量子查询

explain plan for ( select 'C10927' as YXJGDM, --银行机构代码\ '20110213000003' as JRXKZH, --金融许可证号 a.SIGN_ORG as NBJGH, --内部机构号 case when substr(b.product_name,

2014-10-30 16:42:49 1458

原创 Perl 正则二

my $command="cd /tmp";print "\$command is $command:\n";my $newdir=(split /\s+/,"$command")[1]; ---取第2个元素print "\$newdir is $newdir:\n";[root@jhoa bin]# perl a1.pl $command is cd /tmp:$newdir

2014-10-30 14:54:52 569

原创 v$sql和v$sqlarea

SQL> SELECT substr(sql_text,1,30) ,sql_id,version_count, hash_value,address,last_active_child_address FROM v$sqlarea WHERE sql_id='c0gmkcy6fhjm7';SUBSTR(SQL_TEXT,1,30) SQL_ID

2014-10-30 12:03:10 597

原创 如何优化buffer_cache

如何优化buffer cache? 1) 调整buffer cache,可以参考Oracle advisory的建议。如果系统的资源使用极为紧张的时候,那么调整buffer cache 需要谨慎。 因为调大buffer cache可能会导致cpu使用的降低,当然也可能降低。 内存调大,比如会导致系统资源更多的 管理消耗。

2014-10-28 21:28:06 624

原创 perl 限制用户操作

use strict;use Switch;use Sys::Hostname;use File::Basename;my $host = hostname;my $prompt = "$host >";my @allow_command=( "/bin/cat", "/bin/date", "/bin/df", "/bin/dmesg", "/

2014-10-28 19:16:06 612

原创 perl 正则

1.$question="pleaseaa";if ($question =~ /please/) { print ("Thank you for being polite!\n"); } else { print ("That was not very polite!\n"); }

2014-10-28 18:53:40 451

原创 latch 为什么消耗CPU

为什么有时候系统CPU很高?主要是latch争用,拿不到latch会自旋,要消耗CPU

2014-10-27 22:08:24 548

原创 Oracle 写脏数据的不同场景

checkpoint会触发dbwr写脏块时是根据checkpoint queue来的,而LRU-W是负责dbwr的其他写出条件的触发。如下的情况下,会触发dbwr进程将脏块写出到disk: 1)当进程扫描LRU链表查找可用buffer(可用被覆盖的 buffer header)的时候,如果已经被扫描的buffer header的数量 超过_db_block_max_sc

2014-10-27 21:39:43 1459

原创 block放入哪个hash bucket算法

假设file 1 block 437,那么计算方式应该是这样:SQL&get; select mod(438,4) from dual;MOD(438,4)----------         2即使该block的信息会存在编号为2的bucket里面。

2014-10-27 20:45:38 589

原创 buffer cache原理

1. 理解cache buffer中几个关键性的概念 Oracle SGA的主要结构就是cache buffer,其通常会占据整个SGA的大部分内存,对于OLTP架构而言。 理解cache buffer之前,我们需要先理解其涉及的几个概念。 1) 链表(双向链表) 2) hash操作 3) bucket从图中我们可以看到,一个latch:cache buff

2014-10-26 22:19:24 594

原创 NULL值会影响SQL查询结果

SQL> delete from test10 where id is null;已删除 1 行。SQL> commit;提交完成。SQL> select * from (select /*+ index_desc(test10 test10_idx1) */ id from test10 where rownum < 2

2014-10-24 20:32:38 844

原创 索引和NULL值

索引和NULL值create table test10(id int,name char(10))beginfor i in 1 .. 100000loopinsert into test10 values(i,'a'||i);commit;end loop;end;create index test10_idx1 on test10(id);BEGIN DBMS

2014-10-24 19:16:17 552

原创 log file parallel write&&log buffer space

This wait event is used when waiting for the writes of redo records to the redo log filesto complete. The waits occur in log writer (LGWR) as part of normal activity of copyingrecords from the redo

2014-10-24 15:34:30 608

原创 perl 文件[四]

-e 文件是否存在-s 是否为空文件操作glob @a=glob("*.txt") 返回与模式匹配的所有文件目录。如果赋值给简单变量则一次只返回一个文件.参数可以是文件名或目录只能接受有限的文件数,报文件太多错误。用shell来执行的,因为用shell用来解释执行,故运行速度慢。另一种形式是@a=,是古老的用法,推荐用glob? 匹配单个字符* 任何数目的字

2014-10-23 15:11:58 664

原创 perl 文件[二]

错误输出函数与错误变量open() || die "error$!"; 成功时不执行die,失败时执行 (||或操作)die($errstr);向STDERR输出指示错误信息的串,然后退出程序。warn($errstr);向STDERR输出信息,不退出程序$! 最后一次错误的信息。与die,warn 结合使用。die($str)中$str中最后不是\n时,输出自动添加at程序

2014-10-23 15:10:17 575

原创 perl 文件[三]

命令行参数:<> 什么也不写是读入标准输入@ARGV:全局,$ARGV[0] 是第一个参数,不是程序名。<> 是对$ARGV的引用。@ARGV一旦赋值,原值丢失。1.第一次看到<>时,打开以$ARGV[0]中的文件。无参数则打开STDIN读,所以可以忽略2.shift(@ARGV),元素数量减少一个3 <>读打开的文件中的所有行4. 在读第二格参数表示的文件文件

2014-10-23 15:06:23 562

原创 strace 解释

strace -fr -o /tmp/xxx.log -p 第一列 进程号第

2014-10-22 21:22:14 1264

原创 perl 文件[一]

文件描述符:访问文件时用来代表文件的数字。它是系统资源,系统限制打开的文件描述符的数量Perl中只有某些系统调用时才使用它文件句柄:功能同文件描述符,但是文件描述符文件句柄:功能同文件描述符,但是与文件描述符不是一个东西。Perl使用文件句柄代表文件文件描述符于文件句柄互相转换:文件句柄=>文件描述符: fileno(F);返回文件描述符文件描述符=>文

2014-10-22 16:24:21 528

原创 Perl HASH数组

数组的优缺点:元素内容可由下标直接得到。基址 + 下标 * 元素大小,是访问最快的方法。缺点:元素内容与位置无关。HASH数组的特点:1.有的位置可能无值为空,但也要留出空间。浪费空间,换取时间2.数组内容没有顺序的3.对查找单个值,比数组通过索引立即找到值慢,多了函数计算。但比链表块,不用从头到尾查一遍。HASH 数组的形式: %h=('a',1,'b',2)

2014-10-22 16:23:45 2312

原创 v$sqlarea 之LAST_ACTIVE_TIME

LAST_ACTIVE_TIME;query plan上次active的时间PARSING_SCHEMA_NAME: parse child cursor的用户SQL> select 'zyj' from dual;'ZY---zyjSQL> select sql_text, parsing_schema_name, last_active_time from v$sqla

2014-10-22 14:34:21 1922

原创 strace

sys 高 OS本身的问题 -c Count time, calls, and errors for each system call and report a summary on program exit. On Linux, this attempts to show system time (CPU time spen

2014-10-21 22:22:52 757

原创 分区索引truncate某个分区,分区索引不失效

SQL> select owner,index_name,index_type,partitioned,status from dba_indexes where table_name='TEST1' and owner='DWF';OWNER INDEX_NAME INDEX_TYPE PAR STATUS---------------------

2014-10-21 14:21:44 1740

原创 全局索引 truncate有数据的分区,索引失效,没数据的分区,索引不失效

查看索引状态:SQL> select index_name, index_type, partitioned, status, global_stats from dba_indexes where table_name = 'F_AGT_BUSINESS_CONTRACT_H'; 2 3 4 INDEX_NAME INDEX_TYPE PAR

2014-10-21 14:16:37 1099

原创 数组的操作

列表--数组的形式形式:(1,"a",2.3,$a,$x+1)元素可以是任意类型,变量,表达式空列表:()单元素列表:(2) 。 与值2不同。qw(1 $a str)qw用法同q,qq. ()可替换成其他符号<>可以为值,变量,不同引号的字符窜,有空格分开范围表示的列表:.. : 范围运算符。每次增1。 1..3(1,2,3,4,5,6) -->

2014-10-21 10:27:58 557

原创 调存储过程shell

#!/bin/ksh################################################################################# 脚本名称 : runjob_ora_proc.sh# 描述 : 调用ORACLE存储过程接程序# 参数描述 : v_proc_name 存储过程名#

2014-10-21 08:48:43 2200

原创 latch:row cache objects

latch:row cache objects当涉及到数据字典(dc)的操作时,就需要首先获得这个latch。例如生成执行计划时候,可能涉及直方图,那么就会涉及到相关dc信息。该latch的相关参数:P1 = Latch address P2 = Latch number P3 = Tries根据p1raw可以定位到是在等待什么类型的dc:SELECT kq

2014-10-19 21:46:59 2136

原创 索引分裂引发的enq: TX - index contention.

当事务修改索引中的数据时,而相关索引块没有足够的空间的时候,就会发生索引块的分割,在分割的过程中前台进程需要等待分割完毕才能继续操作。如果这个时候其他会话也要修改这个索引块的数据,那么将会出现索引块的竞争。(end: TX- index contention).一般索引块的分割持有资源和释放非常短,并不会对数据库造成严重的影响。但是对表操作并发量很大的情况下可能导致严重的竞争。1.创建测

2014-10-19 12:26:19 5127

原创 log file sync

针对上图进行简单的描述: 1、当user发起一个commit后; 2、前端进程(即Server 进程)会post一个信息给lgwr进程,告诉它,你应该去写redo buffer了。 3、当LGWR进程得到指示后,开始调用操作系统函数进行物理写,在进行物理写的这段时间内,会出现 log file parallel write等待。这里或许有人会有疑问,为什么12c之前

2014-10-18 20:36:10 492

原创 唯一索引引发的enq: TX - row lock contention

SQL> create table test as select object_id,object_name,owner from dba_objects where 1=2;表已创建。SQL> desc test 名称 是否为空? 类型 ----------------------------------------- -------- ---------------

2014-10-18 16:46:13 1087

原创 shared pool latch和library cache latch

硬解析: 需要获得shared pool latch,同时需要获得library cache latch。 软解析:不需要需要的shared pool latch,但是仍然需要获得library cache latch。 软软解析:仍然需要持有library cache latch(10.2.0.5以下版本),对于library cache pin和lock的持

2014-10-16 21:24:37 524

原创 perl 控制结构

if (表达式) { 空格忽略,断行可以不同。语句} if(表达式) {elsif (表达式) { 语句语句} } elsif 和else 部分可以省略。......... 注意elsif 关键字else{ 语句块{} 必须有,但可以为空 可以嵌套语句} 含义 为真时执行,

2014-10-15 16:14:11 501

原创 perl chop和chomp函数

chop(str) 截去最后一个字符,无论是什么字符chomp(str) 截去末尾的行分割符(\n),行分割符可由$/定义。[oracle@jhoa bobooke]$ cat 2.pl #!/usr/bin/perl$a="abcd\n";#chop($a);print "chop $a";[oracle@jhoa bobooke]$ perl 2.pl chop abcd

2014-10-14 13:54:21 1298

原创 MQ 查看消息

amqsbcg 和 amqsbcgc 可以详细查阅队列中现有的消息属性及内容而不将其取出,执行完后队列深度不变amqsget命令格式:   amqsget 队列名   队列管理器名 如:                    amqsget HQ_QUEUE   HQ_SVR

2014-10-14 09:19:47 1941

原创 perl system和exec 调用

system 函数:[oracle@jhoa 10]$ cat 1.pl system "date";[oracle@jhoa 10]$ perl 1.pl Sat Oct 11 15:39:51 CST 2014[oracle@jhoa 10]$ cat 1.pl system "sleep 60";[oracle@jhoa ~]$ ps -ef | grep 1.plor

2014-10-11 16:39:02 2487

原创 perl hash 根据键访问相应值

但是HASH的键则全部必须是唯一的字符窜访问hash元素[oracle@jhoa 9]$ cat 4.pl my %hash = ("a" => 1,"b" => 2,"c" => 3);$var= $hash{a};print "\$var is $var\n";[oracle@jhoa 9]$ perl 4.pl $var is 1hash 键赋值[oracle@

2014-10-11 13:51:30 1487

原创 perl unless循环

[oracle@jhoa 6]$ cat 4.pl $mon = $ARGV[0];unless ($mon eq "Feb") {print "This month has at least thirty days.\n";}else {print "Do you see what's going on here?\n";}[oracle@jhoa 6]$ perl 4.pl Fe

2014-10-11 10:43:23 809

原创 perl hash数组

Keys 和values 函数Keys函数能返回哈希的键列表,而values函数能返回列表。 如果哈希没有任何成员,则两个函数都返回空列表:[root@jhoa perl]# cat 35.pl my %hash = ("a" => 1, "b" => 2,"c" => 3);my @k = keys %hash;my @v = values %hash;print "@k\n

2014-10-11 10:27:25 719

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除