2006 年 11 月 01日, 星期三

Oracle 9i concept 7 Memory Architecture


1.5.3本文参考资料
序号 书名 章节 出版单位 1 《Oracle9i Database Concepts》
Release 2 (9.2) Part Number A96524-01 14
SQL,PL/SQL, and Java oracle 2 《Oracle9i Database Concepts》
Release 2 (9.2) Part Number A96524-01 7
Memory Architecture oracle 3 《Oracle9i Database Concepts》
Release 2 (9.2) Part Number A96524-01 4
The Data Dictionary oracle 4 《Oracle9i Database Performance Tuning Guide and Reference》
Release 2 (9.2) Part Number A96533-02 14
Memory Configuration and Use oracle

 查看全文
bigboar 发表于:2006.11.01 17:22 ::分类: ( Oracle ) ::阅读:(2766次) :: 评论 (0) :: 引用 (0)

bitmap索引超级异常无限扩大问题

今天遇到这么一个情况:
一朋友的现场发现表空间不够,就一直加表空间的size,一直加到6G,还是会提示不够,报告错误。
后来从系统视图得知,某表A,有约40M,在上面的3个字段上建了bitmap索引,该索引已扩展到5821M。


为了赶紧解决问题,把该索引直接drop了,系统开始正常,不到1秒就drop掉了。




========================================
原始表40M,bitmap索引5821M,明显异常。
然后从alert.log里检查错误,与此有关,只有唯一一个错误提示:
ORA-1654: unable to extend index MEES.A_IND_1 by 8192 in tablespace XXXSPACE
没有任何跟踪文件生成。

在第一次出现这个错误提示的紧接着,分配了N多undo segment(从 alert.log文件摘出)。

各位有遇到过这事的吗?知道什么原因吗?








附alert.log错误部分:
Thu Oct 26 00:58:01 2006
ORA-1654: unable to extend index MEES.A_IND_1 by 8192 in tablespace XXXSPACE
Thu Oct 26 01:51:59 2006
Created Undo Segment _SYSSMU11$
Undo Segment 11 Onlined
Thu Oct 26 01:52:12 2006
Created Undo Segment _SYSSMU12$
Undo Segment 12 Onlined
Thu Oct 26 01:52:23 2006
Created Undo Segment _SYSSMU13$
Undo Segment 13 Onlined
Thu Oct 26 01:53:00 2006
Created Undo Segment _SYSSMU14$
Undo Segment 14 Onlined
Thu Oct 26 01:53:37 2006
Created Undo Segment _SYSSMU15$
Undo Segment 15 Onlined
Thu Oct 26 01:53:51 2006
Created Undo Segment _SYSSMU16$
Undo Segment 16 Onlined
Thu Oct 26 01:54:19 2006
Created Undo Segment _SYSSMU17$
Undo Segment 17 Onlined
Thu Oct 26 01:55:04 2006
Created Undo Segment _SYSSMU18$
Undo Segment 18 Onlined
Thu Oct 26 01:55:16 2006
Created Undo Segment _SYSSMU19$
Undo Segment 19 Onlined
Thu Oct 26 01:55:22 2006
Created Undo Segment _SYSSMU20$
Undo Segment 20 Onlined
Thu Oct 26 01:56:26 2006
Created Undo Segment _SYSSMU21$
Undo Segment 21 Onlined
Thu Oct 26 01:58:14 2006
Created Undo Segment _SYSSMU22$
Undo Segment 22 Onlined
Thu Oct 26 01:58:33 2006
Created Undo Segment _SYSSMU23$
Undo Segment 23 Onlined
Thu Oct 26 01:58:52 2006
Created Undo Segment _SYSSMU24$
Undo Segment 24 Onlined
Thu Oct 26 01:59:18 2006
Created Undo Segment _SYSSMU25$
Undo Segment 25 Onlined
Thu Oct 26 01:59:31 2006
Created Undo Segment _SYSSMU26$
Undo Segment 26 Onlined
Thu Oct 26 01:59:36 2006
Created Undo Segment _SYSSMU27$
Undo Segment 27 Onlined
Thu Oct 26 02:00:09 2006
Created Undo Segment _SYSSMU28$
Undo Segment 28 Onlined
Thu Oct 26 02:00:09 2006
Created Undo Segment _SYSSMU29$
Undo Segment 29 Onlined
Thu Oct 26 02:11:12 2006
Created Undo Segment _SYSSMU30$
Thu Oct 26 02:11:12 2006
Undo Segment 30 Onlined
Thu Oct 26 02:11:13 2006
Created Undo Segment _SYSSMU31$
Undo Segment 31 Onlined
Thu Oct 26 02:16:47 2006
Created Undo Segment _SYSSMU32$
Undo Segment 32 Onlined
Thu Oct 26 03:57:34 2006
Thread 1 advanced to log sequence 621

 查看全文
