chapter 7
1.Oracle数据库物理存储结构的组成及各个部分的功能。
2.数据文件管理:
(1)数据文件与表空间的关系
(2)数据文件的添加、数据文件大小的修改autoextend on 、resize(操作)
(3)改变表空间大小的方式有哪几种
3.控制文件的管理
(1)控制文件的基本性质
(2)控制文件存储的信息
(3)控制文件的数量、使用多个多路复用控制文件的必要性
(4)控制文件的备份(两种方式)
4.重做日志文件管理
(1)基本概念(保存什么信息)、
(2)工作过程(循环写)
(3)至少需要多少个重做日志文件组、每个组中至少需要多少个成员、成员之间
有何关系、数量通过哪些参数控制(MAXLOGFILES\MAXLOGMEMBERS)
5.归档文件
(1)归档的含义
(2)归档模式设置过程(操作)
(3)归档路径设置的两套参数
chapter8
1.Oracle数据库逻辑存储结构的组成及相互关系
2.表空间的管理
(1)数据库、表空间、数据文件、数据库对象之间的关系
(2)表空间的类型(系统、非系统:撤销、临时、普通用户)
(3)系统表空间存储什么信息?
(4)创建表空间(操作)
3.数据块的概念
4.区的概念
5.段:段的概念、段的类型、回滚段的作用
chapter9
1.数据库实例的概念及组成(内存、后台进程)(147页)
2.数据库实例内存结构的组成(SGA、PGA)(148页)
3.SGA区的组成及各个部分的功能。
4.主要后台进程有哪些及其功能(DBWR、LGWR、CKPT、SMON、PMON、ARCH)
chapter 10
1.表
(1)临时表的概念、性质、分类
(2)表的5中约束(154)
2.索引
(1)索引作用、性质
(2)索引使用的基本原则
(3)何时使用平衡树索引和位图索引(175页)
3.分区
(1) 分区概念、特性(183页)
(2)何时有必要进行分区
(3)四种分区方法及其优劣比较
注:外部表没讲
4.簇、视图、序列、同义词
(1)簇、视图、序列、同义词基本概念
(2)表、索引、分区、簇、 视图、序列、同义词在存储上有何不同
chapter11
(1)简单查询(单表查询、排序)
注:查询有5道题
(2)连接查询(内连接、外连接)
(3)子查询(相关、无关)
(4)分组查询(分组统计)
具体:例题、p255实训题2
chapter12
(1)PL/SQL基本结构
(2)控制结构(选择、循环)
(3)游标应用
注:肯定会考游标,课后练习题里有游标的题。匿名块有一道题
(4)异常处理(NO_DATA_FOUND、TOO_MANY_ROWS)
P299
chapter13
注:
(1)存储过程与函数的区别
(2)局部子程序与全局子程序的比较
(3)触发器的类型、作用的事件
注:任何select都不触动触发器
(4)四种类型的DML触发器与事件本身的执行顺序问题
(5)操作:创建存储过程、创建函数、创建触发器
例题、p332(不看8、9的包,有三道题)
chapter15
(1)数据库启动过程及分别使用什么文件
(2)数据库关闭过程及分别完成什么任务
(3)数据库三种启动模式以及在每种模式下可以完成什么工作(376页,选择题,某某操作在什么模式下运行)
(4)数据库关闭的四种方法的比较
chapter16
(1)Oracle数据库通过那些机制实现数据的安全性
(2)用户账号锁定的问题
(3)权限管理
权限授予与回收的方式有哪两种(392页)
系统权限与对象权限的直接授权与回收(操作)
例题、p419
系统权限与对象权限在回收时的异同
(4)角色
了解角色概念和一些常用的角色
(5)概要文件
了解概要文件作用(资源限制、口令管理)、了解主要参数
chapter17
数据库备份与恢复的基本概念、类型
数据库物理备份与逻辑备份的关系
第7章 物理存储结构
1.Oracle数据库物理存储结构的组成及各个部分的功能
答:数据文件—用于存储数据库中的所有数据;
控制文件—用于记录和描述数据库的物理存储结构信息;
重做日志文件—用于记录外部程序(用户)对数据库的改变操作;
归档文件—用于保存已经写满的重做日志文件;
初始化参数文件—用于设置数据库启动时的参数初始值;
跟踪文件—用于记录用户进程,数据库后台进程等的运行情况;
口令文件—用于保存具有SYSTEM,SYSOPER权限的用户名和SYS用户口令;
警告文件—用于记录数据库的重要活动以及发生的错误;
备份文件—用于存放数据库备份所产生的文件。
2.数据文件管理
(1)数据文件的内容
答:Oracle数据库的数据文件是用于保持数据库中数据的文件,系统数据,数据字典数据,临时数据,索引数据及应用数据等都物理的存储在数据文件中。
每个数据文件都具有两个文件号,称为绝对文件号和相对文件号,用于唯一地确定一个数据文件。绝对文件号用于在整个数据库范围内唯一标识一个数据文件;相对文件号用于在表空间范围内唯一标识一个数据文件。
(2)数据文件与表空间的关系
答:在Oracle数据库中,数据文件是依附于表空间而存在的。一个表空间可以包含几个数据文件,但一个数据文件只能从属于一个表空间。在逻辑上,数据库对象都存放在表空间中,实质上是存放在表空间对应的数据文件中。
(3)数据文件的添加,数据文件大小的修改autoextend on,resize(会操作)
答:1.数据文件的添加
(1)向表空间添加数据文件alter tablespace…add datafile
Eg.向ORCL数据库USERS表空间中添加一个大小为10MB的数据文件
答:SQL>alter tablespace users add datafile
‘D:\ORACLE\PRODUCE\10.2.0\ORADATA\ORCL\USER02.DBF’ SIZE 10M;
(2)向临时表空间添加临时数据文件 alter tablespace…add tempfile
Eg. 向ORCL数据库USERS表空间中添加一个大小为5MB的临时数据文件
答:SQL>alter tablespace users add tempfile
‘D:\ORACLE\PRODUCE\10.2.0\ORADATA\ORCL\TEMP02.DBF’ SIZE 5M;
2.数据文件的修改
答:1.设置数据文件为自动增长方式
Eg.为ORCL数据库的USERS表空间添加一个自动增长的数据文件
答:SQL>alter tablespace users add datapfile
‘D:\ORACLE\PRODUCE\10.2.0\ORADATA\ORCL\USER03.DBF’ SIZE 10M
AUTOEXTEND ON NEXT 1M MAXSIZE 50M;
(next参数指定数据文件每次自动增长的大小,maxsize参数指定数据文件的极限大小,如果没有则可以设定为unlimited)
2.手动改变数据文件的大小
Eg.为ORCL数据库的USERS表空间添加一个自动增长的数据文件
答:SQL>alter database datafile
‘D:\ORACLE\PRODUCE\10.2.0\ORADATA\ORCL\USER02.DBF’ resize 8M
(4)改变表空间大小的方式有几种
答:2种,自动和手动
3.控制文件的管理
(1)控制文件的基本性质
答:控制文件描述了整个数据库的物理结构信息,控制文件在创建数据库时创建,每个数据库至少有一个控制文件。控制文件是一个二进制文件,DBA不能直接修改,只能由oracle进程读/写其内容,在数据库运行与维护阶段,数据文件与重做日志文件的结构变化信息都记录在控制文件中。
(2)控制文件存储的信息
答:数据库名称和标识;数据库创建的时间;表空间名称;数据文件和重做日志文件的名称和位置;当前重做日志文件序列号;数据库检查点的信息;回退段的开始和结束;重做日志的归档信息;备份信息;数据库恢复所需要的同步信息。
(3)控制文件的数量,使用多个多路复用控制文件的必要性
答:Oracle建议最少有两个控制文件,通过多路镜像技术,将多个控制文件分散到不同的磁盘中。这样可以避免由于一个控制文件的故障而导致数据库的崩溃。在数据库进行过程中,始终读取CONTROL-FILES参数指定的一个控制文件,并同时写CONTROL-FILES参数指定的所有控制文件。如果其中一个控制文件不可用,则必须关闭数据库进行恢复。
(4)控制文件的备份(两种方式)
答:1.将控制文件备份为二进制文件
SQL>alter database backup controlfile to ‘D:\ORACLE\CONTORL.BKP’
2.将控制文件备份为文本文件
SQL>alter database backup controlfile to trace
4.重做日志文件管理
(1)基本概念(保存什么信息)
答:重做日志文件以重做记录的形式记录,保存用户对数据库所进行的变更操作,包括用户执行DDL(数据定义语言),DM(数据操作语言)L语句的操作。如果用户只对数据库进行查询操作,那么查询信息是不会记录到重做日志文件中。
重做日志文件是由重做记录构成的,每个重做记录由一组修改向量组成。修改向量记录了对数据库中某个数据块所做的修改,包括修改对象,修改之前对象的值,修改之后对象的值,该修改操作的事务号码以及该事务是否提交等信息。
重做日志文件恢复数据库是通过事务的重做(REDO)或回退(UNDO)实现的。
(2)工作过程(循环写)
答:每个数据库至少需要两个重做日志文件,采用循环写的方式进行工作。当一个重做日志文件在进行归档时,还有另一个重做日志文件可用。当一个重做日志文件被写满后,后台进行LGWR开始写入下一个重做日志文件,即日志切换,同时产生一个“日志序列号”,并将这个号码分配给即将开始使用的重做日志文件。当所有的日志文件都写满后,LGWR进程再重新写入第一个日志文件。
(3)至少需要多少个重做日志文件组,每个组中至少需要多少给成员,成员之间有何关系,数据通过哪些参数控制(MAXLOGFILES\MAXLOGMEMBERS)
答:至少需要两个重做日志文件组,每个组中至少需要一个成员可用,每个组中包含若干个完全相同的重做日志文件,这些成员文件相互镜像。通常,将一组文件成员分散在不同磁盘上,这样一个磁盘的损坏不会导致日志文件组中所有成员的丢失。
5.归档文件
(1)归档含义
答:Oracle数据库能够把已经写满了的重做日志文件保存到指定的一个或多个位置,被保存的重做日志文件的集合称为归档重做日志文件,这个过程称为归档。
(2)归档模式设置过程(操作)
答:(1)关闭数据库
SQL>SHUTDOWN IMMEDIATE
(2)启动数据库到 MOUNT
SQL>STARTUP MOUNT
(3)使用alter database archivelog语句将数据库设置为归档模式
SQL>ALTER DATABSE ARCHIVELOG
或者使用alter database noarchivelog 语句将数据库设置为非归档模式
SQL>ALTER DATABASE NOARCHIVELOG
(4)打开数据库
SQL>ALTER DATABASE OPEN
(3)归档路径设置的两套参数
答:1.使用初始化参数LOG_ARCHIVE_DEST(主归档路径)和LOG_ARCHIVE_DUPLEX_DEST(次归档路径)设置归档路径
2.使用初始化参数LOG_ARCHIVE_DEST_n设置归档路径。该方法最多可以指定10个归档路径,其归档目标可以是本地系统的目录,也可以是远程的数据库系统。
Eg:1.ALTER SYSTEM SET LOG_ARCHIVE_DEST_1=’LOCATION=D:\BACKUP\ARCHIVE’
2. ALTER SYSTEM SET LOG_ARCHIVE_DEST_2=’SERVICE=D:\BACKUP\ARCHIVE’
第8章 逻辑存储结构
1.Oracle数据库逻辑存储结构的组成及相互关系
答:Oracle数据库的逻辑存储结构分为数据库,区,段,表空间4种。其中,数据库是数据库中的最小I/O单元,由若干个连续的数据库组成的区是数据库中最小的存储分配单元,又若干个区形成的段是相同类型数据的存储分配区域,由若干个段形成的表空间是最大的逻辑存储单元,所有的表空间构成一个数据库。
2.表空间的管理
(1)数据库,表空间,数据文件,数据库对象之间的关系
答:一个数据库由一个或多个表空间构成
一个表空间对应一个或多个数据文件,一个文件只能从属于一个表空间
一个数据库对象只能存储在一个表空间中(分区表和分区索引除外),但可以存储在该表空间所对应的一个或多个数据文件中。
数据文件的大小决定表空间的大小,表空间的大小决定数据库的大小
(2)表空间的类型
答:1.系统表空间SYSTEM,存储下列信息:数据库的数据字典;PL/SQL程序的源代码和解释代码,包括存储过程,函数,包,触发器等;数据库对象的定义,如表,试图,序列,同义词等。
2.非系统表空间:撤销表空间:专门进行回滚信息的自动管理
临时表空间:专门进行临时数据管理的表空间,这些临时数据在会话结束时自动释放。
用户表空间:为每个应用创建独立表空间,这样不仅能够分离不同应用的数据,而且能够减少读取数据文件时产生的I/O冲突。
(3)系统表空间存储什么信息?
答:系统表空间存储下列信息:数据库的数据字典;PL/SQL程序的源代码和解释代码,包括存储过程,函数,包,触发器等;数据库对象的定义,如表,试图,序列,同义词等。
一般在System表空间中只应该保存属于SYS模式的对象,而不应把用户对象存放在SYSTEM表空间中,以免影响数据库的稳定性与执行效率。
(4)创建表空间(操作)
答:书129页例题
3.数据块的概念
答:Oracle数据块是数据库中最小的逻辑存储单元,也是数据库执行输入/输出操作的最小单位,由一个或者多个操作系统块构成。
4.区的概念
答:区是由一系列连续的数据块构成的逻辑存储单元,是存储空间分配与回收的最小单位。创建一个数据库对象时,Oracle为对象分配若干个区,已构成一个段来为对象提供初始的存储空间。当段中已分配的区都写满后,Oracle会为段分配一个新区,以容纳更多的数据。
5.段:段的概念,段的类型,回滚段的作用
答:段是由一个或多个连续或不连续的区组成的逻辑存储单元。段是表空间的组成单位,代表特定数据类型的数据存储结构,通常一个对象只拥有一个段,一个段至少包含一个区。
段的类型:数据段:用来存储表或簇的数据,细分为普通表数据段,分区数据段,簇数据段
索引段:存放索引数据,包括ROWID和索引键值
临时段:当用户进行查询,排序,创建索引等操作时,若内容空间不足,则Oracle将使用临时保存SQL语句在解释和执行过程所产生的临时数据。 会话结束时,临时段被释放。
回滚段:用于保存数据库的回滚信息,包含当前为提交事务所修改的数据的原始版本。
回滚段的作用:事务回滚
数据库恢复
数据的读一致性
闪回查询
第9章 数据库实例
1.数据库实例的概念及组成(内存,后台进程)
答:Oracle数据库主要由两部分构成:放在磁盘的物理数据库和对物理数据库进行的数据库管理系统。其中,数据库管理系统是处于用户与物理数据库之间的一个中间层软件,称为实例,由内存结构和后台进程组成。通常,数据库与实例是一一对应,即一个数据库对应一个实例;在并行的数据库中,数据库和实例是一对多的关系。
2.数据库实例内存结构的组成(SGA,PGA)
答:内存结构分为系统全局区(SGA),程序全局区(PGA)
3.SGA区的组成及各个部分功能
答:1.数据高速缓存区:她存储的是最近从数据文件中检索出来的数据,供所有用户共享
2.共享池:用户缓存最近执行过的SQL语句,PL/SQL程序和数据字典信息,是对SQL语句,PL/SQL程序进行语法分析,编译,执行的区域
3.重做日志缓冲区:用于缓存用户对数据库进行修改操作时发生的重做记录
4.大型池:是一个可选内存配置项,主要为Oracle共享服务器,服务器I/O进程,数据库备份与恢复操作,执行具有大量排序操作的SQL语句,执行并行化的数据库操作等需要大量缓存的操作提供内存空间。
5.java池:是一个可选内存配置项,提供对JAVA程序设计的支持,用于存储Java代码,java语句的语法分析表,java语句的执行方案和进行java程序开发等。
6.流池:是一个可选的内存配置项,用于对流的支持
4.PGA区的组成及各个部分功能
答:1.排序区:用于存放排序操作所产生的临时数据
2.会话区:用来保存用户会话所具有的权限,角色,性能统计信息
3.游标区:用于存放执行游标操作时所产生的数据
4.堆栈区:用来保存会话过程中的绑定变量,会话变量等信息
5.主要后台进程有哪些及其功能(DBWR,LGWR,CKPT,SMON,PMON,ARCH)
答:1.DBWR:数据库写入进程负责把数据高速缓存区中已经被修改过的数据(脏数据)成批写入数据文件中永久保存,同时使数据高速缓存区有更多的空闲缓存块,保证服务器进程将所需要的数据从该数据文件中读取到数据高速缓冲区中,提高缓存命中率。
2.LGWR:日志写入进程负责把重做日志缓冲区的重做记录写入重做日志文件中永久保存。
3.CKPT:执行检查点
4.SMON:在实例启动时负责对数据库进行恢复;回收不再使用的临时空间;将各个表空间的空闲碎片合并
5.PMON:负责恢复失败的用户进程或服务器进程,并且释放进程所占用的资源;清楚非正常中断的用户进程留下的孤儿会话,回退未提交的事务,释放会话所占用的锁,SGA,PGA等资源;监控调度进程和服务器进程的状态
6.ARCH:ARCH进程负责在日志切换后将已经写满的重做日志文件复制到归档目标,以防止写满的重做日志文件被覆盖。
第10章 模式对象
1.表
(1)临时表的概念,性质,分类
答:表是数据库中最基本的对象,数据库中所有数据都以二维表格的形式存在。许多数据库对象(如索引,试图)都是以表为基础的。在Oracle数据库中,根据表生存周期的不同,可以分为永久性表和临时表,根据表中数据组织方式的不同,可分为标准表,索引化表,分区表及外部表等。
(2)表中的5种约束
答:1.主键约束(PRIMARY KEY)
2.唯一性约束(UNIQUE)
3.检查约束(CHECK)
4.外键约束(FOREIGN KEY)
5.空/非空约束(NULL/NOT NULL)
2.索引
(1)索引作用,性质
答:引入索引的目的是为了提高对表中数据的查询速度,索引是建立在表列上的数据库对象,但是无论其物理还是逻辑结构都不依赖于表。在一个表上是否创建索引,创建多少索引和创建什么类型的索引,都不会影响对表的使用方式,而只是影响对表中数据的查询效率。
(2)索引使用的基本原则
答:1.导入数据后在创建索引
2.在适当的表和列上创建适当的索引
l 经常查询的记录数目少于表中所有记录总数的5%就应当创建索引
l 经常进行连接查询表时,在连接列上建立索引能够显著提高查询的速度
l 对于取值范围很大的列应当创建B树索引
l 对于取值范围很小的列应该创建位图索引
l 不能在LONG,LONG RAW,LOB数据类型的列上创建索引
l Oracle会自动在PRIMARY KEY和UNIQUE约束的列上创建唯一性索引
3.合理设置复合索引中列的顺序
(3)合适使用平衡树索引和位图索引
答:1.平衡树索引(B树索引):在Oracle数据库中创建的索引默认为平衡树索引。平衡树索引包括唯一性索引,非唯一性索引,反键索引,单列索引及复合索引等多种。平衡树索引占用空间多,适合索引值技术高,重复率低的应用。
2.位图索引:是为每一个索引值建立一个位图,在这个位图中使用一个位元来对应一条记录的ROWID。位图索引实际上是一个二维数据,列数由索引值的基数决定,行数由表中记录个数决定。
3.分区
(1)分区概念,特性
答:分区是指将一个巨型表或巨型索引分成若干独立的组成部分进行存储和管理,每一个相对小的,可以独立管理的部分,称为原来表或索引表。
(2)何时有必要进行分区
答:1.表的大小超过2GB时;
2.要对一个表进行并行DML操作时,必须对表进行分区
3.为了平衡硬盘的I/O操作,需要将一个表分散存储在不同表空间中,必须对表进行分区
4.需要将表的一部分设置为只读,另一部分设置为课更新时,必须对表进行分区
(3)四种分区方法及其优劣比较
答:1.范围分区:按照分区列值的范围来对表进行分区的
2.列表分区:如果分区列的值并不能划分范围,同时分区列的取值范围只是一个包含少数值的集合,则可以对表进行列表分区,只能根据一个单独的列来进行分区。
3.散列分区:在进行范围分区或列表分区时,由于无法对各个分区中可能具有的记录数量进行预测,可能导致数据在各个分区中分布不均衡,某个分区中数据很多,而某个分区中数据很少,此时可以采用散列分区方法,在指定数量的分区中均等地分配数据。
4.复合分区:同时使用两种方法对表进行分区
4.簇,视图,序列,同义词
(1)簇,视图,序列,同义词基本概念
答:簇:是一种存储表数据的方法,一个簇由共享相同数据块的一组表组成。
视图:是从一个或多个基表或视图中提取出来的数据的一种表现形式
序列:用于产生唯一序号的数据块对象,可以为多个数据库用户依次生成不重复的连续整数,通常使用序列自动生成表中的主键值。
同义词:是数据库中表,索引,视图或其他模式对象的一个别名。
(2)表,索引,分区,簇,视图,序列,同义词在存储上有何不同
答:表:是数据库中最基本的对象,数据库中所有数据都以二维表格的形式存在
索引:建立在表列上的数据库对象,无论其物理结构还是逻辑结构都不依赖表
分区:每个分区都具有相同的逻辑属性,但是物理属性可以不同
簇:存储表数据
视图:是从一个或多个基表或视图中提取出来的数据的一种表现形式,是一个虚表
序列:不占用实际的存储空间,在数据字典中值存储序列的定义描述
同义词:当数据库对象改变时,只需要修改同义词不需要修改应用程序。
第11章 SQL语言基础
1.简单查询(单表查询,排序)
2.连接查询(内连接,外连接)
3.子查询(相关,无关)
4.分组查询(分组统计)
具体:例题,P255页实训题2
第12章 PL/SQL程序设计基础
1.PL/SQL基本结构
答:PL/SQL程序的基本单元是语句块,一个完整的PL/SQL语句块由三个部分组成:
1.声明部分,declare
2.执行部分,begin开始,end结束
3.异常处理部分,exception
l 执行部分是必须的,而声明部分和异常部分是可选的;
l 可以在一个块的执行部分或异常处理部分嵌套其他的PL/SQL块
l 所有的PL/SQL块都是以end结束
2.控制结构(选择,循环)
3.游标应用
4.异常处理(NO_DATA_FOUND,TOO_MANY_ROWS)
课后习题P229及例题
第13章 PL/SQL命名对象
1.存储过程与函数的区别
答:1.存储过程用于执行特定的操作,不需要返回值;函数则用于返回特定的数据;
2.在调用时,存储过程可以作为一个独立的表达式被调用,而函数只能作为表达式的一个组成部分被调用
2.局部子程序与全局子程序(存储子程序)的比较
答:1.存储子程序已经编译好放在数据库服务器端,可以直接调用;而局部子程序存在于定义它的语句中,在运行时需要先进行编译
2.存储子程序不能重载,而局部子程序可以进行重载
3.存储子程序可以被任意的PL/SQL调用,而局部子程序只恩能够在定义它的块中被调用
3.触发器的类型,作用的事件
答:根据触发器作用的对象不同,触发器分为3类:
1.DML触发器:建立在基本表上的触发器,响应基本表的INSERT,UPDATE,DELETE操作
2.INSTEAD OF触发器:建立在视图上的触发器,响应视图上的INSERT,UPDATE,DELETE操作
3系统触发器:建立在系统或模式上的触发器,响应系统事件和DDL(CREATE,ALTER,DROP)操作
4.四种类型的DML触发器与事件本身的执行顺序问题
答:DML触发器包括语句级前触发器,语句级后触发器,行级前触发器,和行级后触发器4大类,其执行的顺序如下:
1.如果存在,则执行语句级前触发器
2.对于受触发事件影响的每一个记录:如果存在,则执行行级前触发器;执行当前记录的DML操作(触发事件);如果存在,则执行行级后触发器
3.如果存在,则执行语句级后触发器
在每一类触发器内部,根据事件的不同又分为3种,如针对INSERT操作的语句级前触发器,语句级后触发器,行级前触发器和行级后触发器,对于同级别的DML,其执行顺序是随机的。
5.操作:创建存储过程,创建函数,创建触发器(例题,P332)
第15章 数据库启动与关闭
1.数据库启动过程及分别使用什么文件
答:Oracle数据库的启动分为3个步骤:
1.创建并启动实例。根据数据库初始化参数文件,为数据库创建实例,启动一系列后台进程和服务进程,并创建SGA区等内存结构。此阶段并不检查数据库(物理文件)是否存在
2.装载数据库。装载数据库是实例打开数据库的控制文件,从中获取数据库名称,数据文件和重做日志文件的位置,名称等数据库物理结构信息,为打开数据库做好准备。如果控制文件损坏,实例将无法装载数据库。
3.打开数据库。在此阶段,实例将打开所有处于联机状态的数据文件和重做日志文件。如果任何一个数据文件或重做日志文件无法正常打开,数据库将返回错误信息,这是数据库需要恢复。
2.数据库关闭过程及分别完成什么任务
答:Oracle数据库的关闭过程与数据库启动的过程是互逆的:
1.关闭数据库,即关闭数据文件和重做日志文件
2.卸载数据库,关闭控制文件
3.关闭实例,释放内存结构,停止数据库后台进程和服务进程的运行
3.数据库三种启动模式以及在每种模式下可以完成什么工作
答:1.NOMOUNT:oracle读取数据库的初始化参数文件,创建并启动数据库实例。此时,用户可以与数据库进行通信,访问SGA区相关的数据字典视图,但是不能使用数据库中的任何文件。下列操作必须在NOMOUNT模式下进行:1.创建一个新的数据库2.重建数据库的控制文件。
2.MOUNT:oracle创建并启动实例后,根据初始化参数文件中CONTROL_FILES参数找到数据库的控制文件,读取控制文件获取数据库的物理结构信息,包括数据文件,重做日志文件的位置与名称等,实现数据库的装载。此时不仅可以访问与SGA区相关的数据字典视图,还可以访问与控制文件相关的数据字典视图。下列操作必须在MOUNT模式下进行:1.重命名数据文件2.添加,删除或重命名重做日志文件3.改变数据库的归档模式
4.执行数据库完全恢复操作
3.OPEN:以正常方式打开数据库,此时任何具有CREATE SESSION权限的用户都可以连接到数据库,并可以进行基本的数据访问操作。
4.数据库关闭的四种方法的比较
答:1.NORMAL:如果对数据库的关闭没有时间限制,则可以采用该命令正常关闭数据库
2.IMMEDIATE:如果要求在尽可能短的时间内关闭数据库,则可以采用命令关闭数据库
3.TRANSACTION:如果要求在尽量短的时间内关闭数据库,同时还要保证所有当前活动事务可以提交,则可以采用此命令关闭数据库
4.ABORT:如果前3种方法都无法成功关闭数据库,则说明数据库产生了严重错误,只能采用终止方式来关闭数据库,此时丢失一部分数据信息,对数据库完整性造成损害。
第16章 安全管理
1.oracle数据库通过哪些机制来实现数据的安全性
答:Oracle数据安全控制机制包括以下6个方面:
1.用户管理:为了保证只有合法身份的用户才能访问数据库,oracle提供了3种用户认证机制,即数据库身份认证,外部身份认证和全局身份认证。只有通过认证的用户才能访问数据库。
2.权限管理:用户登录数据库后,只能进行其范围内的操作。通过个用户授权或回收用户权限,可以达到控制用户对数据库操作的目的
3.角色管理:通过角色方便地实现用户权限的授予与回收
4.表空间设置和配额:通过设置用户的默认表空间,临时表空间和在表空间上的使用配额,可以有效地控制用户对数据库存储空间的使用
5.用户资源限制:通过概要文件,限制用户对数据库资源的使用
6.数据库审计:监视和记录用户在数据库中的活动
2.用户账户锁定的问题
答:在创建用户的同时,可以设定用户的初始状态,包括用户口令是否过期以及账户是否锁定等。Oracle允许任何时候对账户进行锁定或解锁。锁定账户后,用户就不能与oracle数据库建立连接,必须对账户解锁后,才允许用户访问数据库
3.权限管理
(1)权限授予与回收的方式有哪两种
答:直接授权:利用grant命令直接为用户授权
间接授权:先将权限授予角色,然后再将角色授予用户
(2)系统权限与对象权限的直接授权与回收(操作)例题,p419
(3)系统权限与对象权限在回收时的异同
答:1.如果一个用户获得了系统权限具有传递性,并且给其他用户授权,那么该用户系统权限被回收后,其他用户的系统权限并不受影响,即平行关系。
2.如果一个用户获得的对象权限具有传递性,并且给其他用户授权,那么该用户的对象权限被回收后,其他用户的对象权限也被回收。
4.角色
(1)了解角色概念和一些常用的角色
答:角色就是一系列相关权限的集合。可以将要授予相同身份用户的所有权限先授予角色,然后再将角色授予用户,这样用户就得到了该角色所具的所有权限,从而简化了权限的管理。
5.概要文件
(1)了解概要文件作用(资源限制,口令管理),了解主要参数
答:概要文件是数据库和系统资源限制的集合,是oracle数据库安全策略的重要组成部分,利用概要文件,可以限制用户对数据库和系统资源的使用,同时还可以对用户口令进行管理。每个数据库用户必须有一个概要文件。
资源限制参数:1.CUP_PER_SESSION:限制用户再一次会话期间可以占用CPU时间总量,单位为百分之一秒
2.CUP_PER_CALL:限制每个调用可以占用CPU时间总量,单位为百分之一秒
3.CONNECT_TIME:限制每个会话可持续的最大时间值,单位为分钟
4.IDLE_TIME:限制每个会话处于连续空闲状态的最大时间值,单位为分钟
5.SESSIONS_PER_USER:限制一个用户打开数据库会话的最大数量
6.LOGICAL_READS_PER_SESSION:允许一个会话读取数据块的最大数量
7.LOGICAL_READS_PER_CALL:允许一个调用读取的数据块的最大数据
8.PRIVATE_SGA:在共享服务器操作模式中,执行SQL语句或PL/SQL程序时,oracle将在SGA中创建室友SQL区
9.COMPOSITE_LIMIT:用一个用户会话可以消耗的资源总限额
口令管理参数:1.FAILED_LOGIN_ATTEMPTS:限制用户在登录oracle数据库时允许失败的次数
2.PASSWORD_LOCK_TIME:设定当用户登录失败后,用户账户被锁定的时间长度
3.PASSWORD_LIFE_TIME:设置用户口令有效天数
4.PASWORD_GRACE_TIME:用于设定提示口令过期的天数
5.PASSWORD_REUSE_TIME:指定一个口令被修改后,必须经过多少天后才可以重新使用该口令
6.PASSWORD_REUSE_MAX:指定一个口令被重新使用前,必须经过多少次修改
7.PASSWORD_VERIFY_FUNCTION:设置口令复杂性校验函数
第17章 备份与修复
1.数据库备份与恢复的基本概念,类型
答:1.数据库备份就是对数据库中部分或全部数据进行复制,形成副本,存放到一个相对独立的设备上。
l 根据数据备份的方式不同:数据库备份分为物理备份和逻辑备份
l 根据数据库备份是否关闭数据库服务器:物理备份分为热备份(联机备份,必须在归档日志模式下)和冷备份(停机备份,在关闭数据库的情况下)
l 根据数据库备份规模不同:完全备份和部分备份
l 根据数据库是否运行在归档模式下,分为归档备份与非归档备份
2.数据库恢复是指在数据库发生故障时,使用数据库备份还原数据库,使数据库恢复到无故障状态
l 根据数据库恢复时使用的备份不同:分为物理恢复和逻辑恢复
l 根据恢复程度的不同:分为完全恢复和不完全恢复
2.数据库物理备份与逻辑备份的关系
答:物理备份是将组成数据库的数据文件,重做日志文件,控制文件,初始化参数文件等操作系统文件进行复制,将形成的副本保存到与当前系统独立的磁盘或磁带上。
逻辑备份是指利用Oracle提供的导出工具将数据库中的数据抽取出来存放到一个二进制文件中。必须在数据库运行的状态下进行。
数据库备份与恢复是以物理备份与恢复为主,逻辑备份与恢复为辅的。