《Oracle数据库应用》课件5.ppt

上传人(卖家):momomo 文档编号:5818462 上传时间:2023-05-11 格式:PPT 页数:50 大小:558.50KB
下载 相关 举报
《Oracle数据库应用》课件5.ppt_第1页
第1页 / 共50页
《Oracle数据库应用》课件5.ppt_第2页
第2页 / 共50页
《Oracle数据库应用》课件5.ppt_第3页
第3页 / 共50页
《Oracle数据库应用》课件5.ppt_第4页
第4页 / 共50页
《Oracle数据库应用》课件5.ppt_第5页
第5页 / 共50页
点击查看更多>>
资源描述

1、第第5 5章章 Oracle Oracle 体系结构体系结构Oracle 体系结构概述体系结构概述1Oracle 服务器的内存结构服务器的内存结构2Oracle 服务器的进程结构服务器的进程结构3Oracle数据库的逻辑结构数据库的逻辑结构5Oracle的多租户环境的多租户环境6Oracle数据库的物理结构数据库的物理结构4数据字典数据字典75.1 Oracle 5.1 Oracle 体系结构概述体系结构概述n 在了解在了解OracleOracle体系结构之前必须掌握两个基本体系结构之前必须掌握两个基本概念概念:l数据库数据库databasedatabase一个数据集合,数据存放在数据文件中。

2、一个数据集合,数据存放在数据文件中。l实例实例(例程例程)instance)instance通俗的讲,通俗的讲,实例就是访问实例就是访问/操作数据库的一种入口操作数据库的一种入口/手段手段;也称作服务器也称作服务器,是用来访问数据库文件集的存储结构及后是用来访问数据库文件集的存储结构及后台进程的集合;台进程的集合;一个数据库可以被多个实例访问。一个数据库可以被多个实例访问。n OracleOracle体系结构的组成体系结构的组成lOracleOracle数据库数据库数据库文件数据库文件相关相关DBMSDBMS的集合的集合lOracleOracle实例实例内存结构内存结构后台进程后台进程n Or

3、acleOracle数据库数据库l是安装在磁盘上的是安装在磁盘上的OracleOracle数据库文件和相关的数据数据库文件和相关的数据库管理系统库管理系统(DBMS)DBMS)的集合。的集合。数据文件数据文件(Data files)(Data files)控制文件控制文件(Control files)(Control files)重做日志文件重做日志文件(Redo log files)(Redo log files)初始化参数文件初始化参数文件(Parameter file)(Parameter file)口令文件口令文件(Password file)(Password file)归档重做日志

4、文件归档重做日志文件(Archived log files)(Archived log files)等等n OracleOracle实例实例l一个实例:一个实例:是连接数据库的入口是连接数据库的入口仅打开并连接至一个数据库仅打开并连接至一个数据库它包括后台进程和内存进程它包括后台进程和内存进程l后台进程包括:后台进程包括:数据库写入进程数据库写入进程(DBWn)(DBWn)日志写入进程日志写入进程(LGWR)(LGWR)日志归档进程日志归档进程(ARCn)(ARCn)检查点进程检查点进程(CKPT)(CKPT)系统监控进程系统监控进程(SMON)(SMON)进程监控进程进程监控进程(PMON)

5、(PMON)l内存结构组织称为系统全局区内存结构组织称为系统全局区(System Global AreaSystem Global Area,SGA)SGA)。SGASGA是由所有用户进程共享的一块内存区域。是由所有用户进程共享的一块内存区域。数据库缓冲存储区数据库缓冲存储区(Database Buffer Cache)(Database Buffer Cache)重做日志缓冲区重做日志缓冲区(Redo Log Buffer)(Redo Log Buffer)共享池共享池(Shared Pool)(Shared Pool)JavaJava池池(Java Pool)(Java Pool)大型池大