bigboar 发表于:2006.11.01 17:19 ::分类: ( Oracle ) ::阅读:(1585次) :: 评论 (0) :: 引用 (0)

cursor工作原理一点点说明

有网友说:

db instance: share modle.
open cursor时, 想问一下:
1.如果没设large pool, cursor用的是UGA, 如果UGA用完了接着用哪个空间?还是会报错?
2. 如果设定了large pool, cursor用的是large pool, large pool也用完了,接着oracle会怎么处理?

为了这个问题,我查了好几天的资料,以下描述,仅查询oracle 9i资料。


先从cursor的定义来看:
Cursors

A cursor is a handle or name for a private SQL area--an area in memory in which a parsed statement and other information for processing the statement are kept.

Although most Oracle users rely on the automatic cursor handling of the Oracle utilities, the programmatic interfaces offer application designers more control over cursors. In application development, a cursor is a named resource available to a program and can be used specifically to parse SQL statements embedded within the application.

Each user session can open multiple cursors up to the limit set by the initialization parameter OPEN_CURSORS. However, applications should close unneeded cursors to conserve system memory. If a cursor cannot be opened due to a limit on the number of cursors, then the database administrator can alter the OPEN_CURSORS initialization parameter.

Some statements (primarily DDL statements) require Oracle to implicitly issue recursive SQL statements, which also require recursive cursors. For example, a CREATE TABLE statement causes many updates to various data dictionary tables to record the new table and columns. Recursive calls are made for those recursive cursors; one cursor can run several recursive calls. These recursive cursors also use shared SQL areas.

-----引自《Oracle9i Database Concepts Release 2 (9.2) Part Number A96524-01》的第14章SQL, PL/SQL, and Java。
总的来说,定义的cursor的意思大体是:
A cursor is a handle or name for a private SQL area.In application development, a cursor is a named resource available to a program and can be used specifically to parse SQL statements embedded within the application.Each user session can open multiple cursors up to the limit set by the initialization parameter OPEN_CURSORS. Some statements (primarily DDL statements) require Oracle to implicitly issue recursive SQL statements, which also require recursive cursors.

这么说来,cursor是一条SQL语句的句柄,或private SQL area的名字,或对应用程序来说是一个命名资源。
那么,说起cursor,就应该从一条SQL语句的执行过程说起和private SQL area是怎么分配,在那里分配的了?

cursor分显式和隐式,比如我们在pl/sql里自己定义的游标,然后用明确的open语句打开了,那么就是显式的;如果用for x in cur_data的方法打开游标,那么就是隐式的了。不管是那一种,他都是一个游标。

关于SQL语句的执行过程,可以参考:《Oracle9i Database Concepts Release 2 (9.2) Part Number A96524-01》的第14章“SQL, PL/SQL, and Java”的“SQL Processing”这一节。
从这一节我们可以看到,SQL语句执行的第一步就是创建游标:
Stage 1: Create a Cursor
A program interface call creates a cursor. The cursor is created independent of any SQL statement: it is created in expectation of any SQL statement. In most applications, cursor creation is automatic. However, in precompiler programs, cursor creation can either occur implicitly or be explicitly declared.

然后,就是把SQL语句交给Oracle来解析,此时如果在shared pool的library cache发现一个和该SQL语句一样的shared SQL area,那么,直接拷贝一份作为private SQL area来执行,此叫做发生一次soft parse;如果没有找到,那么就要解析该SQL,也就是要得到该SQL的parse tree和execution plan,分配内存,存储这些信息为一个shared SQL area,然后拷贝一份做为private SQL area然后再执行,此为发生一次hard parse。

对于private SQL area,参考《Oracle9i Database Concepts Release 2 (9.2) Part Number A96524-01》的第7章“Memory Architecture”,我们可以得到private SQL area的信息如下:
Private SQL Area

A private SQL area contains data such as bind information and runtime memory structures. Each session that issues a SQL statement has a private SQL area. Each user that submits the same SQL statement has his or her own private SQL area that uses a single shared SQL area. Thus, many private SQL areas can be associated with the same shared SQL area.

