超强二十五条口误
1、单位祝词,一位领导说:“祝大家身体愉快……”憋住,没词了。[@more@] 2、有一次帮老板订酒店,想问问人家有没有什么免费上网之类的服务,却怎么也想不出来怎么说好,于是就问对方:“请问,你们这里有什么特殊服务吗?” 对方:“什么?特殊服务??我们是正规酒店!” 3、宿舍老四下床找了半天拖鞋,没有,问大家:为什么我的拖鞋哪里去了? 4、逛街中,突然朋友惊呼:“哇!‘处女书店’!”我大惊,抬头一看,一块匾额,上书四个大字——外文书店。 5、我有次去买羊肉串 伸出4个手指
从程序变量的定义到领导的层次管理
现在几乎所有的语言,变量的适用范围都有“全局”和“局部”之分。一个变量如果已经定义为全局变量,则在函数和过程内部,要么不能再次定义,要么已经代表完全不同的意义。就是说,变量的管理,在同一个软件的代码里,有严格的层次性和适用范围。全局变量和局部变量绝对不能产生冲突,否则,函数和过程将因为不能区分变量而产生混乱。[@more@]软件是逻辑严谨的知识产品,代码中变量的管理,严格体现了职责、范围的划分,各司其职,各尽其职,不能产生含糊不清的情况。一个组织或单位,无论大小,其管理形式也和变量的管理相似。一个员工有
Oracle block cleanout
cleanout分为2钟,一种是fast commit cleanout,另一种是delayed block cleanout. [@more@]oracle有一个modified block list结构,用来记录每个transaction更改过的block,每个transaction大约可以记录10% buffer cache这么多的modified block。这部分block就是当发生commit的时候,oracle可以根据modified block list定位到那些块并做fast commit cleanout。如果一个transaction修改的块超过10% buffer cache,那么超过的块就执行delayed block cleanout。当做fast commit cleanout时,oracle不会清理 Row locks lb标志位,ITL lck标志位。
oracle lock mechanism internal
在很多其他数据库中,lock实际上是通过一个in-meory lock list来实现的,当有session请求一个lock时,它会锁定lock list,然后去搜索lock list看是否这条记录上有别的lock,如果没有就创建一个lock list entry,然后unlock lock list。[@more@]在oracle中,我们先会定位到修改的记录在哪个block,哪条记录,如果有别的active transaction也是修改这条记录,那么会在enqueue lock fixed array里面创建一个对象(按请求lock的时间顺序),排队等待前一个事务commit或rollback,同时设置timeout时间,如果发生timeout则再去检查请求的lock是否
RAW 设备的启动管理
/sbin/service rawdevices restart [@more@]
ITPUB的BLOG真不稳定
这一段时间,发现ITPUB都经常上不来,不知啥原因,是在系统调试?网络不稳定?压力太大?如果过个一二个月后还是这样,就准备搬家了......[@more@]
实例恢复、媒介恢复、正常启动 -- SCN的区别
废话少说,看一下下面的数据吧......[@more@]l 数据文件方面:需要进行实例恢复的SCN:---------------------------------------------------------------------------------------------DATA FILE #9: 来自控制文件: (name #5) D:DATABASEORACLE9IORADATAORADBUSERS01.DBFcreation size=0 block size=8192 status=0xe head=5 tail=5 dup=1 tablespace 9, index=9 krfil=9 prev_file=0 unrecoverable scn: 0x0000.00000000 01/01/1988 00:00:00 Checkpoint cnt:135 scn: 0x0000.00176d7a 08/11/2006 00:06:12 Stop scn: 0xffff.f
数据块坏???
前二天在客户那边,看到通篇都是报数据块坏的问题......[@more@]***Corrupt block relative dba: 0x030274a9 (file 12, block 160937)Bad header found during buffer readData in bad block -type: 6 format: 2 rdba: 0x030274c8last change scn: 0x0006.2b80bdb4 seq: 0x1 flg: 0x06consistency value in tail: 0xbdb40601check value in block header: 0x95d5, computed block checksum: 0x0spare1: 0x0, spare2: 0x0, spare3: 0x0***Reread of rdba: 0x030274a9 (file 12, block 160937) found valid data***Corrupt block relative d
数据库open过程
数据库从mount到open的过程,是个详细的检查过程,oracle在open过程中会进行很多的检测,数据文件的存在,以及scn一致性等等,其中非常重要的并且大家熟知的有下面两个信息检测:[@more@]1:第一次检查数据文件头的检查点计数(chenkpoint cnt)是否和控制文件中的检查点计数(chenkpoint cnt)一致,此步骤主要是用以确认数据文件是否来自同一版本。2:第二次检查数据文件头的开始scn(checkpoint scn)和控制文件中记录的每个文件的结束scn(stop scn)是否一致,如果两者相同,不需要进行恢复,如果不同,则数据库需要进行恢复。源自
我们家的小猪开始学JAVA了
搞了几年的ASP、DELPHI、.NET平台开发,现在开始学JAVA了......[@more@]以<<JAVA2 核心技术>>为教材2006-8-8 学习类和对象2006-8-10 学习继承
Raw Devices and Oracle - 20 Common Questions and Answers
对于祼设备,我们感到既熟悉又陌生。特别我们在ORACLE系统中,为了提高系统的IO性能,使用裸设备还是不错的选择......[@more@]1. What is a raw device? A raw device, also known as a raw partition, is a disk partition that is not mounted and written to via the UNIX filesystem, but is accessed via a character-special device driver; it is up to the application how the data is written, since there is no filesystem to do this on the application's behalf.2. How can a raw device be recognised? In th
X$表资料
这份资料我想研究internal的人都应该有一些作用......[@more@]X$ks - Kernel Services===============================================x$ksmfs kernel services, memory fixed SGAx$ksmfsv kernel services, memory fixed SGA vectorsx$ksmjs kernel services, memory java_pool summaryx$ksmlru kernel services, memory LRUx$ksmls kernel services, memory large_pool summaryx$ksmmem kernel services, memoryx$ksmpp kernel services, memory process poolx$ksmsd kernel services, memory SGA definitionx$ksmsp kernel services,
国外公司的一份面试题
我觉得这些题目还是比较简单的......[@more@]国外公司的Oracle DBA试题Oracle DBA Interview Questions By B G1. How many memory layers are in the shared pool?2. How do you find out from the RMAN catalog if a particular archive log has been backed-up?3. How can you tell how much space is left on a given file system and how much space each of the file system's subdirectories take-up?4. Define the SGA and:? How you would configure SGA for a mid-sized OLTP environment?? What is involved in tuning the SGA?
parent latch & children latch
对于这个概念,我也觉得郁闷......[@more@]About parent vs child latches. There is no fundamental low level difference between parent and child latches, they are all small regions of memory modified with atomic test-and-set style opcodes.You see parent (and solitary) latches from x$ksllt where kslltcnm = 0 and child latches have Kslltcnm > 0 (their child number is stored there).V$LATCH_PARENT shows all latches with kslltcnm 0, V$LATCH_CHILDREN shows all latches with cnm > 0. V$LATCH just s
SMON研究
前一段时间,因为TEMP空间的问题,引了对SMON进程的注意......[@more@]1、SMON的作用 1.1自动恢复例程 前滚以恢复尚未记入数据文件但已经记入联机重做日志中的数据 打开数据库以允许用户登录。任何没有被未恢复事务锁定的数据都立即可用 回滚未提交的事务 1.2合并数据文件中邻近区域的空闲块 SMON 每5分钟会检查一次所有pctincrease != 0的空间,并把它们合并成一个大块。 但这只限于于字典管理模式。 1.3回收临时段,将它们作为数据文件中的空闲块返回 何时会回收临时段? 建立INDEX:在建立索引的时候,oracle会
部分内存数据管理事件命令
今天在分析data buffer pool的时候,要用到一些关于管理buffer的事件命令,在google找了一些出来......[@more@]9i清buffer cachealter session set events 'immediate trace name flush_cache level 1';alter session set events = 'immediate trace name flush_cache';10g中清buffer cachealter system flush buffer_cache;清shared poolalter system flush shared_pool;转储sgaalter session set events 'immediate trace name heapdump level 2'; 转储library cacheALTER SESSION SET EVENTS 'immediate trace name LIBRARY_CACHE leve
How to Interpret ROWID
Oracle ROWID's internal storage is total 10 byte(data_object_id.rdba.nrow), where data_object_id is 4bytes, rdba is 4 bytes and nrow is 2 bytes,and rdba include rfn and blockid,when you use "select rowid from tname" to display the rowid in varchar2 format, oracle do the following convert:[@more@]SQL> SELECT ROWID FROM TEST.TEST4;ROWID------------------AAABCmAAEAAACxqAAAAAABCmAAEAAACxqAABAAABCmAAEAAACxqAACAAABCmAAEAAACxqAADAAABCmAAEAAACxqAAEAAABCmAAEAAACxqAAFAAABCmAAEAAACxqAAGAAABCmA
四层的索引,可以放多少row record?
结果可能是你想不到的。[@more@]比如一个index entry 是18bytes,一个8k的block,PCTFREE=10%,则可以存放8*1024*0.9/18=410,约为400个index entries如果一个表有100,000,000 rows,那么需要250,000 leaf blocks在算算branch:每个branch 记录了每个leaf的最大值和address,大约16 bytes。这样可以存储大约450 个 branch index entries也就是说需要250000/450=556个branch block。但是556个branch又需要多少个再上一级的branch block 来管理呢?因为一个branch最多存储450个leaf entries??灾辽儆中枰?个branch blocks。然而这两个branch
阳朔之游
上二个星期去了几天的阳朔,终于体会到了什么叫地头蛇......[@more@]1、要过此路,留下买路钱--我们是开车去的,一路上发现,每经过一个市、一个县,甚至是一个小乡镇小乡村,都有收费站。每个收费站从几块钱到几十块钱不等,就算是再破再差的路都要收钱。当回来的时候,计算了一下,竟然有个数十张的收费单据。唉,这和古代的那些山寨土匪半路打劫有什么不同??只是多了一层所谓的合法外衣而已。2、景点出口要买票-我们徒步漓江,仅仅是出口和入口在不同的镇上,结果不仅仅在入口要买票,在出口也要买票,要我们买票的态度比起黑社会的来
constraint -enable novalidate 测试
理论上的东西不多说了,直接看测试结果:[@more@]SQL> desc jobs; 名称 是否为空? 类型 ----------------------------------------- -------- ---------------------------- JOB_ID VARCHAR2(10) JOB_TITLE NOT NULL VARCHAR2(35) MIN_SALARY NUMBER(6) MAX_SALARY NUMBER(6)SQL> select *from jobs;JOB_ID JOB_TITLE