6、型池(Large Pool)(Large Pool)等。等。可选内存结构可选内存结构n OracleOracle用户环境用户环境l用户进程发布并执行用户进程发布并执行SQLSQL语句的用户环境语句的用户环境用户进程用户进程(User process)(User process)服务器进程服务器进程(Server process)(Server process)程序全局区程序全局区(Program Global Area(Program Global Area,PGA)PGA)l当用户连接到当用户连接到OracleOracle服务器时,服务器时,OracleOracle便创建一个便创建一个服务器

7、进程与之交互,并代表该用户进程完成与服务器进程与之交互,并代表该用户进程完成与OracleOracle数据库间的交互。数据库间的交互。l程序全局区程序全局区PGAPGA是用户专用的内存结构,存储该用户是用户专用的内存结构,存储该用户连接期间与连接期间与SQLSQL语句执行相关的信息。语句执行相关的信息。5.2 Oracle 5.2 Oracle 服务器的内存结构服务器的内存结构n OracleOracle数据库的两种内存结构数据库的两种内存结构l系统全局区系统全局区(System Global Area(System Global Area,SGA)SGA)一组共享内存结构,用于存放数据库数据

8、和控制信息,以一组共享内存结构,用于存放数据库数据和控制信息,以实现对数据库数据的管理和操作。实现对数据库数据的管理和操作。l程序全局区程序全局区(Program Global Area(Program Global Area,PGA)PGA)是用户进程连接到数据库并创建一个会话时,由是用户进程连接到数据库并创建一个会话时,由OracleOracle服服务器进程分配的专门用于当前用户会话的内存区,该区域务器进程分配的专门用于当前用户会话的内存区,该区域是私有的是私有的。n 1.1.系统全局区系统全局区SGASGAl数据库缓冲存储区数据库缓冲存储区用于存放最近访问的数据块;用于存放最近访问的数据