The private SQL area of a cursor is itself divided into two areas whose lifetimes are different:

* The persistent area, which contains, for example, bind information. It is freed only when the cursor is closed.
* The run-time area, which is freed when the execution is terminated.

Oracle creates the runtime area as the first step of an execute request. For INSERT, UPDATE, and DELETE statements, Oracle frees the runtime area after the statement has been run. For queries, Oracle frees the runtime area only after all rows are fetched or the query is canceled.

The location of a private SQL area depends on the type of connection established for a session. If a session is connected through a dedicated server, private SQL areas are located in the server process's PGA. However, if a session is connected through a shared server, part of the private SQL area is kept in the SGA.

Cursors and SQL Areas

The application developer of an Oracle precompiler program or OCI program can explicitly open cursors, or handles to specific private SQL areas, and use them as a named resource throughout the execution of the program. Recursive cursors that Oracle issues implicitly for some SQL statements also use shared SQL areas.

The management of private SQL areas is the responsibility of the user process. The allocation and deallocation of private SQL areas depends largely on which application tool you are using, although the number of private SQL areas that a user process can allocate is always limited by the initialization parameter OPEN_CURSORS. The default value of this parameter is 50.

A private SQL area continues to exist until the corresponding cursor is closed or the statement handle is freed. Although Oracle frees the runtime area after the statement completes, the persistent area remains waiting. Application developers close all open cursors that will not be used again to free the persistent area and to minimize the amount of memory required for users of the application.

上面的E文描述了,在private SQL area创建过程中,会有两个内存区域,第一个是The persistent area,只有在cursor close才会释放,而另外一个The run-time area,update,insert,delete语句一执行结束,或SELECT语句的所有行返回后,就会释放。

那么,private SQL area在那里分配的呢?shared SQL area 是在shared pool的library cache里分配的,而private SQL area,如果是shared server模式,那么是在shared pool的library cache里分配,如果是dedicated server,那么是在PGA里分配。那么这里的PGA说的是什么呢?
这里的PGA,说的是通过参数PGA_AGGREGATE_TARGET参数指定的PGA大小分配的区域。即这部分内容,已经不在SGA里分配了。

此时,如果是SQL语句里包含了sort,hash-join,bitmap create,bitmap merge,那么,还会在单独的分配SQL work area来处理“sort,hash-join,bitmap create,bitmap merge”操作,这里的SQL work area,如果WORKARE_SIZE_POLICY设置为auto,那么也是在GA_AGGREGATE_TARGET的范围里分配的,如果设置为 manual,那么是由*_AREA_SIZE(例如sort_area_size,hash_area_size, create_bitmap_area_size)来分别定义大小的(如果分配的大小不够,此时temp表空间就排上用场了),分配的范围还是属于PGA 的。

到此,关于SQL语句的执行,主要是关于cursor的定义,我觉得应该是相对比较清楚了。
但是,想深一层,cursor的取值过程,比如1G的SGA,1G的PGA,取10G的大表全表数据,如果在pl/sql里打开游标处理,那么这些数据的处理过程是怎么处理的,还是没有描述出来,这里只表述了关于CURSOR这个SQL语句的分析处理过程。

这里,cursor有关的两个参数,open_cursor定义一个session最大能打开的cursor数,指的是打开后不关闭的情况,也就是可以创 建多少个private SQL area,CURSOR_SHARING指的是符合那些标准的SQL语句可以认为是一类,是同一个SQL语句来被shared,即创建的shared SQL area可以被后续的那些SQL语句共享执行。SESSION_CACHED_CURSORS说的是一个session可以缓存多少个cursor,让后 续相同的SQL语句不再OPEN。


==================================
最后,针对楼主的问题:
db instance: share modle.
open cursor时, 想问一下:
1.如果没设large pool, cursor用的是UGA, 如果UGA用完了接着用哪个空间?还是会报错?
2. 如果设定了large pool, cursor用的是large pool, large pool也用完了,接着oracle会怎么处理?

cursor用完了,1是cursor个数用完了,受到open_cursors限制,应该会报错。2是cursor消耗内存消耗完了,这里cursor 对应的private SQL area的PGA大小,应该是受到PGA_AGGREGATE_TARGET限制,如果超过了,那么就错了,而且,private SQL area只是存储parsing tree和execute plan等信息,size是很小的,默认的open_cursors=50,在加上process参数指定的会话数,应该是不会超过 PGA_AGGREGATE_TARGET,与此相关的shared SQL area,由于是在shared pool,如果SQL语句太多,那么是受LRU list管理的,如果全部有用,而又不能淘汰,应该是会报告错误的。

