1. 什么是数据库物理结构和存储方式的描述
Log File物理结构
log block结构分为日志头段、日志记录、日志尾部
Block Header,占用12字节
Data部分
Block tailer,占用4字节
Block Header
这个部分是每个Block的头部,主要记录的块的信息
Block Number,表示这是第几个block,占用4字节,是通过LSN计算得来的,占用4字节
Block data len,表示该block中有多少字节已经被使用了,占用2字节
First Rec offet,表示该block中作为第一个新的mtr开始的偏移量,占用2字节
Checkpoint number,表示该log block最后被写入时的检查点的值,占用4字节
2. Oracle数据库的物理结构有哪些
Oracle数据库的体系结构包括四个方面:数据库的物理结构、逻辑结构、内存结构及进程。
1. 物理结构
物理数据库结构是由构成数据库的操作系统文件所决定,Oracle数据库文件包括:
数据文件(Data File)
数据文件用来存储数据库中的全部数据,例如数据库表中的数据和索引数据.通常以为*.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)所组成,一个区是由一组连续的数据库块(database block)组成,而一个数据库块对应硬盘上的一个或多个物理块。一个表空间存放一个或多个数据库的物理文件(即数据文件).一个数据库中的数据被逻辑地存储在表空间上。
表空间(tablespace)
Oracle数据库被划分为一个或多个称为表空间的逻辑结构,它包括两类表空间,System表空间和非System表空间,其中,System表空间是安装数据库时自动建立的,它包含数据库的全部数据字典,存储过程、包、函数和触发器的定义以及系统回滚段。除此之外,还能包含用户数据。。
一个表空间包含许多段,每个段有一些可以不连续的区组成,每个区由一组连续的数据块组成,数据块是数据库进行操作的最小单位。
每个表空间对应一个或多个数据文件,每个数据文件只能属于一个表空间。
数据库块(database block)
数据库块也称逻辑块或ORACLE块,它对应磁盘上一个或多个物理块,它的大小由初始化参数db-block-size(在文件init.ora中)决定,典型的大小是2k。Pckfree 和pctused 两个参数用来优化数据块空间的使用。
区(extent)
区是由一组连续的数据块所组成的数据库存储空间分配的逻辑单位。
段(segment)
段是一个或多个不连续的区的集合,它包括一个表空间内特定逻辑结构的所有数据,段不能跨表空间存放。Oracle数据库包括数据段、索引段、临时段、回滚段等。
模式对象(schema object)
Oracle数据库的模式对象包括表、视图、序列、同意词、索引、触发器、存储.过程等,关于它们将重点在后面章节介绍。
3.Oracle Server系统进程与内存结构
当在计算机服务器上启动Oracle数据库后,称服务器上启动了一个Oracle实例(Instance)。ORACLE 实例(Instance)是存取和控制数据库的软件机制,它包含系统全局区(SGA)和ORACLE进程两部分。SGA是系统为实例分配的一组共享内存缓冲区,用于存放数据库实例和控制信息,以实现对数据库中数据的治理和操作。
3. Oracle数据库的物理文件有哪几种它们有什么用
答:(1)数据文件:数据库中的数据在物理上都保存在一些操作系统文件中,这些操作系统的文件就是数据文件,通常是后缀名为.dbf的文件。 (2)控制文件:每个Oracle数据库都有相应的控制文件,是一个二进制文件,它定义了数据库的状态。 (3)重做日志文件:用于记录数据库所做的全部变更(如增加、删除、修改),以便在系统发生故障时,用它对数据库进行恢复。
4. 下面哪一个不是数据库屋物理存储结构中的对象
1. (四)加强解题指导
1.审题要仔细,关键字眼不可疏忽
审题时一定要仔细,尤其要注意一些重要的关键字眼,不要以为是“容易题”“陈题”就一眼带过,要注意“陈题”中可能有“新意”.也不要一眼看上去认为是“新题、难题”就畏难而放弃,要知道“难题”也只难在一点,“新题”只新在一处.由于疏忽看错题或畏难轻易放弃都会造成很大的遗憾.
5. 下列哪个(些)不是数据库软件名称( )不定项选择
D.Outlook,(它是microsoft
日程安排软件
)其它的都是数据库软件
6. 1数据库的物理结构有哪几种文件组成
Microsoft® SQL Server™ 2000
使用一组操作系统文件映射数据库。数据库中的所有数据和对象(如表、存储过程、触发器和视图)都存储在下列操作系统文件中:
主要
该文件包含数据库的启动信息,并用于存储数据。每个数据库都有一个主要数据文件。
次要
这些文件含有不能置于主要数据文件中的所有数据。如果主文件可以包含数据库中的所有数据,那么数据库就不需要次要数据文件。有些数据库可能足够大故需要多个次要数据文件,或使用位于不同磁盘驱动器上的辅助文件将数据扩展到多个磁盘。
事务日志
这些文件包含用于恢复数据库的日志信息。每个数据库都必须至少有一个日志文件。
例如,创建简单的数据库 sales
时,可以只使用一个包含所有数据和对象的主文件和一个包含事务日志信息的日志文件。另一种情况是,创建更复杂的数据库 orders
时,可以使用一个主文件和五个辅助文件,数据库内的数据和对象扩展到所有的六个文件中,另外有四个日志文件包含事务日志信息。
文件组允许对文件进行分组,以便于管理和数据的分配/放置。例如,可以分别在三个硬盘驱动器上创建三个文件(Data1.ndf、Data2.ndf
和 Data3.ndf),并将这三个文件指派到文件组 fgroup1 中。然后,可以明确地在文件组 fgroup1
上创建一个表。对表中数据的查询将分散到三个磁盘上,因而性能得以提高。在
RAID(独立磁盘冗余阵列)条带集上创建单个文件也可以获得相同的性能改善。然而,文件和文件组使您得以在新磁盘上轻易地添加新文件。另外,如果数据库超过单个
Microsoft Windows NT® 文件的最大大小,则可以使用次要数据文件允许数据库继续增长。
文件和文件组的设计规则
文件和文件组的设计规则包括:
文件或文件组不能由一个以上的数据库使用。例如,文件 sales.mdf 和 sales.ndf 包含 sales
数据库中的数据和对象,任何其它数据库都不能使用这两个文件。
文件只能是一个文件组的成员。
数据和事务日志信息不能属于同一文件或文件组。
事务日志文件不能属于任何文件组。
7. Oracle数据库物理组建件的类型有什么
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并不每个进程都分配到有效的地址,即并不是每个进程都是必须的。
SQL>SELECT*FROMV$BGPROCESSWHEREPADDR<>''00''
将显示所有必需的进程。
连接到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不能单独设置大小
8. 下面哪个不属于关系型数据库中通常包含的组件
A 客户端应用程序肯定有,比如management studio,让客户通过图形界面应用程序的方式管理数据库。
B 数据库服务器这个肯定要有、本地的或者远程,没有服务器就是空壳子。
C 数据库DB肯定有,包括数据库实例等等
D SQL语言怎能形容为组件呢?(R)DBMS支持查询语言,只能说包含了支持SQL语言的程序或者组件。
毕竟你说的是关系型数据库管理系统软件,因此才有这四个选项。我认为是D。
9. 数据库的物理结构设计指的是什么
Log File物理结构
log block结构分为日志头段、日志记录、日志尾部
Block Header,占用12字节
Data部分
Block tailer,占用4字节
Block Header
这个部分是每个Block的头部,主要记录的块的信息
Block Number,表示这是第几个block,占用4字节,是通过LSN计算得来的,占用4字节
Block data len,表示该block中有多少字节已经被使用了,占用2字节
First Rec offet,表示该block中作为第一个新的mtr开始的偏移量,占用2字节
Checkpoint number,表示该log block最后被写入时的检查点的值,占用4字节
10. 数据库的物理存储结构和数据的物理结构是一回事吗
Log File物理结构
log block结构分为日志头段、日志记录、日志尾部
Block Header,占用12字节
Data部分
Block tailer,占用4字节
Block Header
这个部分是每个Block的头部,主要记录的块的信息
Block Number,表示这是第几个block,占用4字节,是通过LSN计算得来的,占用4字节
Block data len,表示该block中有多少字节已经被使用了,占用2字节
First Rec offet,表示该block中作为第一个新的mtr开始的偏移量,占用2字节
Checkpoint number,表示该log block最后被写入时的检查点的值,占用4字节