自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 direct path read和diect path write

direct path read:传统读取数据的方式是服务器进程通过读取磁盘,然后把数据加载到共享内存中,这样后面的进程就可以通过共享内存访问这些数据,不用再通过缓慢的磁盘读取来完成。direct path read读取数据块方式,是指服务器进程直接读取数据文件,不经过buffer cache,这种方式读取的数据块会加载到服务器进程的PGA内中当中,不会进入buffer cache中。11G

2014-08-31 15:37:31 717

原创 db file parallel write和db file parallel read

db file parallel write This event occurs in the DBWR. It indicates that the DBWR is performing a parallel write to files and blocks. The parameter requests indicates the real number of I/Os that are

2014-08-31 15:28:38 1139

原创 Oracle 进程介绍

数据写进程(dbwr):负责将更改的数据从数据库缓冲区高速缓存写入数据文件 日志写进程(lgwr):将重做日志缓冲区中的更改写入在线重做日志文件 系统监控(smon) :检查数据库的一致性如有必要还会在数据库打开时启动数据库的恢复 进程监控(pmon) :负责在一个Oracle 进程失败时清理资源 检查点进程(chpt):负责在每当缓冲区高速缓存中的更改永久地记录在数据

2014-08-31 15:23:54 449

原创 blocks,extents,segments

Block: Oracle存储的最小单位Extent:EXTENT_ID NUMBER Extent number in the segmentBLOCK_ID NUMBER Starting block number of the extentBLOCKS NUMBER Size of the extent in Oracle blockSQL> set line

2014-08-31 11:36:56 671

原创 pctfree和pctused

pctfree这个参数定义了一个块保留空间的百分比,保留空间是为了将来可能发生的更新操作,因为更新可能增大被更新行占用的空间,如果此时该块没有可利用空间,那么只有发生row migrate了,从而会降低I/O性能。换句话说,就是当一个块的利用率达到1-pctfree的时候,oracle就将该块从freelist中移除,不再向该块插入数据。所以说pctfree是控制什么时候将块从freelist

2014-08-31 10:25:11 609

原创 smon和pmon

SMON负责系统监视已经一些系统清理及恢复工作,这些工作主要包括:1.清理临时空间以及临时段SMON负责在数据库启动时清理临时表空间中的临时段,或者一些异常操作过程遗留下来的临时段,例如,当创建索引过程中,创建期间分配给索引的Segment被标志为TEMPORARY,如果Create Index (或rebuild Index等)会话因某些原因异常中断,SMON负责清理这些临时段。2.接

2014-08-30 22:03:22 1418

原创 pctused、pctfree、initrans,maxtrans 等参数

PCTUSED:是指当块里的数据低于多少百分比时,又可以重新被insert,一般默认是40,即40%,即:当数据低于40%时,又可以写入新的数据,这个时候处在下降期PCT_USED NUMBER Minimum percentage of used space in a block; NULL for partitioned tables数据块的最小的使用比例Oracle会根据所

2014-08-30 21:43:48 1655

原创 CBO和RBO优化器

A、RBO方式:优化器在分析SQL语句时,所遵循的是Oracle内部预定的一些规则。比如我们常见的,当一个where子句中的一列有索引时去走索引。 在8i之前,Oracle使用的是RBO(Rule Based Optimizer,基于规则的优化器),他的执行非常简单,就是在优化器里面嵌入15中规则,执行SQL语句符合哪种规则,就按照规则定制出相应的SQL执行计划。由于他是一种过时呆板的优化器

2014-08-30 20:46:27 594

原创 SELECT MIN(object_id),MAX(object_id) FROM TABLE 如何优化

SELECT MIN(object_id),MAX(object_id) FROM TABLE 如何优化 create table test as select * from dba_objects; alter table test modify object_id not null; select max(object_id),min(object_id) from test;

2014-08-29 20:56:40 1589

原创 分页SQL取下一页