至于large pool,如果配置了,应该也是和cursor没关系的。
按照《Oracle9i Database Concepts Release 2 (9.2) Part Number A96524-01》的第7章“Memory Architecture”定义:
Large Pool

The database administrator can configure an optional memory area called the large pool to provide large memory allocations for:

* Session memory for the shared server and the Oracle XA interface (used where transactions interact with more than one database)
* I/O server processes
* Oracle backup and restore operations
* Parallel execution message buffers, if the initialization parameter PARALLEL_AUTOMATIC_TUNING is set to true (otherwise, these buffers are allocated to the shared pool)

large pool工作的4大块内容,只有session memory貌似和cursor有点关系,可是参考下面对session memory的定义:
Session Memory

Session memory is the memory allocated to hold a session's variables (logon information) and other information related to the session. For a shared server, the session memory is shared and not private.

session memory与cursor是没有关系的,那么,large pool,与cursor是没有关系的。



 查看全文
bigboar 发表于:2006.11.01 17:15 ::分类: ( Oracle ) ::阅读:(1971次) :: 评论 (1) :: 引用 (0)

2006 年 10 月 17日, 星期二

plsql表比游标更快

在遇到使用游标嵌套循环时,由于我们需要在里层循环里open和close游标,这样重复很多次,导致性能会很低下。此时可以使用plsql来改善性能。
使用plsql,每个游标只需要open close一次。减少的时间不是一点两点。


下面的例子仅是简单的示范用法和性能对比,经过分别多次执行,得到时间如下:
使用plsql表的执行时间约在 0 . 04 秒。
而不使用plsql表的执行时间约在 8 . 33 秒。

 查看全文
bigboar 发表于:2006.10.17 13:42 ::分类: ( Oracle ) ::阅读:(1688次) :: 评论 (2) :: 引用 (0)

2006 年 10 月 08日, 星期日

抗议歧视:谈中国国际妓女对中国人民的不平等(《忆妓回忆录》和《夜宴》)

据说,日本人丢不起那脸,宁愿去拍A片,都不愿去拍《忆妓回忆录》,这下可好,中国的两个女士,直接冲到前线大喊“我要做妓女”,一下子,中国国际妓女粉墨登场了。
不感叹导演找中国女士来拍日本妓女,只抗议中国国际妓女,对中国人民的不平等!

据说,《忆妓回忆录》里,好多性爱场面非常火爆,全身赤裸,直喷鼻血。
而《夜宴》,只有一个后背,就说“中国支那猪,你满足吧”。

谁叫咱没钱呢?
--招妓没资格,看妓女都只能看后背,看不了全身。
谁叫咱国家不发达呢?
--中国人不做中国妓女,而愿意做日本妓女。

虽然我没钱又没势,但我还是可以抗议的,我要抗议,抗议中国国际妓女,不好意思,准确说,应该是中国生产的日本妓女,对母亲国--中国人和“国际友人”--日本人的不平等!

以示抗议,宁缺勿滥,坚决不看《夜宴》!
--直到中国生产的日本妓女,给我们平等待遇的那一天!


bigboar 发表于:2006.10.08 17:46 ::分类: ( BoarNote ) ::阅读:(2915次) :: 评论 (0) :: 引用 (0)

记我的2006.10.1内蒙塞汗坝行,一家之言

10.1,下午2点左右,从科技馆出发。2车40人。中途下车休息,于10.1晚上10点左右到达红山军马场第二招待所。吃晚饭,分配住房,睡觉。

10.2,8点起床吃早餐出发,去夹皮沟,红松湖,大峡谷,5彩山。都不收门票。
当天从大峡谷走到5彩山,使劲往偏僻的地方走,风景独好!还遇到拍《大秦帝国》的剧组了,拿了道具,拍了己张照片。
仅大峡谷和5彩山的风景值得一看,其中以5彩山为最。夹皮沟,红松湖,不值得停留(风景太多,景色一般的就别提了)
5彩山20元包一个马一个小时,骑着代步,爬山,赶羊群,拍照,感觉不错!