9、块;大小由初始化参数定义;大小由初始化参数定义;采用采用LRU(Least Recently Used,LRU(Least Recently Used,最近最少使用最近最少使用)算法管理数算法管理数据库缓冲存储区。据库缓冲存储区。l重做日志缓冲区重做日志缓冲区用于存放数据进行的所有更改;用于存放数据进行的所有更改;大小由初始化参数定义;大小由初始化参数定义;当重做日志缓冲区被添满时,由日志写入进程把重做日志当重做日志缓冲区被添满时,由日志写入进程把重做日志缓冲区的内容写到磁盘的重做日志文件中保存。缓冲区的内容写到磁盘的重做日志文件中保存。l共享池共享池用于存放最近执行的用于存放最近执行的SQL

10、SQL语句语句(库高速缓存库高速缓存)和数据字典信息和数据字典信息(数据字典高速缓存数据字典高速缓存);大小由初始化参数定义,可动态变化;大小由初始化参数定义,可动态变化;其大小影响数据库的性能。其大小影响数据库的性能。l大型池大型池为大的内存需求提供内存空间;为大的内存需求提供内存空间;大小由初始化参数大小由初始化参数LARGE_POOL_SIZELARGE_POOL_SIZE定义。定义。lJavaJava池池用于存放用于存放JavaJava代码、代码、JavaJava语句的语法分析表、语句的语法分析表、JavaJava语句的语句的执行方案和支持执行方案和支持JavaJava程序开发;程序开

11、发;大小由初始化参数大小由初始化参数JAVA_POOL_SIZEJAVA_POOL_SIZE定义。定义。n 2.2.程序全局区程序全局区PGAPGAl排序区排序区存放执行存放执行GROUP BYGROUP BY和和ORDER BYORDER BY等包含排序操作所产生的临等包含排序操作所产生的临时数据;时数据;大小由初始化参数大小由初始化参数SORT_AREA_SIZESORT_AREA_SIZE设置。设置。l会话区会话区存储该会话所具有的权限、角色、性能统计等信息。存储该会话所具有的权限、角色、性能统计等信息。l游标状态区游标状态区存储用户会话中当前使用的各游标所处的状态。存储用户会话中当前使

12、用的各游标所处的状态。l堆栈区堆栈区存储该会话中的绑定变量存储该会话中的绑定变量(Bind Variable)(Bind Variable)和会话变量和会话变量(Session Variable)(Session Variable)及及SQLSQL运行时的内存结构信息。运行时的内存结构信息。5.3 Oracle 5.3 Oracle 服务器的进程结构服务器的进程结构n OracleOracle数据库的进程数据库的进程l用户进程用户进程当用户运行一个应用程序时,就建立一个用户进程当用户运行一个应用程序时,就建立一个用户进程l服务器端进程服务器端进程后台进程后台进程w 为所有数据库用户异步完成各种

13、任务为所有数据库用户异步完成各种任务w 用于数据库的各种数据操作用于数据库的各种数据操作服务器进程服务器进程w 处理用户进程的请求处理用户进程的请求n 1.1.后台进程后台进程l数据库写入进程数据库写入进程(DBWn)(DBWn)作用是将已更改的数据块从内存写入数据文件;作用是将已更改的数据块从内存写入数据文件;默认情况下,启动实例时只启动一个数据库写入进程,即默认情况下,启动实例时只启动一个数据库写入进程,即为为DBW0DBW0。l日志写入进程日志写入进程(LGWR)(LGWR)将重做日志缓冲区的数据写入重做日志文件中永久保存;将重做日志缓冲区的数据写入重做日志文件中永久保存;是唯一一个能够

14、读是唯一一个能够读/写重做日志文件的进程。写重做日志文件的进程。l日志归档进程日志归档进程(ARCn)(ARCn)将重做日志的事务变化复制到归档日志文件中;将重做日志的事务变化复制到归档日志文件中;是一个可选进程,默认情况下只有两个归档日志进程是一个可选进程,默认情况下只有两个归档日志进程(ARC0ARC0和和ARC1)ARC1)。l检查点进程检查点进程(CKPT)CKPT)作用是发出检查点作用是发出检查点(Checkpoint)Checkpoint),实现同步数据库的数据实现同步数据库的数据文件、控制文件和重做日志;文件、控制文件和重做日志;是一个可选进程,确保数据文件、控制文件和重做日志文

15、是一个可选进程,确保数据文件、控制文件和重做日志文件的一致性。件的一致性。l系统监控进程系统监控进程(SMON)SMON)在数据库系统启动时执行恢复工作;在数据库系统启动时执行恢复工作;合并空间碎片并释放临时段。合并空间碎片并释放临时段。l进程监控进程进程监控进程(PMON)PMON)监控服务器进程的执行,并在服务器进程失败时清除该服监控服务器进程的执行,并在服务器进程失败时清除该服务器进程;务器进程;用于恢复失败的数据库用户的强制性进程。用于恢复失败的数据库用户的强制性进程。l可在视图可在视图V$BGPROCESSV$BGPROCESS中查询当前启动的后台进程中查询当前启动的后台进程执行如下

16、命令:执行如下命令:conn/orcl as sysdbaconn/orcl as sysdbacolumn description format a30column description format a30set pagesize 200set pagesize 200 select paddr,pserial#,name,description select paddr,pserial#,name,descriptionfrom v$bgprocessfrom v$bgprocessorder by name;order by name;n 2.2.服务器进程服务器进程l专用服务器模式

17、专用服务器模式OracleOracle用于支持客户连接的最简单的进程结构;用于支持客户连接的最简单的进程结构;为每一个连接到实例的客户进程启动一个专门的前台服务为每一个连接到实例的客户进程启动一个专门的前台服务进程;进程;一般只用在密集的批操作,能让服务器进程大部分时间保一般只用在密集的批操作,能让服务器进程大部分时间保持繁忙;持繁忙;当预期客户机连接总数较少,或客户机向服务器发出的请当预期客户机连接总数较少,或客户机向服务器发出的请求持续时间较长时,应采用专用服务器模式;求持续时间较长时,应采用专用服务器模式;l共享服务器模式共享服务器模式少数共享服务器进程执行了许多连接客户的数据访问操作少

