1.2 shared pool原理
Shared Pool是Oracle SGA设置中最复杂也是最重要的一部分内容,Oracle通过Shared Pool来实现SQL共享、减少代码硬解析等,从而提高数据库的性能。在某些版本中,如果设置不当,Shared Pool可能会极大影响数据库的正常运行。
在Oracle 7之前,Shared Pool并不存在,每个Oracle连接都有一个独立的Server进程与之相关联,Server进程负责解析和优化所有SQL和PL/SQL代码。典型的,在OLTP环境中,很多代...
分类:
其他好文 时间:
2014-08-02 15:36:03
阅读次数:
354
X$KSMSP视图
Shared Pool 的空间分配和使用情况,可以通过一个内部视图来观察,这个视图就是X$KSMSP。
X$KSMSP的名称含义为: [K]ernal [S]torage [M]emory Management [S]GA Hea[P]其中每一行都代表着Shared Pool中的一个Chunk。以下是x$ksmsp的结构:
12:03:45 sys@felix SQL>desc x$ksmsp
Name Null? Type...
分类:
其他好文 时间:
2014-08-02 15:35:13
阅读次数:
274
诊断和解决ORA-04031 错误
Shared Pool的主要问题在根本上只有一个,就是碎片过多带来的性能影响。
1.2.7.1 什么是ORA-04031错误
当尝试在共享池分配大块的连续内存失败(很多时候是由于碎片过多,而并非真是内存不足)时,Oracle首先清除共享池中当前没使用的所有对象,使空闲内存块合并。如果仍然没有足够大的单块内存可以满足需要,就会产生ORA-04031错误。
如下一段伪代码来描述04031错误的产生:
Scan free lists --扫描Free...
分类:
其他好文 时间:
2014-08-02 15:34:23
阅读次数:
317
1.1 buffer pool原理
Buffer Cache是Oracle SGA中一个重要部分,通常的数据访问和修改都需要通过BufferCache来完成。当一个进程需要访问数据时,首先需要确定数据在内存中是否存在,如果数据在Buffer中存在,则需要根据数据的状态来判断是否可以直接访问还是需要构造一致性读取;如果数据在Buffer中不存在,则需要在Buffer Cache中寻找足够的空间以装载需要的数据,如果Buffer Cache中找不到足够的内存空间,则需要触发DBWR去写出脏数据,释放Buff...
分类:
其他好文 时间:
2014-08-02 12:50:33
阅读次数:
337
想要在 Eclipse中添加 Courier New 字体,但是没有在eclipse->windows->preferences->general->apperance->colors and fonts->basic->text fonts 中找到这个字体,但是这个字体我以前在系统字体中看到过,怎...
分类:
系统相关 时间:
2014-08-02 01:27:32
阅读次数:
376
点击Preferences->SettingsUser,修改配置文件如下:{
"color_scheme":"Packages/ColorScheme-Default/Monokai.tmTheme",
"fallback_encoding":"UTF-8",
"font_size":14,
"tab_size":2,
"translate_tabs_to_spaces":true,
"word_wrap":true,
"trim_trailing_white_spa..
分类:
其他好文 时间:
2014-08-01 20:08:13
阅读次数:
227
开MyEclipse 6.0.1,然后“window”→“Preferences” 2. 选择“java”,展开,“Editor”,选择“Content Assist”。 3. 选择“Content Assist”,然后看到右边,右边的“Auto-Activation”下面的“Auto Activ....
分类:
系统相关 时间:
2014-08-01 19:20:02
阅读次数:
310
C++ 98的 std::auto_ptr已经被彻底遗弃了,取而代之的是unique_ptr、shared_ptr与weak_ptr。大部分时候我们自己手动申请内存方式内存都是没有问题的,问题是如果程序很大了之后,一个复杂的对象,多次拷贝的代价非常高,很多地方都会使用到,只存在一份拷贝显然是最好的,...
分类:
编程语言 时间:
2014-08-01 13:27:51
阅读次数:
384
在MyEclipse下编程时,保存的时候,如果出现如下图所示错误:
首先说明MyEclipse的默认编译语言是"ISO-8859-1",这个语言不支持中文,所以如果编辑的程序含有中文而且编译语言是"ISO-8859-1“则就会出现这个问题!
解决方很简单,只要把默认编译语言改成支持中文的就OK了。
改法如下:
window --> Preferences --> G...
分类:
系统相关 时间:
2014-08-01 10:56:31
阅读次数:
396
1.备份源文件;root@localhost:~#cd/etc/apt/
root@localhost:/etc/apt#ls
apt.conf.dsources.listsources.list.20140731bktrustdb.gpgtrusted.gpg.d
preferences.dsources.list~sources.list.dtrusted.gpg
root@localhost:/etc/apt#mvsources.listsources.list.20140731bk2.创..
分类:
其他好文 时间:
2014-07-31 21:09:10
阅读次数:
190