10.3,6点起床,到喇嘛山看日出,转战公主湖,盘龙峡谷,将军泡子。
上述4个地方,出了将军泡子比较难看外,其他的都不错,可惜公主湖老板是很野蛮的那种,门票也是20元一张,很小的地盘,其实不去也罢!!!
盘龙峡谷太大了,好难走,没租到马代步,没走到最里面了。回走的时候,遇到谷主开车出谷,免费把我们给捎带出谷,谷主人不错,和气,传说是北京人。


 查看全文
bigboar 发表于:2006.10.08 13:35 ::分类: ( BoarNote ) ::阅读:(880次) :: 评论 (0) :: 引用 (0)

2006 年 09 月 16日, 星期六

UNIX时间推导.按小时前后推导.按天前后推导.按月前后推导


在从其他机器采集日志文件时,我们常常会遇到采集前一小时,采集前一天,或者任务失败时候,从某一天的某个小时,一直到当前时间,每小时采集一次,等等诸如此类的需要推导一个或前或后时间。

在网上看了一部分同志只简单的实现了推导前一天,或后一天的脚本。
今天我把按时间推导,以小时为单位,或以天为单位,可自动往前推导N小时的日期或N天的日期,也可自动往后推导N小时的日期或N天的日期。由于使用循环推导,所以推导太大的数据,比如查询某个日期前99999小时的日期,循环就得做很多次,就会稍微有点慢了。
使用Oracle的时间函数进行测试,计算值与oracle数据库计算的结果一致,正确(仅在fedora core 5上测试)。
(我画了函数流程图,见http://bigboar.itpub.net/resource/8411/17830
编写的脚本:http://bigboar.itpub.net/resource/8411/17831
可以把脚本用函数的方法组织起来,我的是把脚本路径加入path,然后直接使用脚本 )
传说“http://bigboar.itpub.net/resource/8411/17831”的压缩解压有问题,放了没有压缩的文本,连接如下:

http://bigboar.itpub.net/resource/8411/17856
http://bigboar.itpub.net/resource/8411/17857
http://bigboar.itpub.net/resource/8411/17859
http://bigboar.itpub.net/resource/8411/17858



现把实现方法说明如下:

 查看全文

bigboar 发表于:2006.09.16 00:27 ::分类: ( Linux ) ::阅读:(893次) :: 评论 (0) :: 引用 (0)

2006 年 09 月 11日, 星期一

北京协和医院.挂号难

北京协和医院.挂号

留此,以免下次需要时,查。
协和医院分东院(东单附近)和西院(西单附近),东院为主院,大而全,是老牌子;而西院,是最近几年吧,从邮电医院合并过来的,专家不多,门诊不多。
本次挂号:神经科-帕金森病

1,挂号:
我周5凌晨 1 点过到东院,已经有200多人在排队了。挂号大厅是锁着的,人们就在挂号大厅门外面,席地而睡、坐排队,以等到3点半开门挂号。
而协和的门诊,普通门诊和专家门诊,每个科的门诊每天是固定发N个号的,发完号就没了,排队枪号就很有必要了。据说,还有号贩子。

 查看全文
bigboar 发表于:2006.09.11 13:14 ::分类: ( BoarNote ) ::阅读:(6884次) :: 评论 (10) :: 引用 (0)

2006 年 09 月 04日, 星期一

最近堕落去了,看小说

好久没来更新,也没来看留言,这得归功于看了几部小说
《边荒传说》,《飘渺之旅》,《无为传说》,《诛仙》,《老板,我动了你的老婆》,《如果你是个处女,我会娶你。但是,抱歉你只是个妓女》
简直是看的一塌糊涂,天昏地暗

《边荒传说》有45册,地址: http://booksky.biz/Directory.aspx?SortID=52
黄易的大作,早就想看了,一直忍着,怕看了以后就没有好小说看了,最终还是没忍住
传承了黄易的玄幻,姥姥的,我还为此查了小说里的历史背景和人物关系,好小说,值得看
本人是个黄易迷了,上大学前看了金庸,古龙的小说,每一部都看了很多遍
那时候觉得黄易这家伙写的小说太TM长了,不敢看,大学就开始猛看大看了,直呼过瘾,一遍一编的看,《大唐》什么的,具体看了几遍,已经数不清了,不敢说那位大师写的好或不好,只说我中了黄易这丫的毒了,看了他的小说,很少提的起精神看金庸什么的小说了,看了拍成连续剧的《大唐》,MD,简直是看的惨不忍睹,拍的烂的不行,超级破坏《大唐》的形象,感觉黄易的小说不容易拍小说,古龙的小说拍出来就变味的不得了,想想就能理解黄易的小说了,不像金庸的小说,比较傻,拍出来还是比较像小说里写的一样,黄易的场景,故事布局,意境,我都是超级喜欢,但看了很多遍,就会发觉这家伙也是要挣钱吃饭,很多地方写的不够严谨,漏洞不少,没有金庸他们写的小说严谨,但我依然是迷恋黄易,把他放在我喜欢的小说作者第一位!