分页语句;----取第一页select * from (select a.*,rownum rn from (select a.* from dba_objects a order by object_id ) awhere rownum<=10) where rn>=0;---取第二页select * from (select a.*,rownum rn

2014-08-29 20:39:24 2218

原创 取第10行到100行

select * from (select rownum rn ,a.* from dba_objects a ) where rn >10 and rn

2014-08-29 19:34:42 971

原创 一致读原理

一致读过程:p复制一份脏块,

2014-08-28 19:43:56 560

原创 linux yum安装

linux如何安装yum使用YUM来安装软件,就可以不用去到处找依赖关系的RPM了。很方便。第一步:安装yum 第二步:下载createrepo包并安装 下载地址:ftp://195.220.108.108/linux/dag/redhat/el4/en/i386/dag/RPMS/createrepo-0.4.6-1.el4.rf.noarch.rpm安装createrepo

2014-08-26 17:25:06 500

原创 虚拟机无分区的情况下,扩磁盘

---直接磁盘做成物理盘,没有分区[root@awpservnew ~]# fdisk -lDisk /dev/sdb: 558.3 GB, 558345748480 bytes255 heads, 63 sectors/track, 67881 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesSector size (

2014-08-26 15:31:50 836

原创 awk 取当前目录下最大文件

[oracle@jhoa ~]$ ls -ltr | grep ^- | awk '{print $5,$NF}' | awk '$1>max {max=$1;a=$NF}END{print max,a}'15620321335 nohup.out

2014-08-26 11:21:09 1247

原创 AIX 计算今年过了多少天了

#取系统时间YEARDAY () {#判断闰年#标准如果能被400整除那么为闰年#如果能被4整除且不能被100整除那么是闰年if [ $# -ne 1 ];then echo "Usage: $0 year" exit 1;fiFYEAR="$1"if [ `expr ${FYEAR} % 400` -eq 0 ];then FRUN="366"else

2014-08-25 22:45:46 984

原创 AIX 计算时间差shell

#!/bin/bash#取年份2008YEAR1=$(echo $1|cut -d- -f1) #取年份2010YEAR2=$(echo $2|cut -d- -f1)DAYNUM=YEARDAY () {#判断闰年#标准如果能被400整除那么为闰年#如果能被4整除且不能被100整除那么是闰年if [ $# -ne 1 ];then echo "Usage: $0 y

2014-08-25 22:40:17 3388

原创 AIX 取指定天前的日期

#取系统时间LOGBACKUPDATE=`date "+%Y-%m-%d"`echo $LOGBACKUPDATE BACKYEAR=`echo $LOGBACKUPDATE|awk -F'-' '{print $1}'` BACKMONTH=`echo $LOGBACKUPDATE|awk -F'-' '{print $2}'` BACKDAY

2014-08-25 22:38:10 3876

原创 strace和10046 研究一致读

SQL> create table t as select object_id,owner from dba_objects where rownum < 1000; 表已创建。 SQL> alter table t add constraint t_id_pk primary key(object_id);SQL> update t set owner='AA' wher

2014-08-24 22:38:43 525

原创 10046和dtrace研究一致读

SQL> show userUSER 为 "SYS"SQL> select spid from v$process where addr=(select paddr from v$session where sid=(select sid from v$mystat where rownum < 2));SPID------------------------2500SQL> S

2014-08-24 21:26:25 560

原创 彻底搞懂uba地址转换

SQL> update t set owner='killdb.com' where object_id=555;已更新 1 行。SQL> select xidusn,xidslot,xidsqn,ubablk,ubafil,ubarec,START_SCN from v$transaction; XIDUSN XIDSLOT XIDSQN UBABLK

2014-08-24 20:41:08 1550

原创 Undo Internal<2>

SQL> ----session 1SQL> create table t as select object_id,owner from dba_objects where rownum < 1000;表已创建。SQL> alter table t add constraint t_id_pk primary key(object_id);表已更改。SQL> select di

2014-08-24 16:55:35 655

原创 solaris 安装数据库软件报INS-31031

debugommand@4532b038[pool-1-thread-1] [ 2014-08-23 20:01:52.429 CST ] [ClusterException.setErrorMessage:153]  ClusterException.setErrorMessage: errString is 'couldn't set locale correctly|couldn't

2014-08-23 21:26:36 1089

原创 Solaris安装pkg

pkgadd -d /cdrom/sol_10_811_x86/Solaris_10/Product SUNWi1cspkgadd -d /cdrom/sol_10_811_x86/Solaris_10/Product SUNWi15cs-bash-3.2# df -h文件系统 大小 用了 可用 容量 挂接在/dev/dsk/c0d0s0

2014-08-23 20:26:38 1505

原创 蛋疼的Solaris设置

vmware 9 中安装好了solaris 10 u10后,虽然已经在虚拟机配置中为solaris指定了网卡及其类型,可是在solaris系统能却只能看到lo0,没有找到任何想要的e1000g0的东西。解决方法如下:1. 打开Solaris 10.vmx,找到如下内容ethernet0.present = "TRUE"ethernet0.connectionType = "nat"

2014-08-23 14:06:53 488

原创 SQL运行突然SESSION中断错误

SQL> SELECT 2 DATA_DATE, 3 MGR_CODE, 4 IDX_CODE, 5 IDX_NAME, 6 CUR_N

2014-08-22 18:10:09 818

原创 Undo internal<1>

v$transaction: 列出了没有提交的活动事务2. XID的结构egSQL> ---session1SQL> drop table test_undo1 purge;Table dropped.SQL> create table test_undo1 as select * from dba_objects;Table created.SQL> set line

2014-08-21 14:36:40 521

原创 alter database create datafile as

SQL> create tablespace tbs_1 DATAFILE '/u03/oradata/tbs_01.dbf' size 5M;Tablespace created.SQL> alter tablespace tbs_1 add datafile '/u03/oradata/tbs_02.dbf' size 1G;Tablespace altered.SQL> >

2014-08-21 09:18:52 2626

原创 根据打开文件句柄查找文件

[oracle@june2 ~]$ vi 1.shwhile :dosqlplus scott/oracle<<!select seq1.nextval from dual;exit!done~通过lsof 查看打开文件的进程[root@june2 fd]# lsof | grep 1.shvim 6665 oracle 4u REG

2014-08-20 21:06:36 1075

原创 Oracle删除数据文件

SQL> select file_name,file_id from dba_data_files where tablespace_name='TEST';FILE_NAME FILE_ID------------------------------ ----------/oradata/june/test.dbf

2014-08-20 19:39:23 524

转载 alter database datafile offline drop 与 alter tablespace drop datafile 区别

这篇Blog里真的是最基本的操作。 其实今天写的内容,也可以放到那里面去。 但是还是打算分开来讲。 引起一个重视吧。 1. alter database datafile 'file_name' offline drop 该命令不会删除数据文件,只是将数据文件的状态更改为recover。 offline drop命令相当于把一个数据文件至于离线状态,并且需要恢复,并非删除数据文件

2014-08-20 17:38:22 644

原创 查看某个数据文件上的对象

SQL> select owner,segment_name from dba_Extents where file_id=58;no rows selected

2014-08-20 17:20:55 530

原创 Oracle 多块读不能跨越extent

Oracle 多块读不能跨越extent

2014-08-20 09:34:54 824

原创 gc buffer busy acquire

"gc buffer busy acquire": A session cannot pin the buffer in the buffer cache because another session is reading the buffer from the cache of another instance.

2014-08-19 16:32:27 1311

原创 gc cr block busy

gc cr block busy:当一个以上的会话在同一个实例中排队等待缓冲区的一个CR副本,而该期待的CR副本来自远程实例时,会话在Buffer busy global cr(缓冲区忙全局一致读取)事件上等待,一旦来自远程实例的CR副本到达本地缓存,在缓冲区可用之前将块的SCN于快照SCN进行对比

2014-08-19 16:31:59 1335

原创 gc cr request

global cache cr request:当会话用远程实例高速缓存查找缓冲区的一致读取(CR)副本时,会在global cache cr request(全局缓冲区一致读取请求)事件上等待,直到缓冲区在本地实例中可用。通常持有者构造缓冲区的CR版本,然后通过高速互联传输给请求的实例,当CR缓冲区到达本地缓冲存储器时,等待结束。自Oracle Database 10g Rel

2014-08-19 16:31:14 4008

原创 关于函数授权问题

test 用户创建函数:create or replace function get_sal(name1 varchar2)return number isv_sal number(6,2);beginselect sal into v_sal from emp where upper(ename)=upper(name1);return v_sal;end;SQL> sel

2014-08-18 19:57:54 1044

原创 分页语句的深入研究

select * from (select a.cert_type, a.cert_no, a.cust_name, e.oper_no, to_char(c.vou_start_no + instr(c.vou_sta

2014-08-18 10:34:51 495

原创 清理一个月前的日志

. ~/.bash_profile#用于删除上一个月的日志#后来发现LINYX上取上一个月直接可以date -d "-1 month" +%m悲剧export LANG=en_US#定义清理日志路径CLEAR_PATH="/oracle/app/diag/rdbms/dwh/dwh/trace/"MONTH=`date +"%m"`#echo $MONTHif test "$MON

2014-08-18 09:49:41 981

原创 REGEXP_SUBSTR函数用法

6.14 提取第n个分隔的子串REGEXP_SUBSTR函数格式如下:function REGEXP_SUBSTR(String, pattern, position, occurrence, modifier)__srcstr :需要进行正则处理的字符串__pattern :进行匹配的正则表达式__position :起始位置,从第几个字符开始正则表达式匹配(默认为

2014-08-17 21:34:45 11966

空空如也

空空如也

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

TA关注的人

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