交友约会| 杂志期刊| 小说| 论坛| 电影下载| 两性知识| 电脑知识| 汽车| 旅游| 收藏

从内部开始 认识Oracle数据库结构组件

来源:Csdn博客 作者:相濡以沫 出处:综艺读书 2007-07-21 进入讨论组
关 键 词:java  

【引自相濡以沫的博客】Oracle两部分:实例和数据库

实例由以下组成:SGA,Sharedpool,Databasebuffercache,Redologbuffercache。数据库由物理文件组成,其中必须有的文件是:数据文件,控制文件,重做日志。另外还有:参数文件,口令文件,归档日志文件(这三个不是必须的)。

用户建立连接后,启动一个服务器进程,用来将来代替用户进程完成SQLCOMMAND,再通过Oracle实例实现对数据库的相关文件进行改变(数据进行读取或修改)。

用户进程不可以直接操作数据库,而必须通过建立连接后,再通过服务器进程来完成。

OracleSERVER由两个部分组成,

1、INSTANCE:由内存结构和后台进程组成。

2、DATABASE:由数据文件,日志文件和控制文件组成<这三个文件是必需的>。

CONTROLFILE是用来连接实例和DATABASE:

sql>SHUTDOWNIMMEDIATE 

sql>STARTUPNOMOUNT

sql>ALTERDATABASEMOUNT

以上三个过程就是通过CONTROLFILE来连接实例和数据库。

sql>ALTERDATABASEOPEN:在OPEN的过程对DATABASE的数据文件和重做日志文件进行一次性的验证,验证它们的状态。

OracleINSTANCE:存取数据库的一个手段。

一个DATABASE与INSTANCE之间是1:N的关系,一个INSTANCE只能操作一个DATABASE,由内存结构(共享池,BUFFERCACHE,REDOLOGBUFFERCACHE)及相应的进程结构组成(PMON<程序监控进程>,SMON<系统监控进程>,CKPT<检查点进程>)。

sql>SHOWSGA---显示DATABASE内存结构信息 

sql>SETWRAPOFF

sql>SETLINESIZE200

以上这两个是设置行宽。

sql>SELECT*FROMV$BGPROCESS;

将看到在这个系统中所有可能使用到的进程,其中PADDR并不每个进程都分配到有效的地址,即并不是每个进程都是必须的。

sql>SELECT*FROMV$BGPROCESSWHEREPADDR<>'00'

将显示所有必需的进程。

ESTABLISHINGACONNECTIONANDCREATINGASESSION

连接到Oracle实例

包括建立一个用户连接及创建会话。

sql>SELECT*FROMV$CONTROLFILES;--显示现系统下由几个控制文件组成。

sql>SELECT*FROMV$DATAFILE;--显示由几个数据文件组成。

sql>SELECT*FROMV$LOGFILE;--显示由几个日志文件组成。

Oracle MEMORY STRUCTURE(内存结构)

由两部分组成:

1、SGA是动态的,其最大值由SGA_MAX_SIZE指定,SGA的内存由SGACOMPONENTS来动态调整。

2、PGA是不共享的,即其包含的信息是不一样的,有两个可享的内存可以由SGA配置:

(1)LARGEPOOL 

(2)JAVAPOOL

sql>SHOWPARAMETERSHARED

sql>SHOWPARAMETERDB_CACHE

sql>SHOWPARAMETERLOG

以上三个命令是用于查看相关内存信息。

sql>ALTERSYSTEMSETDB_CACHE_SIZE=20M; 

所有内存大小总和不能大于SGA_MAX_SIZE的值,当提示信息出现?号或乱码时,是由于系统的语言问题。

可以通过ALTERSESSIONSETNLS_LANGUAGE='AMERICAN'或ALTERSESSIONSETNLS_LANGUAGE="SIMPLE CHINESE"。

SHAREDPOOL(共享池)

(1)LIBRARYCACHE库缓存;

(2)DATADICTIONARYCACHE数据字典缓存,有的地方又称行CACHE,由SHARED_POOL_SIZE指定大小。

sql>ALTERSYSTEMSETSHARED_POOL_SIZE=64M; 

LIBRARYCACHE主要为提高代码的共享,存储的是最近使用的SQL和PL/SQL代码。

(1)用最近最少使用(LRU)算法;

(2)包括两个结构1:共享SQL代码;2:共享PL/SQL代码;

(3)不可直接定义,而由SHAREDPOOLSIZE决定。

DATADICTONARYCACHE。

如:SQL>SELECT*FROMAUTHORS;

执行此命令的过程是:首先确认是否存在AUTHORS,然后确认字段存不存在,再检查语法,最后验证权限,而这些信息就属于DATADICTIONARYCACHE的内容。其包含的信息有:DATABASEFILES,表,索引,字段,用户,权限和其他数据库对象。

(1)主要用来改变系统的感应时间和性能。

(2)通过改变SHAREDPOOL大小来设置,DATADICTIONARYCACHE不能单独设置大小。

更多文章 更多内容请看Linux数据库宝典  Oracle 10g基础应用  城域网专题专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
综艺读书宗旨
相关专题
·数据库专栏 (4484篇文章)
·数据库处理专题 (7265篇文章)
·城域网专题 (6697篇文章)
·数据库安全技术专题 (11067篇文章)
·数据库安装与卸载 (8970篇文章)
·Oracle 10g基础应用 (4069篇文章)
·Linux数据库宝典 (11269篇文章)
·数据库相关文章 (4484篇文章)
·数据库体系架构 (972篇文章)
热点标签: java  
最新技术文档
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
百度推荐,商机无限
搜索您感兴趣的内容
Web 全站
综艺电脑频道编辑信箱  告诉我们您想看的专题或文章

友情互链 | 收藏本站 | 联系我们 | 在线留言 | 京ICP备08008424号|