《飘渺之旅》有28册,地址: http://booksky.biz/Directory.aspx?SortID=1086
虽然作者说是消遣小说,NND,还是写的很好玩,把凡人,修真,修佛,仙人,灵鬼,科技扯进来了,可惜没看到作者对上帝的直接解释,既TM玄幻,又TM科幻,反正就是很值得看了,可惜最后结尾的时候,总觉得还没过瘾,有点草草收兵的感觉,猜测会不会是作者的脑袋想不出来该怎么继续扯的更玄更幻了

《无为传说》有16册,地址: http://wx.uying.com/html/36823/index.stm
感觉是从黄易那里偷师来了,用未来的科幻世界,来解释大唐双龙里的境界,徐子凌的手印,慈航静斋等都升华了,MD,变成有学校专门学习了,NND,《大唐》迷可以看看,满足自己顺着《大唐》好好的意淫一把,喜欢《大唐》的朋友,推荐看

《诛仙》有22册,地址: http://booksky.biz/Directory.aspx?SortID=1682
可惜,还没写完,现在也就找的到第22册,什么时候继续出,就不知道了
天地不仁,以万物为诌狗
感觉有黄易的影子,还是佛道与圣门的斗争,只是更玄乎了,神话小说

《老板,我动了你的老婆》有68章,地址: http://www.tianyabook.com/wangluo2005/laobanwodonglenidelaopo/index.htm
让我想起了很久前看的,好像叫“成都,今夜请将我遗忘”一样,堕落,堕落,还是堕落,但看着很YY,南方的兄弟们应该看看了,家乡话好多


《如果你是个处女,我会娶你。但是,抱歉你只是个妓女》有14章,地址 : http://www.w00.cn/xiaoshuo/html/428/content.html
很感人,一切都是生活,很无奈很感人,妓女也是人,妓女不是天生就是妓女,为啥不想想妓女为什么会变成妓女,妓女为什么要叫做妓女
还有一部很久前看的妓女小说《给我一支烟》(地址:http://book.ceqq.com/READ_BOOK.asp?id=1589 ),也是推荐给

 查看全文
bigboar 发表于:2006.09.04 10:47 ::分类: ( NetNovel ) ::阅读:(1034次) :: 评论 (0) :: 引用 (0)

2006 年 07 月 26日, 星期三

ORA-07445 [zllcini] or ORA-04045 in a Database with OLS Set to FALSE

转自metalink

Doc ID: Note:233110.1 Type: BULLETIN
Last Revision Date: 10-APR-2003 Status: PUBLISHED


Problems Description
--------------------

You may get OLS related errors in a database where the Oracle Label Security
option was not installed.

--> ORA-7445 core dump [zllcini...]
--> ORA-04045: errors during recompilation/revalidation of LBACSYS.LBAC_EVENTS

Oracle Label Security was added to V$OPTION in 9.2.0.1 so additionally you can
check in a 9.2.0.X database with a query on V$OPTION that OLS is not installed:

SQL> select * from v$option where parameter = 'Oracle Label Security';

PARAMETER VALUE
--------------------- -------------------------------------
Oracle Label Security FALSE


1) Core Dump in zllcini
--------------------

ORA-07445: exception encountered: core dump [zllcini()+186] [SIGSEGV]
[Address not mapped to object] [0xC] [] []

Current SQL statement for this session:
BEGIN
LBACSYS.lbac_events.logon(dbms_standard.login_user);
END;
----- PL/SQL Call Stack -----
object line object
handle number name
0x599ffb54 521 package body LBACSYS.LBAC_CACHE
0x59ce5d94 82 package body LBACSYS.LBAC_EVENTS
0x59a05a74 2 anonymous block

Typical Call Stack Trace :

zllcini spefcmpa spefmccallstd pextproc peftrusted psdexsp rpiswu2
psdextp pefccal pefcal pevm_FCAL pfrrun peicnt

2) ORA-4045 related to LBACSYS.LBAC_EVENTS
---------------------------------------