18、数共享服务器进程执行了许多连接客户的数据访问操作,很少的进程开销就可以满足大量的用户群;很少的进程开销就可以满足大量的用户群;其组件包括:调度器、共享服务器进程和队列。其组件包括:调度器、共享服务器进程和队列。5.4 Oracle 5.4 Oracle 数据库的物理结构数据库的物理结构n OracleOracle数据库的存储结构数据库的存储结构l物理存储结构物理存储结构是实际的数据存储单元,如文件或数据块等,主要包括:是实际的数据存储单元,如文件或数据块等,主要包括:w 数据文件数据文件w 日志文件日志文件w 控制文件控制文件w 参数文件参数文件n 1.1.数据文件数据文件l是物理存储是物理存

19、储oracleoracle数据库数据的文件;数据库数据的文件;l每一个数据文件只与一个数据库相联系;每一个数据文件只与一个数据库相联系;l数据文件一旦被建立则不能修改其大小,一般位于数据文件一旦被建立则不能修改其大小,一般位于 目录目录“ORACLE_BASEoradataORACLE_SIDORACLE_BASEoradataORACLE_SID”;l一个表空间可包含一个或多个数据文件。一个表空间可包含一个或多个数据文件。n 2.2.重做日志文件重做日志文件l用于记录所有对数据库数据的修改,以备恢复数据用于记录所有对数据库数据的修改,以备恢复数据时使用;时使用;l每一个数据库至少包含两个日志

20、文件组;每一个数据库至少包含两个日志文件组;l日志文件组以循环方式进行写操作;日志文件组以循环方式进行写操作;日志开关日志开关(Log SwitchLog Switch)是为实现日志文件组的循环使用而是为实现日志文件组的循环使用而设置的。出现日志开关的情况如下:设置的。出现日志开关的情况如下:w 当一个日志文件组被填满当一个日志文件组被填满w 关闭数据库时关闭数据库时w DBADBA手动转移日志开关手动转移日志开关日志文件写操作图示:日志文件写操作图示:Log File 1Log File 2Member 2.1Member 1.1lOracleOracle数据库有两种运行模式:数据库有两种运

21、行模式:归档日志归档日志(ARCHIVELOG)(ARCHIVELOG)模式模式w 所有的事务重做日志都将保存所有的事务重做日志都将保存w 在一个重做日志被覆盖前为其建立一个副本在一个重做日志被覆盖前为其建立一个副本w 在重做日志归档工作完成之前,在重做日志归档工作完成之前,OracleOracle不对其进行覆盖不对其进行覆盖w 数据库运行在数据库运行在ARCHIVELOGARCHIVELOG模式时可能增加系统开销并成为系模式时可能增加系统开销并成为系统的瓶颈统的瓶颈非归档日志非归档日志(NOARCHIVELOG)(NOARCHIVELOG)模式模式w 为系统默认模式为系统默认模式w 系统不保

22、留旧的重做日志系统不保留旧的重做日志w 有限的恢复能力有限的恢复能力n 3.3.控制文件控制文件l是一个较小的二进制文件,用于描述数据库结构;是一个较小的二进制文件,用于描述数据库结构;l描述信息如下:描述信息如下:数据库建立的日期数据库建立的日期数据库名数据库名数据库中所有数据文件和日志文件的文件名及路径数据库中所有数据文件和日志文件的文件名及路径恢复数据库时所需的同步信息恢复数据库时所需的同步信息l在打开和存取数据库时都要访问该文件;在打开和存取数据库时都要访问该文件;l一个实例只能访问一个数据库,通过控制文件在实一个实例只能访问一个数据库,通过控制文件在实例和数据库之间建立关联;例和数据

23、库之间建立关联;l数据库运行时,控制文件被不断更新。数据库运行时,控制文件被不断更新。n 4.4.参数文件参数文件l一个文本文件,可直接使用操作系统下的文本编辑一个文本文件,可直接使用操作系统下的文本编辑器对其进行修改;器对其进行修改;l该文件只在建立数据库或启动实例时才被访问,在该文件只在建立数据库或启动实例时才被访问,在修改该文件之前必须关闭实例;修改该文件之前必须关闭实例;l其作用是:其作用是:确定存储结构的大小确定存储结构的大小设置数据库的全部缺省值设置数据库的全部缺省值设置数据库的范围设置数据库的范围设置数据库的各种物理属性设置数据库的各种物理属性优化数据库性能。优化数据库性能。n

24、5.5.口令文件口令文件l存放具有存放具有SYSDBASYSDBA或或SYSOPERSYSOPER权限的用户信息权限的用户信息l初始特权用户为初始特权用户为SYSSYSn 6.6.警告文件警告文件l由连续的消息和错误信息组成由连续的消息和错误信息组成l查看查看OracleOracle内部错误也可以监视特权用户的操作内部错误也可以监视特权用户的操作l应从文件尾部开始查看应从文件尾部开始查看n 7.7.后台进程跟踪文件后台进程跟踪文件l用于记载后台进程的警告或错误信息用于记载后台进程的警告或错误信息n 8.8.服务器进程跟踪文件服务器进程跟踪文件l用于跟踪用于跟踪SQLSQL语句,诊断语句,诊断S

25、QLSQL语句的性能,并做出相语句的性能,并做出相应的调整应的调整5.5 Oracle 5.5 Oracle 数据库的逻辑结构数据库的逻辑结构n 数据库的逻辑结构是数据库的逻辑结构是面向用户面向用户的的n OracleOracle的逻辑结构由一个或多个表空间组成:的逻辑结构由一个或多个表空间组成:l每个表空间由多个段每个表空间由多个段segmentsegment组成组成l每个段由多个区间每个段由多个区间extentextent组成组成l每个区间由多个数据块每个区间由多个数据块blockblock组成组成l每个数据块对应多个物理磁盘块每个数据块对应多个物理磁盘块Tablespace逻逻辑辑结结构

26、构图图示示Database BlocksExtent84KSegment112KDatabaseDataFilen 1.1.表空间表空间(Tablespace)(Tablespace)l是数据库的逻辑组成部分,对应一个或多个数据文是数据库的逻辑组成部分,对应一个或多个数据文件,其大小是所对应数据文件大小的总和;件,其大小是所对应数据文件大小的总和;l一个一个OracleOracle数据库中至少要包含一个数据库中至少要包含一个SYSTEMSYSTEM表空间表空间和一个和一个SYSAUXSYSAUX表空间;表空间;l一般还包含数据表空间、索引表空间、临时表空间一般还包含数据表空间、索引表空间、临时

27、表空间和和UNDOUNDO表空间等表空间;表空间等表空间;l一个表空间只能属于一个数据库。一个表空间只能属于一个数据库。System TablespaceData TablespaceTableTableTableTableTableTableTableIndexIndexIndexIndexTableTableTableTableTableIndexIndexIndexIndexTableTableTableClusterTableTableIndexIndexIndexClusterClusterDBFiles1DBFiles2DBFiles3表表空空间间图图示示l系统表空间系统表空间SY

28、STEMSYSTEM表空间表空间w 每个数据库至少要有一个表空间,即每个数据库至少要有一个表空间,即SYSTEMSYSTEM表空间,用于存表空间,用于存放系统信息。放系统信息。SYSAUXSYSAUX表空间表空间w Oracle 10gOracle 10g新增加的辅助系统表空间新增加的辅助系统表空间l非系统表空间非系统表空间撤销表空间撤销表空间UNDOTBS1UNDOTBS1w 用于保存事务回退用于保存事务回退(Rollback)Rollback)信息信息用户表空间用户表空间USERSUSERSw 用于存放用户的私有信息用于存放用户的私有信息临时表空间临时表空间TEMPTEMPw 用于存放临时

