您的位置:首页 > 数据库 > Oracle

Oracle 笔记(一)、安装及体系结构

2008-10-06 22:52 309 查看
一、安装

安装过程中的几个关键点:全局数据库名、系统标识符(SID,实例名)、服务器参数文件(SPFILEXXX(实例名).ORA)。

监听器的配置: server\NETWORK\ADMIN 文件夹下的参数文件(listener.ora,tnsnames.ora)。

二、Oracle 体系结构



1、实例

实例是后台进程和内存结构的集合,必须启动实例才能访问数据库中的数据,一个实例只能打开并使用一个数据库。

实例启动时,将分配一个系统全局区(SGA)并启动一系列的后台进程,每个后台进程执行不同的任务。

2、数据库

Oracle 数据库物理上指一组操作系统文件(数据文件),逻辑上指数据库创建后的逻辑关系。

3、会话

会话时用户与 Oracle 服务器的单个连接,建立连接时创建,断开连接时关闭。

当一个数据库用户同时对服务器产生多个连接时,则为该用户创建多个并行会话。

4、内存

Oracle 内存结构包含以下两个内存区:

系统全局区(SGA):实例启动时分配该内存区。

程序全局区(PGA):服务器进程启动时分配该内存区。

A、系统全局区(SGA,System Global Area 共享全局区)

用来存储数据库信息,并由服务器进程共享。

按作用可分为:

● 共享池(Shared Pool)【操作共享】

共享池包括 库缓存区(Shared SQL & PL/SQL) 和 数据字典缓存。

a.库缓存区:包括最近执行的 SQL 解释版本,PL/SQL 过程、函数等程序单元的编译版本,方便用户共享调用,节省开销及提高进程速度。

b.数据字典缓存:把频繁用到的数据字典(表,列,索引、权限等信息)存储到内存中,能减少 SQL语句引起的性能上冲突。

● 数据缓冲区(Data Buffer Cache)【记录共享】

主要作用是将需要读取或者存取的数据块进行一个缓冲,从而减少太过频繁的对磁盘进行读和写的操作。所有同时上线的用户都可以共享这个区域。进程在处理一个查询时,优先查找内存中是否有所需的数据块,提高了读取速度。

● 日志缓冲区(Redo Log Buffer)

该区域是将所有记录数据操作的信息都存储在该缓冲中,在适当的时机由LGWR进程将他们写入到磁盘的日志文件中。

● 大共享区(Large Pool)

Oracle 可选特征,主要用于多线程。

B、程序全局区(Program Global Area)

PGA是数据库服务器内存中为单个用户进程分配的专用的内存区域,是用户进程私有的,不能共享。

它由用户连接到数据库并创建一个会话时自动分配,当会话结束后自动释放。



5、进程

用户进程:数据库用户请求连接 Oracle 服务器时启动。

服务器进程:用户建立会话连接时启用,处理一个或多个用户进程请求。

后台进程:Oracle 实例启动时启动,提高系统效能和协调多用户。

数据写进程(DBWR):负责将块缓冲区的数据写入到磁盘中的数据文件里。

日志写进程(LGWR):将重做日志缓冲区的信息写入到重做日志文件中。

系统监控(SMON):如果数据库遇到不正常关闭的情况,比如突然断电等。那么再次启动数据库时SMON进程进行必要的 数据修复操作。

进程监控(PMON):负责在一个Oracle进程失败时清理资源,用于恢复失败的用户进程。

检查点进程(CKPT):负责在每当缓冲区中的更改永久地纪录在数据库中时,更新控制文件和数据文件中的数据库状态信息,确保数据库的同步。

归档进程(ARCH):在每次日志切换时把已满的日志组进行备份归档,有归档方式和非归档方式(默认)。



6、数据库逻辑结构

数据库、表空间(tablespace)、段(segment)、区(extent)、数据块(block)



7、数据库物理结构

数据文件:用于存放所有的数据(*.DBF),每个数据库有一组数据文件,一个数据文件只能对应一个数据库。

日志文件:记录了对数据库进行的所有操作(*.LOG),主要用于数据库故障时恢复。

控制文件:记录了数据库所有文件的控制信息(*.CTL)。

语法查看:

C:\> sqlplus "sys/test1234 as sysdba"

SQL> DESC v$controlfile

SQL> SELECT status,name FROM v$controlfile

SQL> DESC v$datafile

SQL> SELECT file#,status,name FROM v$datafile

SQL> DESC v$logfile

SQL> SELECT member FROM v$controlfile

ps.内容参考:

Oracle.10G.数据库系统教程.中科院培训老师讲授

Oracle学习笔记二,Oracle体系结构 http://www.lurenjia.net/article.asp?id=189

Oracle 9i数据库服务器的体系结构 http://www.it-waibao.com/IToutsourcing/support/database/Oracle/catalogTreeID100_folderID520_infoID10452.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: