网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>数据库技术>>Oracle技术>>Oracle开发>查看文档  
  教你正确认识oracle数据库的结构组件     
  文章作者:未知  文章来源:赛迪网技术社区  
  查看:156次  录入:管理员--2007-11-15  
 

本文中我们将列举一些实例来对oracle数据库组件的一些问题做出缜密的解析。

1、由哪些组件组成;

2、建立连接时需要哪些组件;

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并不每个进程都分配到有效的地址,即并不是每个进程都是必须的。

1 2 下一页>>


sql>select*fromv$bgprocesswherepaddr<>'00'

将显示所有必需的进程。

establishingaconnectionandcreatingasession

连接到oracle实例包括建立一个用户连接及创建会话。

sql>select*fromv$controlfiles;--显示现系统下由几个控制文件组成。

sql>select*fromv$datafile;--显示由几个数据文件组成。

sql>select*fromv$logfile;--显示由几个日志文件组成。

oraclememorystructure(内存结构)

由两部分组成:

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不能单独设置大小。

 
 
上一篇: 教你轻松解决不能一次创建多表的问题    下一篇: 教你轻松掌握如何把数据导入不同的表空间
  相关文档
怎样在oracle中执行一次基本的快照复制 04-29
深入讲解调整oracle sga大小的解决方法 04-07
oracle数据库维护常用sql语句集合(2) 07-02
经验总结:一次oracle数据库冷备份恢复过程 08-18
解决表空间填充满时出现的ora-1652错误 (1) 04-16
快速掌握重启oracle数据库的操作步骤 04-17
oracle数据库等待事件说明及处理方法 (1) 04-16
查看本用户下的各种对象的SQL脚本 01-15
轻松掌握oracle数据库where条件执行顺序 04-21
讲解七种数据库中select top的使用方法 06-02
Oracle数据库的四种启动方式 09-29
oracle数据库中的timestamp和date类型 05-08
超大型oracle数据库应用系统的设计方法 (1) 05-04
oracle数据库连接池下如何跟踪终端会话 (1) 04-16
如何在SQL Server中构建并利用UDF表格 07-07
讲解用于描述数据库中需要存储的实体语言 03-14
教你手工创建数据库的全部脚本及说明 05-13
关于Oracle进程结构及后台进程简介 04-11
关于Oracle中表外键更名规则详细介绍 04-11
如何对系统默认的约束名和索引名重命名 02-29
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
厦门(总部):13616026886 福州:0591-87655121
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息