29、表和临时数据用于存放临时表和临时数据l表空间的实际应用表空间的实际应用建议将不同类型的数据部署到不同的表空间,以提高数据建议将不同类型的数据部署到不同的表空间,以提高数据访问性能,便于数据管理、备份、恢复等操作;访问性能,便于数据管理、备份、恢复等操作;一个一个OracleOracle数据库应用方案应该包括专用的数据表空间数据库应用方案应该包括专用的数据表空间(可可能需要建立多个能需要建立多个)、索引表空间、索引表空间(可能需要建立多个可能需要建立多个)、临时、临时表空间;表空间;表空间对应的数据文件分开存储到不同的磁盘上;表空间对应的数据文件分开存储到不同的磁盘上;SYSTEMSYSTEM表

30、空间应该只包含系统数据表空间应该只包含系统数据(如数据字典如数据字典)。l表空间的状态和工作模式表空间的状态和工作模式OracleOracle允许控制基于表空间的数据库数据的可用性,表空允许控制基于表空间的数据库数据的可用性,表空间可以是脱机或联机的;间可以是脱机或联机的;联机表空间中的数据对用户是可用的;联机表空间中的数据对用户是可用的;脱机表空间中的数据对用户是不可用的;脱机表空间中的数据对用户是不可用的;一个新的表空间创建时,总是一个可读写表空间;一个新的表空间创建时,总是一个可读写表空间;当一个表空间的数据不能被改变时当一个表空间的数据不能被改变时(如数据仓库中的历史数如数据仓库中的历

31、史数据据),可将其设置为只读表空间;,可将其设置为只读表空间;只读表空间能节约数据库备份时间。只读表空间能节约数据库备份时间。l如何查看表空间情况?如何查看表空间情况?CONN /orcl AS SYSDBASELECT tablespace_name,block_size,status,segment_space_managementFROM dba_tablespaces;n 2.2.段段(Segment)(Segment)l段由一个或多个区间组成,用于存储特定对象的数段由一个或多个区间组成,用于存储特定对象的数据;据;lOracleOracle以区间为单位为段分配空间;以区间为单位为段分

32、配空间;l段不可以跨表空间,一个段只能属于一个表空间。段不可以跨表空间,一个段只能属于一个表空间。但段可以跨表空间文件;但段可以跨表空间文件;l常将各种形式的数据表对应的段称为数据段。常将各种形式的数据表对应的段称为数据段。l一个一个OracleOracle数据库中的常见段可归为数据库中的常见段可归为4 4种:种:数据段数据段索引段索引段临时段临时段回退段回退段lOracleOracle提供十几种段类型:提供十几种段类型:表表:每一个表都有一个数据段,段名即表的名字每一个表都有一个数据段,段名即表的名字表分区表分区:表数据可分区存储在不同的表空间表数据可分区存储在不同的表空间簇簇:将多个表的数

33、据按照关键字存储在一起将多个表的数据按照关键字存储在一起按索引组织的表按索引组织的表:索引关键字和非关键字数据存储在一起索引关键字和非关键字数据存储在一起LOBLOB段段:为大对象类型为大对象类型(LOB)LOB)数据提供的存储空间数据提供的存储空间嵌套表嵌套表:嵌套表的数据存放在单独的嵌套表段中嵌套表的数据存放在单独的嵌套表段中索引索引:存储表表记录关键字及对应记录的存储表表记录关键字及对应记录的ROWIDROWID索引分区索引分区:将索引数据分区,改善对索引的访问性能将索引数据分区,改善对索引的访问性能临时段临时段:存放存放SQLSQL语句操作的数据语句操作的数据回退段回退段:存放数据更新

