2016 - 2024

感恩一路有你

oracle归档日志满怎么办 oracle数据库应用结构包括?

浏览量:1969 时间:2023-09-22 16:26:33 作者:采采

oracle数据库应用结构包括?

Oracle数据库的体系结构除了四个方面:数据库的物理结构、逻辑结构、内存结构及进程。

1.物理结构

物理数据库结构是由组成数据库的操作系统文件所做出决定,Oracle数据库文件除了:

数据文件(DataFile)

数据文件用来存储数据库中的全部数据,比如数据库表中的数据和索引数据.正常情况还以为*.dbf格式,例如:userCIMS.dbf。

日志文件(Redo Log File)

日志文件应用于记录数据库所做的完全变更手续(如增加、删掉、改)、以备万一在系统发生故障时,用它对数据库并且完全恢复。名字大多数为Log*.dbf格式,如:Log1CIMS.dbf,Log2CIMS.dbf。

完全控制文件(Control File)

每个Oracle数据库都有吧相对应的控制文件,它们是较大的二进制文件,主要是用于记录数据库的物理结构,如:数据库名、数据库的数据文件和日志文件的名字和位置等信息。作用于打开、存取数据库。名字大多数为Ctrl*ctl格式,如Ctrl1CIMS.ctl。

配置文件

配置文件记录Oracle数据库运行时的一些重要参数,如:数据块的大小,内存结构的配置等。名字正常情况为init*.ora格式,如:initCIMS.ora。

2逻辑结构

Oracle数据库的逻辑结构具体解释了数据库从逻辑上如何来存储数据库中的数据。逻辑结构除了表空间、段、区、数据块和模式对象。数据库的逻辑结构将意志一个数据库如何修改系统的物理空间.模式对象非盈利组织会计之间的直接联系则详细解释了关系数据库之间的设计.

一个数据库从逻辑上说是由一个或多个表空间所组成,表空间是数据库中物理编组的数据仓库,每一个表空间是由段(segment)横列,一个段是由一组区(extent)所横列,一个区是由一组在不的数据库块(databaseblock)组成,而一个数据库块对应硬盘上的一个或多个物理块。一个表空间存放一个或多个数据库的物理文件(即数据文件).一个数据库中的数据被逻辑地存储位置在表空间上。

表空间(tablespace)

Oracle数据库被再划分为一个或多个称为表空间的逻辑结构,它包括两类表空间,System表空间和非System表空间,其中,System表空间是直接安装数据库时自动组建的,它包含数据库的全部数据字典,存储过程、包、函数和触发器的定义这些系统快速回滚段。外,还能够真包含用户数据。。

一个表空间中有许多段,每个段有一些也可以不后的区横列,每个区由一组连续的数据块排成,数据块是数据库进行操作的小于单位。

每个表空间按一个或多个数据文件,每个数据文件只有不属于一个表空间。

数据库块(databaseblock)

数据库块也称逻辑块或ORACLE块,它按磁盘上一个或多个物理块,它的大小由初始化参数db-block-size(在文件init.ora中)确定,啊是的大小是2k。Pckfree和pctused两个参数用处系统优化数据块空间的使用。

区(extent)

区是由一组后的数据块所分成的数据库存储空间分配的逻辑单位。

段(segment)

段是一个或多个不在不的区的集合,它包括一个表空间内某种特定逻辑结构的所有数据,段又不能跨表空间贮放。Oracle数据库除开数据段、索引段、预备段、回滚段等。

模式对象(schemaobject)

Oracle数据库的模式对象除开表、视图、序列、表示同意词、索引、触发器、存储.过程等,关於它们将重点在后面章节推荐。

3.OracleServer系统进程与内存结构

当在计算机服务器上启动后Oracle数据库后,称服务器上起动了一个Oracle实例(Instance)。ORACLE实例(Instance)是存取和控制数据库的软件机制,它包含系统全局区(SGA)和ORACLE进程两部分。SGA是系统为实例分配的一组链接共享内存缓冲区,主要是用于贮存数据库实例和控制信息,以实现对数据库中数据的治理和操作。