ORA-00604: error occurred at recursive SQL level 1
ORA-04045: errors during recompilation/revalidation of LBACSYS.LBAC_EVENTS
ORA-06508: PL/SQL: could not find program unit being called
ORA-06512: at line 2
ORA-06508: PL/SQL: could not find program unit being called
ORA-06512: at line 2

Solution Description
--------------------

1. Install Oracle Label Security with the Oracle Universal Installer
2. Run $ORACLE_HOME/rdbms/admin/catnools.sql script to disable OLS
3. Optionally de-install 'The Label Security' software



 查看全文

bigboar 发表于:2006.07.26 14:05 ::分类: ( Oracle ) ::阅读:(1273次) :: 评论 (0) :: 引用 (0)

2006 年 07 月 19日, 星期三

数据仓库,杂记三:数据仓库环境

数据仓库中只有单一集成的数据资源,并且因为数据是可访问的,所以与传统数据环境相比,在数据仓库环境中DSS分析员的工作将要容易得多。
数据仓库是一个面向主题的、集成的、非易失的且随时间变化的数据集合,用来支持管理人员的决策。

 查看全文
bigboar 发表于:2006.07.19 22:26 ::分类: ( Oracle ) ::阅读:(1125次) :: 评论 (0) :: 引用 (0)

好多猪窝

今天在google上搜索一下,发现好多猪窝,我们为什么要做猪?我们为什么不做猪?

 查看全文
bigboar 发表于:2006.07.19 12:35 ::分类: ( BoarNote ) ::阅读:(824次) :: 评论 (0) :: 引用 (0)

数据仓库,杂记二:数据仓库设计环境

一、体系结构设计环境的层次
在体系结构设计环境中有四个层次:操作层、原子或数据仓库层、部门层、个体层。
数据操作层----只保存原始数据并且服务于高性能事务处理领域,反映了当前信息值。
数据仓库层----存储不更新的原始数据,此外一些导出数据也在此存放,反映了历史变化信息,与操作层无重叠。
数据部门层----几乎只存放导出数据。也叫数据集市层,OLAP层或多维DBMS层,反映了一段周期的数据统计。
数据个体层----完成大多数启发式分析,主要认为集中在个人PC上运行完成。

 查看全文
bigboar 发表于:2006.07.19 11:06 ::分类: ( Oracle ) ::阅读:(1251次) :: 评论 (0) :: 引用 (0)

数据仓库,杂记一:数据仓库模型

一、蜘蛛网-自然演化体系结构:
起初只是抽取,随后是抽取之上的抽取,接着是在此基础上的再次抽取,如此等等。这种由失控的抽取过程产生的结构被称为“自然演化体系结构”当一个组织以放任自流的态度处理整个硬、软件体系结构时,就会发生这种情况。组织越庞大,越成熟,自然演化体系结构问题就变得越严重。
从总体上看,抽取程序形成了蜘蛛网,这正是自然演化(或“传统系统”)体系结构的另一个名称。
从历史来看,主要出现在银行,商场及其他一些营运公司。

 查看全文
bigboar 发表于:2006.07.19 11:03 ::分类: ( Oracle ) ::阅读:(963次) :: 评论 (0) :: 引用 (0)

小时候的那些秘密

小时候的那些秘密,

当身边知晓这些事的朋友们,

都变成老人,

一个个死去,

以后,

在这个世上,

再也没人知道,小时候的那些秘密。

 查看全文
bigboar 发表于:2006.07.19 09:03 ::分类: ( BoarNote ) ::阅读:(787次) :: 评论 (0) :: 引用 (0)

2006 年 07 月 17日, 星期一

数据库启动关闭命令

汇总如下:

 查看全文

bigboar 发表于:2006.07.17 11:35 ::分类: ( Oracle ) ::阅读:(1359次) :: 评论 (0) :: 引用 (0)

2006 年 07 月 13日, 星期四

转:标准好老婆的作息时间表