34、事务中更新前的数据存放数据更新事务中更新前的数据n 3.3.区间区间(Extent)(Extent)l表空间中的一片连续空间称为区间;表空间中的一片连续空间称为区间;l区间是区间是OracleOracle进行空间分配的逻辑单元,是进行空间分配的逻辑单元,是OracleOracle数据库的最小存储分配单元;数据库的最小存储分配单元;l一个区间一定属于某个段;一个区间一定属于某个段;lOracleOracle根据段的存储特性确定区间的大小;根据段的存储特性确定区间的大小;l属于段的区间在段删除时才成为自由空间;属于段的区间在段删除时才成为自由空间;l区间不可以跨数据文件,只能存在于某一个数据文区间

35、不可以跨数据文件,只能存在于某一个数据文件中。件中。n 4.4.数据块数据块(Data Block)(Data Block)l也称为也称为OracleOracle块,是块,是OracleOracle在数据文件上执行在数据文件上执行I/OI/O操操作的最小单位;作的最小单位;l尺寸为尺寸为OSOS磁盘块大小的整数倍,磁盘块大小的整数倍,2/4/8/16/322/4/8/16/32KBKB;l数据块不写满数据。数据块不写满数据。数数据据块块图图示示l设计策略:设计策略:以空间换取时间,改善系统性能以空间换取时间,改善系统性能。头部:保存数据块的地址、表目录、行目录以及为事务保头部:保存数据块的地址

36、、表目录、行目录以及为事务保留的空间留的空间数据:在数据块的底部数据:在数据块的底部空闲区:在中间,保留用于以后的数据更新空闲区:在中间,保留用于以后的数据更新数数据据库库结结构构数据文件数据文件日志文件日志文件控制文件控制文件参数文件参数文件物理结构物理结构表空间表空间段段区间区间数据库块数据库块逻辑结构逻辑结构n OracleOracle数据库中的数据逻辑存储在表空间中,数据库中的数据逻辑存储在表空间中,物理存储在数据文件中。物理存储在数据文件中。5.6 Oracle5.6 Oracle的多租户环境的多租户环境n 多租户环境多租户环境l在在Oracle12cOracle12c之后引入之后引

37、入l允许一个数据库容器允许一个数据库容器CDBCDB承载多个可拔插数据库承载多个可拔插数据库PDBPDBn 一个CDB数据库容器包含的组件lROOT组件lSEED组件lPDBsn Oracle鼓励安装时使用PDB技术l可以降低成本l便于数据与代码的分离l管理和监控l管理职责分离5.7 5.7 数据字典数据字典数据库创建期间,数据库创建期间,OracleOracle服务器在数据文件中服务器在数据文件中创建两种类型的对象:创建两种类型的对象:n 1.1.数据字典数据字典l存储数据库自身信息、用于内部系统处理的其他对存储数据库自身信息、用于内部系统处理的其他对象、数据库方案对象的定义等信息;象、数据

38、库方案对象的定义等信息;l这些信息一般是在发布这些信息一般是在发布DDLDDL语句后由系统进行维护;语句后由系统进行维护;l是相对静态的信息。是相对静态的信息。l包括:包括:useruser视图:名称以视图:名称以user_user_为前缀为前缀allall视图:名称以视图:名称以all_all_为前缀为前缀dbadba视图:名称以视图:名称以dba_dba_为前缀为前缀n 2.2.动态性能监视视图动态性能监视视图l名称以名称以V$V$为前缀,系统管理员用户为前缀,系统管理员用户SYSSYS可以访问;可以访问;l在数据库打开和使用时被不断地进行更新,内容主在数据库打开和使用时被不断地进行更新,