进程是操作系统中一个更为不重要的概念。一个进程想执行一组你的操作,能完成一个某个特定的任务.对ORACLE数据库治理系统来说,进程由用户进程、服务器进程和后台进程所排成。

当用户不运行一个应用程序时,系统就为它建立一个用户进程。服务器进程如何处理与之相接的用户进程的请求,它与用户进程相通讯,为连通的用户进程的ORACLE只是请求服务。

为了想提高系统性能,更好地实现多用户功能,ORACLE还在系统后台正常启动一些后台进程,主要用于数据库数据操作。

系统进程的后台进程要注意除了:

SMON系统监控进程:(systemmonitor)你们负责完成自动实例复原和回收公司分类(sort)表空间。

PMON进程监控进程:(PRocess monitor)基于用户进程故障恢复、定时清理内存区和释放者该进程所需资源等。

DBWR数据库写进程:数据库缓冲区的治理进程。

在它的治理下,数据库缓冲区中总保持有是有数量的自由缓冲块,以以保证用户进程总能不能找到供其使用的自由缓冲块。

LGWR日志文件写进程:是日志缓冲区的治理进程,全权负责把日志缓冲区中的日志项写入磁盘中的日志文件上。每个实例只有一个LGWR进程。

ARCH装订归档进程:(archiverprocess)把已经填进的大侠帮帮忙日志文件拷贝到一个更改的存储设备上。仅当日志文件组开关(switch)再次出现时,才通过ARCH操作。ARCH又不是需要的,而仅有当自动归档可建议使用或是当手工归档帮忙时才嘶嘶。

RECO完全恢复进程:是在具高分布式选项时可以使用的一个进程,主要用于解决语句分布式事务时所再次出现的故障。它只有在答应你分布式事务的系统中再次出现。

LCKn封锁进程:用于左行服务器系统,要注意结束实例之间的彻底封锁。

内存结构(SGA)

SGA是Oracle为一个实例分配的一组链接共享内存缓冲区,它包涵该实例的数据和控制信息。SGA在实例启动时时被自动出现分配,当实例自动关闭时被收回。数据库的所有数据操作都要来参与。

SGA中内存根据存放信息的不同,这个可以两类万分感谢几个区域:BufferCache:贮放数据库中数据库块的拷入。它是由一组缓存块所横列,这些缓冲块为所有与该实例相链接的用户进程所宽带共享。缓冲块的数目由系统初始化参数DB_BLOCK_BUFFERS判断,缓冲块的大小由系统初始化参数DB_BLOCK_SIZE确定。大的数据块可能提高查询速度。它由DBWR能操作。

b.日志缓冲区Redo Log Buffer:贮放数据操作的更改信息。它们以日志项(redoentry)的形式存放在日志缓冲区中。当要参与数据库恢复时,日志项作用于重构或回滚对数据库所做的变更。日志缓冲区的大小由初始化操作参数LOG_BUFFER考虑。大的日志缓冲区可下降日志文件I/O的次数。后台进程LGWR将日志缓冲区中的信息写入磁盘的日志文件中,可正常启动ARCH后台进程参与日志信息归档。

c.宽带共享池SharedPool:包涵用处处理的SQL语句信息。它乾坤二卦链接共享SQL区和数据字典存储区。链接共享SQL区包含负责执行某种特定的SQL语句所是用信息。数据字典区应用于存放数据字典,它为所有用户进程所共享。

Oracle数据库运行越来越慢,应该怎么优化一下?

你先生成你运行慢那一时间段的性能报告,然后是从里边的指数看不是你的硬件问题还是你的语句的问题,SGA区小的话加SGA区,接着再结论你的语句,看你是不是你这个语句的计划任务是怎摸走的,如何确定没走索引走了全表扫描后!以上就是我的观点

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。