6:30 起床(睁开眼睛,首先要检查眼睛是不是保持干净,头发是不是柔顺,整理过后轻轻地亲吻老公,动作虽轻,但目的是把他弄醒)     
 6:35――7:00 煅炼身体(如果老公有“性致”就再来一次,如果老公没性致,就告诉他再睡一会就该起床了,问问他想吃点什么,今天穿哪套衣服?细致到衬衫的颜色,领带的图案) 
 7:00――7:30 做早餐(按照老公的要求做早饭,但基本上老公不会有什么要求,虽然他说随便,早餐却随便不得,花样一定要多,面包、牛奶、鸡蛋,豆浆、油条、米粉,包子、馒头、稀饭,不得有重复)     
 7:30――7:35 打开音响,叫老公起床(一日之计在于晨,这时候的老公是最帅的,可以过去一下子把被子掀开,趁机偷看老公健硕的身体)
 7:35――7:45 看老公穿衣服(千万要记住,不要象妈妈一样命令他穿什么,要在一边轻轻的检讨,衬衫熨烫的还不够平整)     
 7:45――7:55 和老公一起洗漱(有三要:要帮老公挤好牙膏,要帮老公弄好剃须刀,要帮老公淋香水)    
 7:55――8:00 摆早餐上桌(如果老公的胡子还没有刮好,不得有催促之声,因为那是属于他的乐趣)     
 8:00――8:30 吃早餐(要做淑女,老公要吃的你少吃,老公不吃的你也少吃,宁愿浪费,不能狼吞虎咽)     
 8:30――9:00 和老公上班(有汽车的,冬季要提前帮老公着车,开暖风。没汽车的帮着拦计程车,绝不能让老公挤公车)     
 9:00――12:00 上班(努力工作,有事做要做,没事做找出事也要做)     
 12:00――12:10 打电话给老公(问老公上午过得怎么样,中午要吃什么东西……这个不用教了?)
 12:10――12:40 吃营养餐(记住,一定要注意营养的搭配,为了姣好的面容和魔鬼的身材,不得吃太多的的东东,就算吃了别的东东,仅限于水果)     
 12:40――13:00 小栖片刻(为了能做个好老婆,一定要小栖,不得在公司四处看帅哥,要和女同事探讨美容的经验,特色的饮食)     
 13:00――17:30 努力工作(不努力工作怎么赚钱,漂亮衣服,昂贵的化妆品不一定要老公给买)     
 17:30――18:00 下班(一定要电话老公,报告自己已经下班,问老公晚饭是否在家吃,是否和你一起吃,去哪家餐厅吃,如老公有事,不得追问)     
 18:00――19:00 逛街(逛街是女人的必修课,每天必修。其间,不仅要考虑自己穿什么用什么才会讨老公开心,看见合适的东西也要记得帮老公买)     
 19:00――20:00 吃饭(陪老公去他喜欢的餐厅,在他的同事面前,一定要显出对老公的关爱和顺从。并私下研究学习此餐厅的特色菜,保证自己的厨艺不断向四星级厨师的水平靠拢)  20:00――20:30 散步回家(手不能停――一定挽住老公的胳膊;嘴不能停――跟老公发嗲泛酸;眼不能停――不管四周是打架还是撞车,都要爱慕地不断凝视老公英俊的面庞)     
 20:30――22:00 陪老公(老公要看新闻,不得换自己喜欢的电视剧;老公要玩电脑,沏好茶水,帮忙倒烟灰缸;老公要看碟,陪着)  
 22:00――22:20 洗澡(为了一身滑腻的肌肤,一定要认真地洗澡,并把洗澡作为每日的必修课,用各种浴液,浴盐,香精油把自己弄的香喷喷,好吃看的见)    
 22:20 睡觉(被子要先铺好,今天抱小熊扮学生妹,明天穿真丝睡衣搞成熟诱惑……老公没上床前,一定要开着床头暧昧的台灯,钻研时尚杂志)     
 22.30――?满足老公的……

 查看全文
bigboar 发表于:2006.07.13 11:49 ::分类: ( BoarNote ) ::阅读:(1080次) :: 评论 (4) :: 引用 (0)

2006 年 07 月 10日, 星期一

用oracle来背单词

看英文文档的时候,总是遇到很多生词,那些是重点记住,那些属于无所谓的呢?
我的想法是把文档里所有单词入库,只出现一次的,就不用背的,记得记不得就无所谓了,从而过滤一大P单词。

本文使用oracle的sqlldr,utl_file和shell脚本实现,简单,容易实现。


1,把文档单词入库:
1)手工拷贝整个电子文档(比如PDF文档),放入一个文本文件,如a.txt(直接拷贝完接,不用做其他处理)。
2)执行脚本(脚本内容见后文) 命令入库单词:%sh read_word.sh 文本文件名 表名 数据库连接字符串
比如%sh read_word.sh d32643.txt abc bigboar/bigboar@db121

 查看全文
bigboar 发表于:2006.07.10 13:09 ::分类: ( Oracle ) ::阅读:(1641次) :: 评论 (0) :: 引用 (0)