39、内容主要与性能有关。要与性能有关。n oracleoracle体系庞大,学习它必须要了解其架构:体系庞大,学习它必须要了解其架构:l物理结构物理结构(由控制文件、数据文件、重做日志文件、由控制文件、数据文件、重做日志文件、参数文件、归档文件、密码文件组成参数文件、归档文件、密码文件组成)l逻辑结构逻辑结构(表空间、段、区间、块表空间、段、区间、块)l内存结构内存结构(SGA(SGA、PGA)PGA)l后台进程后台进程(数据写进程、日志写进程、系统监控、进数据写进程、日志写进程、系统监控、进程监控、检查点进程、归档进程、服务进程、用户程监控、检查点进程、归档进程、服务进程、用户进程进程)lOra

40、cleOracle实例实例(由由SGASGA内存结构和用于管理数据库的后内存结构和用于管理数据库的后台进程组成台进程组成)lOracleOracle的多租户环境的多租户环境l数据字典数据字典小结小结Oracle数据库数据库 拥有者模式模式表表视图视图123序序列列用户视图用户视图 物理文件物理文件 表空间表空间 逻辑结构逻辑结构 数据段数据段区间区间 数据块数据块 物理块 物理结构物理结构数据文件控制文件重做日志文件 索引段索引段用户进程、用户进程、Oracle进程、物理存储文件之间的关系进程、物理存储文件之间的关系n 几个容易混淆的概念:几个容易混淆的概念:数据库名、实例名、数数据库名、实例

41、名、数据库服务名据库服务名l数据库名数据库名数据库名就是一个数据库的标识,用参数数据库名就是一个数据库的标识,用参数DB_NAMEDB_NAME表示,如表示,如果一台机器上装了多个数据库,那么每一个数据库都有一果一台机器上装了多个数据库,那么每一个数据库都有一个数据库名。个数据库名。在创建数据库时就应考虑好数据库名,且在创建完数据库在创建数据库时就应考虑好数据库名,且在创建完数据库后,数据库名不宜修改,即使要修改也会很麻烦。后,数据库名不宜修改,即使要修改也会很麻烦。l实例名实例名实例名用于和操作系统进行联系的标识,即数据库和操作实例名用于和操作系统进行联系的标识,即数据库和操作系统之间的交互

42、用的是数据库实例名。实例名也被写入参系统之间的交互用的是数据库实例名。实例名也被写入参数文件中,该参数为数文件中,该参数为instance_nameinstance_name,在,在winntwinnt平台中,实平台中,实例名同时也被写入注册表。例名同时也被写入注册表。数据库名和实例名可相同也可不同。数据库名和实例名可相同也可不同。在一般情况下,数据库名和实例名是一对一的关系,但如在一般情况下,数据库名和实例名是一对一的关系,但如果在果在oracleoracle并行服务器架构并行服务器架构(即即oracleoracle实时应用集群实时应用集群)中,中,数据库名和实例名是一对多的关系。数据库名和

43、实例名是一对多的关系。实例名与实例名与ORACLE_SIDORACLE_SIDw 两者都是两者都是oracleoracle实例,但有区别。实例,但有区别。instance_nameinstance_name是是oracleoracle数据库参数,而数据库参数,而ORACLE_SIDORACLE_SID是操作系统的环境变量。是操作系统的环境变量。ORACLD_SIDORACLD_SID用于与操作系统交互,也就是说,从操作系统的用于与操作系统交互,也就是说,从操作系统的角度访问实例名,必须通过角度访问实例名,必须通过ORACLE_SIDORACLE_SID。在。在winntwinnt平台,平台,ORACLE_SIDORACLE_SID还存在于注册表中。还存在于注册表中。w ORACLE_SIDORACLE_SID必须与必须与instance_nameinstance_name的值一致。的值一致。l数据库服务名数据库服务名其参数名是其参数名是SERVICE_NAMESERVICE_NAME。若数据库有域名,则数据库服。若数据库有域名,则数据库服务名就是全局数据库名;否则,数据库服务名与数据库名务名就是全局数据库名;否则,数据库服务名与数据库名相同。相同。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(《Oracle数据库应用》课件5.ppt)为本站会员(momomo)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|