《数据库》复习资料.docx
- 文档编号:3920646
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:19
- 大小:42.65KB
《数据库》复习资料.docx
《《数据库》复习资料.docx》由会员分享,可在线阅读,更多相关《《数据库》复习资料.docx(19页珍藏版)》请在冰豆网上搜索。
《数据库》复习资料
Oracle数据库体系结构
一、填空题
1.Oracle数据库系统的物理存储结构主要由3类文件组成,分别为数据文件、日志文件、控制文件。
2.用户对数据库的操作如果产生日志信息,则该日志信息首先被存储在日志缓冲区中,随后由LGWR进程保存到日志文件中。
3.一个表空间物理上对应一个或多个数据文件。
4.在Oracle的逻辑存储结构中,根据存储数据类型,可以将段分为数据段、索引段、回退段、LOB段或临时段。
5.在Oracle的逻辑存储结构中,数据块是最小的I/O单元。
6.表空间的管理类型可以分为本地管理和字典管理.
7.在ORACLE系统中,为了实现对表,视图和索引等数据库对象进行了管理,ORACLE采用模式实现。
8.一个模式只能够被一个数据库用户所拥有,其创建的所有模式对象都保存在自己的模式中。
9如果定义了CHAR数据类型的字段,并且向其赋值时,字符串的长度小于定义的长度,则使用空格填充;而VARCHAR2类型的字段用于存储变长的字符串,即如果向该列赋的字符长度小于定义时的长度,该列的字符长度只会是实际字符数据的长度,系统不会使用空格填充。
10.ROWID实际上保存的是记录的物理地址,因此通过ROWID来访问记录可以获得最快的访问速度。
11.在创建表空间命令的STORAGE子句中可以设置6个存储参数。
其中,INITIAL指定为表中的数据分配的第一个盘区大小;NEXT指定为存储表中的数据分配的第二个盘区大小;PCTINCREASE指定从第二个盘区之后,每个盘区相对于上一个盘区的增长百分比;MINEXTENTS指定允许为表中的数据所分配的最小盘区数目;MAXEXTENTS指定允许为表中的数据所分配的最大盘区数目。
12.通过数据块空间管理参数可以控制数据块中空闲空间的使用方法,其中PCTFREE用于控制数据块的更新预留的空间,而PCTUSED用于控制数据块在删除时释放空间的门槛。
13、如果出现了失败故障,用户修改的数据没有永久地写到数据文件里,那么就可以利用(控制文件)找到数据的更改,这样做过的工作就不会丢失了.
14、(控制文件)是一个小的二进制文件,它维护着数据库的全局物理结构,用以支持数据库成功地启动和运行.
15、表空间是Oracle数据库中数据的逻辑组织,每个数据库至少有一个(SYSTEM系统)表空间.
16、(DBWR)进程把修改过的数据块从内存写回到数据库的数据文件中.
17、当用户进程出错,PMON后台进程负责清理它
18、创建数据库时自动建立的tablespace名称SYSTEMtablespace
19、数据库表空间一般分为永久性表空间、 还原表空间、临时表空间
二、选择题
1.下列选项中,哪一部分不是Oracle实例的组成部分?
C
A.系统全局区SGA
B.PMON后台进程
C.控制文件
D.Dnnn调度进程
2.在全局存储区SGA中,哪部分内存区域是循环使用的?
B
A.数据缓冲区
B.日志缓冲区
C.共享池
D.大池
3.解析后的SQL语句在SGA的哪个区域中进行缓存?
C
A.数据缓冲区
B.日志缓冲区
C.共享池
D.大池
4.如果一个服务器进程非正常终止,Oracle系统将使用下列哪一个进程来简介释放它所占用的资源?
D
A.DBWR
B.LGWR
C.SMON
D.PMON
5.如果服务器进程无法在数据缓冲区中找到空闲缓存块,以添加从数据文件中读取的数据块,则将启动如下哪一个进程?
D
A.CKPT
B.SMON
C.LGWR
D.DBWR
6.下列关于共享服务器模式的叙述哪一项不正确?
A
A.在共享服务器操作模式下,每一个用户进程必须对应一个服务器进程
B.一个数据库实例可以启动多个调度进程
C.在共享服务器操作模式下,Oracle实例将启动调度Dnnn为用户进程分配服务进程
D.共享服务器操作模式可以实现少量服务器进程为大量用户进程提供服务
7.当数据块运行在归档下时,如果发生日志切换,为了保证不覆盖旧的日志信息,系统将启动如下哪一个进程?
D
A.DBWR
B.LGWR
C.SMON
D.ARCH
8.下列哪一个进程和数据库部件可以保证用户对数据库所做的修改在没有保存的情况下,不会发生丢失修改数据?
B
A.DBWR和数据文件
B.LGWR和日志文件组
C.CKPT和控制文件
D.ARCH和归档日志文件
9.下列哪一个进程用于将修改过的数据从内存保存到磁盘数据文件中?
A
A.DBWR B.LGWR C.RECO D.ARCH
10.如果要查询数据库中所有表的信息,应当使用下列哪种数据字典视图?
A
A.DBA视图
B.ALL视图
C.USER视图
D.动态性能视图
11.下列哪一项是Oracle数据库中最小的存储分配单元?
C
A.表空间 B.段 C.盘区 D.数据块
12.下面的各选项中哪一个正确描述了Oracle数据块的逻辑储存结构?
AA.表空间由段组成,段由盘区组成,盘区由数据块组成
B.段由表空间组成,表空间由盘区组成,盘区由数据块组成
C.盘区由数据块组成,数据块由段组成,段由表空间组成
D.数据块由段组成,段由盘区组成,盘区由表空间组成
13.在创建表空间时,可以指定表空间中存储对象的默认存储参数,其中_____A______参数用于设置分配给每一个对象的初始区大小.
A.INITIAL
B.NEXT
C.PCTINCREASE
D.MINEXTENTS
14.下列哪个对象属于模式对象?
C
A.数据段B.盘区C.表D.表空间
15.关于模式的描述下列哪一项不正确?
C
A.表或索引等模式对象一定属于某一个模式
B.在ORACLE数据库中,模式与数据库用户是一一对应的
C.一个表可以属于多个模式
D.一个模式可以拥有多个表
16.如果一个表中某条记录的一个字段暂时不具有任何值,那么在其中将保存什么内容?
D
A.空格字符B.数字0C.NULLD.该字段数据类型的默认值
17.下列哪一项不是伪列ROWID的作用?
D
A.保存记录的物理地址
B.快速查询指定的记录
C.标识各条记录
D.保存记录的头信息
18.为了减少表中的迁移记录,应该增大表的哪一个存储参数?
A
A.PCTFREEB.PCTUSEDCC.MAXEXTENTSD.PCTINCREASE
oracle基本对象
(表、索引、视图、序列、同义词)
一、填空题
1.在B树索引中,通过在索引中保存排过序的索引列值与相对应记录的ROWID来实现快速查找。
2.如果表中某列的基数比较低,则应该在该列上创建位图索引。
3.下面的语句创建了一个序列对象,该序列对象的开始数为2,每次递增2,当大于1000后,序列值重新返回到2。
在空白处填写适当的代码,完成上述要求。
createsequenceseg_test
_startwith2_________
_incrementby2______
_maxvalue1000______
_cycle______________;
4、如果要获取数据库中创建的配置文件的信息,可以通过查询数据字典视图DBA_PROFILES
视图.
5、在ORACAL数据库中将权限分为两类,即系统权限和对象权限。
系统权限是指在系统级控制数据库的存取和使用机制,对象权限是指在模式对象上控制数据库的存取和使用的机制。
6、角色是具有名称的一组相关的一组相关权限的组合。
7、Oracle10g提供了一些预定义角色,供用户用于数据库管理。
在创建数据库的过程中这些角色作为创建脚本的一部分自动被创建。
其中,(RESOURCE)角色用于典型的应用程序开发员。
该角色允许授权者在相关的模式中创建表、序列、数据簇、过程、函数、包、触发器、对象类型等。
二、选择题
1、假设用户USER1的默认表空间为USERS,他在该表空间的配额为10MB,则USER1在USERS表空间创建基本表时,他应具有什么权限?
(A)
A、CREATETABLE
B、CREATEUSER
C、UNLIMITEDTABLESPACE
D、LIMITEDTABLESPACE
2、检查下面的SQL语句,哪一项是错误的?
(B)
Alterusertempuser
Identifiedbyoracle
Defaulttablespaceusers
Defaulttemporarytablespacetemp
Quota100Monusers
A、Defaulttablespaceusers
B、Defaulttemporarytablespacetemp
C、Quota100Monusers
D、Identifiedbyoracle
3、想在另一个模式中创建表,用户最少应该具有什么系统权限?
(B)
A、CREATETABLE
B、CREATEANYTABLE
C、RESOURCE
D、DBA
4、下面哪个系统预定义角色允许一个用户创建其他用户?
(B)
A、CONNECTB、DBA
C、RESOURCED、SYSDBA
5.在下列模式对象中,哪个对象不会占用实际的存储空间?
____A_____
A.视图B.表
C.索引C.簇
6.在下列各选项中,关于序列的描述哪一项是不正确的?
___D___
A.序列是Oracle提供的用于产生一系列唯一数字的数据库对象
B.序列并不占用实际的存储空间
C.使用序列时,需要用到序列的两个伪列NEXTVAL与CURRVAL。
其中,NEXTVAL将返回序列生成的下一个值,而CURRVAL返回序列的当前值
D.在任何时候都可以使用序列的伪列CURRVAL,以返回当前序列值
7.在下列各选项中,关于同义词的描述哪一项是不正确的?
___B____
A.同义词是数据库对象的一个替代名,在使用同义词时,Oracle会将其翻译为对应的对象名称
B.在创建同义词时,所替代的模式对象必须存在
C.Oracle中的同义词分为公有同义词和私有同义词
D.公有同义词在数据库中所有的用户都可以使用;私有同义词由创建它的用户所拥有
8.假设EMPLOYEE表包含一个MARRIAGE列,用于描述职工的婚姻状况,则应该在该字段上创建什么类型的索引?
____D_____________
A.B树唯一索引
B.B树不唯一索引
C.基于函数的索引
D.位图索引
9.如果经常执行类似于下面的查询语句:
SELECT*fromstudent
whereSubstrb(sname,0,2)=’刘’
应当为STUDENT表中的SNAME列创建哪一种类型的索引?
_____D___________
A.B树唯一索引
B.位图索引
C.B树不唯一索引
D.基于函数的索引
10.假设在一个表的3个字段NAME、SEX和MONTH_OF_BIRTH中分别保存姓名、性别和出生的月份数据,则应当为这3个字段分别创建何种类型的索引?
___D_____
A.全部创建B树索引
B.全部创建位图索引
C.分别创建B树索引、位图索引和位图索引
D.分别创建B树索引、位图索引和其于函数的索引
数据库启动与关闭
一、填空题
1、可通过在SQL*Plus中查询动态视图(V$INSTANCE)来查看实例的禁止操作状态.
2、数据库处于(关闭)状态的时候,用户就可以在没有I/O影响的情况下备份一个数据库.
3、启动数据库时,如果装载数据库但不打开数据库可执行(STARTUPMOUNT)命令.
二、选择题
1将数据库启动到装载状态的命令
A:
startup
B:
startupnomount
C:
startupmount
D:
startupopen
答案:
C
2使用shutdown命令关闭数据库,发生的次序是
A:
先关闭实例进程
B:
先关闭数据库
C:
先卸载数据库
D:
没有先后次序
答案:
B
3执行shutdowntransactional命令
A:
数据库仍然允许新的用户连接
B:
数据库马上关闭
C:
等待当前所有会话结束后关闭
D:
如果没有执行中的数据库事物,即马上关闭
答案:
C
4服务器断电,发生的现象是哪一个?
A:
数据缓冲区的修改写入数据库
B:
没有提交的事物自动撤销
C:
数据文件、控制文件和日志文件处于不一致状态
D:
下次启动,需要进行手工恢复
答案:
B
5用户SCOTT正在执行UPDATE语句,需要保证SCOTT的修改操作完成,理想的关闭实例方式是
A:
SHUTDOWNABORT
B:
SHUTDOWNIMMEDIATE
C:
SHUTDOWNTRANSACTIONAL
D:
SHUTDOWNNORMAL
答案:
C
6在哪种关闭方式下,SMON进程要对数据库实例进行恢复
A:
NORMAL
B:
TRANSACTIONAL
C:
IMMEDIATE
D:
ABORT
答案:
D
7静态初始化参数文件的特点是
A:
文件是文本文件形式
B:
启动实例优先选用
C:
总是驻留在服务器端
D:
能够动态进行参数的修改
答案:
A
8数据库启动的哪个阶段打开控制文件
A:
启动实例阶段
B:
装载数据库阶段
C:
打开数据库阶段
D:
关闭数据库阶段
答案:
B
9数据库处于哪个状态,可以创建数据库
A:
SHUTDOWN
B:
NOMOUNT
C:
MOUNT
D:
OPEN
答案:
B
备份与恢复
一、填空题
1、物理备份分为冷备份(离线备份)、热备份(在线备份。
2、当数据库在__NOARCHIVELOG_模式中运行时,无法使用单个备份文件对数据库进行恢复。
因为对模式数据库进行恢复时,必须使用所有的数据库备份,使数据库恢复后处于一致状态。
3、手动进行介质恢复时,按照数据库恢复后的运行状态不同,介质恢复为分为__完全数据库恢复__、和___不完全数据库恢复_____。
完全恢复就是恢复所有已经提交的事务,即将数据库、表空间或数据文件的备份更新到最近的时间。
__不完全恢复__使用数据库的备份来对数据库进行恢复,即将数据库恢复到某一特定的时刻。
4、使用EXP命令导出数据时,可以根据需要按3种不同的方式导出数据。
__表方式___方式就是导出一个指定的基本表,包括表的定义、表中的数据,以及在表上建立的索引、约束等。
___用户__方式是指导出属于一个用户的所有对象,包括表、视图、存储过程、序列等。
___整个数据库___方式导出是指导出数据库中所有对象。
5、在进行部分联机备份时,由于数据库仍然在正常运行,因此在备份过程中,必须使用_ALTERTABLESPACEtablespace_nameBEGINBACKUP_命令使数据文件相对应的表空间出于备份模式。
在备份结束后,使用__ALTERTABLESPACEtablespace_nameENDBACKUP_命令恢复表空间到正常状态。
6、Oracle数据库的启动过程可以分为3个阶段:
__启动数据库实例__、加载数据库文件、_打开数据库_。
在__在启动数据库实例__阶段,需要完成3个操作:
读取定义启动参数的文件、分配SGA区、启动后台进程。
加载数据库文件则是将数据库文件与启动的实例相关联。
在__在加载数据库文件_阶段,系统会读取参数文件中指定的控制文件。
7、使用RMAN进行目标数据库的备份时,可以使用_COPY_和_BACKUP_命令。
__COPY__命令用于数据文件备份,可以将指定的数据库文件备份到磁盘或磁带。
__BACKUP__命令是数据的备份,可以复制一个或多个表空间,以及整个数据库中的数据。
二、选择题
1.Oracle支持多种类型的不完全备份,下列哪一个不是Oracle所支持的不完全备份?
__B___
A.基于时间的不完全备份
B.基于用户的不完全备份
C.基于撤消的不完全备份
D.基于更改的不完全备份
2.下面哪一种不完全恢复需要使用SCN号作为参数?
__C___
A.基于时间的不完全备份
B.基于撤消的不完全备份
C.基于更改的不完全备份
D.基于顺序的不完全备份
3.执行不完全恢复时,数据库必须处于什么状态?
__D___
A.shutdown
B.nomount
C.open
D.Mount
4.要改变数据库的归档模式,数据库应处于哪种状态下c
A.SHUTDOWN
B.NOMOUNT
C.MOUNT
D.OPEN
5.使用RMAN进行介质恢复时,执行命令的顺序是什么?
__A_____
A.RESTORE、RECOVER
B.RECOVER、RESTORE
C.COPY、BACKUP
D.COPY、RECOVER
6.下列哪一个操作可以用来为一个备份操作手动分配通道?
__A____
A.ALLOCATECHANNEL
B.CREATECHANNEL
C.CHANNELALLOCATE
D.CREATELINK
7.下列哪一个命令用来显示RMAN通道的配置信息?
___C___
A.LIST
B.DISPLAY
C.SHOW
D.都可以
8.下列哪一个命令可以用来执行不完全恢复?
___B___
A.RESTOREDATABASEUNTIL
B.RECOVERDATABASEUNTIL
C.RECOVERDATAUNTIL
D.RESTOREDATAUNTIL
9.如果想查看当前数据库是否处于自动归档模式,应当使用下列哪个命令?
A
A.ARCHIVELOGLIST
B.ARCHIVELOGALL
C.ARCHIVELOGNEXT
D.ARCHIVELOGSTART
简答题
1.简述表空间和数据文件之间的关系。
答:
每一个数据文件都必须隶属于某个表空间,但一个表空间可以由多个数据文件组合而成。
tablespace是逻辑上的概念,datafile则在物理上储存了数据库的种种对象。
2.概述Oracle数据库体系的物理结构。
答:
Oracle数据库体系的物理结构是指数据库上实际的、可以从操作系统看到的文件,可以利用操作系统指令进行管理作业,物理存储结构组成文件如下所列:
数据文件(DataFile):
实际存储数据的地方;在线重做日志文件(OnlineRedoLogFile):
记录曾经发生过的动作,当数据库受损时,可利用在线重做日志文件进行必要的恢复动作;控制文件(ControlFile):
记录数据库必要的信息,以验证及维护数据库的完整性的信息;初始化参数文件(ParameterFile):
当数据库开启时,用来架构出Oracle内存结构的文件;密码文件(PasswordFile):
验证哪些帐号能开启、关闭Oracle数据库。
3.简要介绍表空间、段、区和数据块之间的关系。
答:
Oracle的逻辑存储单元从小到大依次为:
数据块、区、段和表空间。
它们之间的关系如
右图所示。
表空间又由许多段组成,段由多个
区组成,区又由多个数据块组成。
4.简述Oracle实例系统中各后台进程的作用。
答:
(1)DBWRn(DatabaseWriter)的主要工作是将数据
缓冲区中被改过的数据写回到数据文件里。
(2)LGWR(LogWriter)主要的工作是将RedoLogBuffer
里的记录写到在线重做日志文件中。
(3)SMON(SystemMonitor)有两个主要的功能。
<1>执行InstanceRecovery:
当数据库不正常中断后再度
开启时,SMON会自动执行InstanceRecovery,也
就是会将在线重做日志里面的数据回写到数据文件里面。
<2>收集空间:
将表空间内相邻的空间进行合并的动作。
(4)PMON(ProcessMonitor):
监视数据库的用户进程。
若用户的进程不当而被中断,PMON会负责清理任何遗留下来的资源,并释放失效的进程所保留的锁,然后从ProcessList中移除,以终止ProcessID。
(5)CKPT(Checkpoint)主要负责更新数据库的最新状态,CKPT当Checkpoint完成时,会更新控制文件和数据库文件的文件头。
(6)ARCn(Archiver).当Oracle数据库设定为ARCHIVELOGMode时,ARCn会在LogSwitch时自动将RedoLogFile复制一份到指定的目录下称为归档日志文件(Archivedredologs)。
5.简述Oracle初始化参数文件。
答:
Oracle在启动实例时将读取本地的一个文本文件,并利用从中获取的初始化参数对实例和数据库进行设置,这个文本文件称为初始化参数文件(简称PFILE)。
6.简述启动数据库时的状态。
答:
开启数据库分成4种状态。
(1)SHUTDOWN状态:
数据库是关闭的。
(2)NOMOUNT状态:
Instance被开启的状态,会去读取初始化参数文件。
(3)MOUNT状态:
会去读取控制文件。
数据库被装载。
(4)OPEN状态:
读取数据文件、在线重做日志文件等,数据库开启。
7.简述数据库的各种关闭方式。
答:
(1)正常关闭(SHUTDOWNNORMAL):
不允许新的USER连进来。
(2)事务关闭(SHUTDOWNTRANSACTIONAL):
等待所有未提交的事务完成后再关闭数据库。
(3)立即关闭(SHUTDOWNIMMEDIATE):
任何未提交的事务均被回退。
(4)终止关闭(SHUTDOWNABORT):
立即终止当前正在执行的SQL语句,任何未提交的事务均不被回退。
8.简述角色的优点。
答:
角色是具有名称的一组相关权限的组合。
角色的主要功能是将授予用户的权限做整合的管理。
由于角色集合了多种权限,可以为用户授予角色或从用户中收回角色,简化了用户权限的管理。
9、段的主要类型及作用?
答:
(1)数据段中保存的是表中的记录。
(2)索引段,在Oracle数据库中每个未分区索引都有一个索引段保存索引中的索引条目。
对于一个分区索引,每个分区都有一个索引段保存它的数据
(3)临时段,当处理查询时,Oracle可能会需要使用到一些临时存储空间,用于临时保存解析过的查询语句以及在排序过程中产生的临时数据。
Oracle会自动在专门用于存储临时数据的表空间为操作分配临时段。
(4)Undo段,Undo段用于存放数据修改之前的值(包括数据修改之前的位置和值)。
Undo段的作用主要有以下几方面:
<1>事务回滚<2>事务恢复<3>读一致性
10、Oracle实例和数据库的概念和关系是什么?
答:
在Oracle中,数据库指的是数据实际存放的地方,不论数据库是处于开启还是关闭的状态,永远都会存在于操作系统上;而实例指的是在计算机的一块内存空间,提供使用者做数据库上数据存取或数据交换的地方,由于这块空间放在内存中,因此,会随着数据库的开启而建构起来,当数据库关闭时,实例也就随之消失。
数据库:
数据库包含存在存储媒体上的一些文件。
实例:
实例是有一些内存空间及后台进程组合而成。
11、SGA的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 复习资料