数据库系统设计8个实例 oracle数据库应用结构包括?
oracle数据库应用结构包括?
Oracle数据库的体系结构包括四个方面:数据库的物理结构、逻辑结构、内存结构和进程。
1.物理结构
物理数据库结构由组成数据库的操作系统文件决定。Oracl:userCIMS.dbf
日志文件(重做日志文件)
日志文件用于记录数据库所做的所有更改(如添加、删除和修改),以便在系统出现故障时用于恢复数据库。该名称通常在Log*中。dbf格式,如log 1 IMS . DBF、log 2 IMS . DBF
控制文件(控制文件)
每个Oracle数据库都有相应的控制文件,这些文件是小型的二进制文件,用于记录数据库的物理结构,如数据库名称、数据库的数据文件和日志文件的名称和位置。用于打开和访问数据库。名称通常采用Ctrl*ctl格式,如Ctrl1CIMS.ctl。
配置文件
配置文件记录了Oracle数据库的一些重要参数,如数据块的大小、内存结构的配置等。该名称通常在init*中。ora格式,比如initCIMS.ora。
2逻辑结构
Oracle数据库的逻辑结构描述了数据库如何以逻辑存储数据库中的数据。逻辑结构包括表空间、段、范围、数据块和模式对象。数据库的逻辑结构将决定数据库如何使用系统的物理空间。模式对象及其关系描述了关系数据库之间的设计。
从逻辑上讲,数据库由一个或多个表空间组成,表空间是数据库中物理分组的数据仓库。每个表空间由段组成,一个段由一组盘区组成,一个区由一组连续的数据库块组成,一个数据库块对应硬盘上的一个或多个物理块。表空间保存一个或多个数据库的物理文件(即数据文件)。数据库中的数据逻辑上存储在表空间中。
表空间(表空间)
Oracle数据库分为一个或多个称为表空间的逻辑结构,表空间包括两种类型的表空间:系统表空间和非系统表空间。其中,System表空间是在数据库安装时自动建立的,它包含数据库的所有数据字典、存储过程、包、函数和触发器的定义以及系统回滚段。此外,它还可以包含用户数据。。。
一个表空间包含许多段,每个段由一些不连续的区域组成,每个区域由一组连续的数据块组成,这些数据块是数据库操作的最小单位。
每个表空间对应一个或多个数据文件,每个数据文件只能属于一个表空间。
数据库块(数据库块)
数据库块也称为逻辑块或ORACLE块,对应于磁盘上的一个或多个物理块,其大小由初始化参数db-block-size(在文件init.ora中)决定,通常大小为2k。Pckfree和pctused这两个参数用于优化数据块空间的使用。
程度
区域是数据库存储空间分配的逻辑单位,由一组连续的数据块组成。
分段(线段)
段是一个或多个不连续区域的集合,包括表空间定逻辑结构的所有数据,并且该段不能跨表空间存储。Oracle数据库包括数据段、索引段、临时段、回退段等。
模式对象
Oracle数据库的模式对象包括表、视图、序列、同意、索引、触发器、存储过程等。它们将在下面的章节中介绍。
服务器系统进程和内存结构
当Oracle数据库在计算机服务器上启动时,我们称之为在服务器上启动了一个Oracle实例。ORACLE实例是一种访问和控制数据库的软件机制,它由两部分组成:系统全局区(SGA)和ORACLE进程。SGA是系统为实例分配的一组共享内存缓冲区,用于存储数据库实例和控制信息,以便管理和操作数据库中的数据。
进程是操作系统中一个极其重要的概念。进程执行一组操作并完成特定的任务。对于ORACLE数据库管理系统,进程由用户进程、服务器进程和后台进程组成。
当用户运行一个应用程序时,系统为它创建一个用户进程。服务器进程处理连接的用户进程的请求,并且它与用户进程通信以服务于连接的用户进程的ORACLE请求。
为了提高系统性能,更好地实现多用户功能,ORACLE还在系统后台启动一些后台进程,进行数据库数据操作。
系统进程的后台进程主要包括:
SMON系统监视进程:(系统监视器)负责排序,完成自动实例恢复和排序表空间。
PMON进程监控进程:(process monitor)实现用户进程故障恢复,清空内存区域,释放进程所需的资源。
DBWR数据库写进程:数据库缓冲区的治理进程。
在其治理下,数据库缓冲区中总是有一定数量的空闲缓冲区块,以确保用户进程总能找到空闲缓冲区块供其使用。
LGWR日志文件写进程:它是日志缓冲区的治理进程,负责将日志缓冲区中的日志项写到磁盘上的日志文件中。每个实例只有一个LGWR进程。
ARCH归档进程:(归档进程)将填充的在线日志文件复制到指定的存储设备。只有当日志文件组开关出现时,才进行ARCH操作。ARCH不是必需的,但仅在自动归档可用或请求手动归档时发布。
RECO recovery process:是有分布式选项时使用的流程,主要用于解决引用分布式事务时的故障。它只能出现在允许分布式事务的系统中。
LCKn阻塞进程:用于并行服务器系统,主要是在实例之间进行阻塞。
记忆结构(SGA)
SGA是Oracle为实例分配的一组共享内存缓冲区,包含实例的数据和控制信息。SGA在实例启动时自动分配,在实例关闭时收回。数据库的所有数据操作都必须通过SGA进行。
根据存储信息的不同,SGA中的内存可以分为以下几个区域:缓冲区缓存:在数据库中存储数据库块的副本。它由一组缓冲块组成,由链接到实例的所有用户进程共享。缓冲块的数量由初始化参数DB_BLOCK_BUFFERS确定,缓冲块的大小由初始化参数DB_BLOCK_SIZE确定。大数据块可以提高查询速度。它由DBWR运营。
B.重做日志缓冲区:用于存储数据操作的变化信息。它们以重做条目的形式存储在日志缓冲区中。当需要数据库恢复时,日志条目用于重建或回滚对数据库所做的更改。日志缓冲区的大小由初始化参数LOG_BUFFER决定。较大的日志缓冲区可以减少日志文件I/O的数量。后台进程LGWR将日志缓冲区中的信息写入磁盘上的日志文件,并可以启动ARCH后台进程来归档日志信息。
C.共享池:包含用于处理的SQL语句信息。它包含一个共享SQL区域和一个数据字典存储区域。共享SQL区域包含用于执行特定SQL语句的信息。数据字典区用于存储数据字典,它由所有用户进程共享。
有谁考过数据库系统工程师吗,难不难,每年考几次,希望能够分享一下经验?
一年两次,比较简单,通过率30-40%,主要以基础知识和案例分析求解为主。多做往年真题,多看试题分析和解答,是一种有效的方法。通过考试是一个自我提升的过程。唐 I don'我通不过考试。以尝试为唯一目的。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。