1、1第一章 简答题1简述 Oracle 数据库逻辑结构中各元素之间的关系。答:数据库由若干个表空间组成,表空间由表、索引、视图等逻辑对象组成,表由段组成,段由区组成,区则由数据块组成。2简述 Oracle 数据库物理结构中包含的文件类型,以及不同类型文件所能起的作用。答:物理结构由构成数据库的操作系统文件所决定。每个 Oracle 数据库都由 3 种类型的文件组成:数据文件、日志文件和控制文件。Oracle 数据库有一个或多个物理的数据文件。数据库的数据文件包含全部数据库数据。逻辑数据物理地存储在数据文件中。每个数据库有两个或多个日志文件组,日志文件组用于收集数据库日志。日志的主要功能是记录对数
2、据所作的修改,所以对数据库作的全部修改记录在日志中。在出现故障时,如果不能将修改数据永久地写入数据文件,则可利用日志得到修改记录,从而保证已经发生的操作成果不会丢失。每个 Oracle 数据库有一个控制文件,记录数据库的物理结构。控制文件包含数据库名、数据库数据文件和日志文件的名字、位置和数据库建立日期等信息。3简述 SGA 所包含的数据结构及其描述信息。答:SGA 是一组共享内存结构,其中包含一个 Oracle 数据库例程数据及控制信息。如果有多个用户同时连接到同一个例程,则此例程的 SGA 数据由这些用户共享。因此,SGA 也称为共享全局区(Shared Global Area) 。SGA
3、 包含以下数据结构。 数据库缓冲区: SGA 用来保存从数据文件中读取的数据块。 重做日志缓冲区:SGA 中的循环缓冲区,用于记录数据库发生改变的信息。 共享池:用于保存用户程序。 Java 池:为 Java 命令提供语法分析。 大型池:数据库管理员配置的可选内存区域,用于分配大量的内存。4简述 Oracle 数据库管理员的主要职责。答:数据库管理员的主要职责如下。 安装和升级 Oracle 数据库服务器和其他应用工具。 分配系统存储空间,并计划数据库系统未来需要的存储空间。 当 应 用 程 序 开 发 员 设 计 完 成 一 个 应 用 程 序 之 后 , 为 其 创 建 主 要 的 数 据
4、 库 存储 结 构 , 例 如 表 空 间 。 根据应用程序开发员的设计创建主要的数据库对象,例如表、视图和索引。 根据应用程序开发员提供的信息修改数据库结构。 管理用户,维护系统安全。 确保对 Oracle 的使用符合 Oracle 的许可协议。 控制和监视用户对数据库的访问。 监视和优化数据库的行为。 做好备份和恢复数据库的计划。2 维护磁带中归档的数据。 备份和恢复数据库。 在必要时联系 Oracle 公司获取技术支持。5简述 SYSDBA 和 SYSOPER 权限所能进行的操作。答:拥有 SYSDBA 权限可以执行如下操作: 启动和关闭数据库操作。 执行 ALTER DATABASE
5、语句修改数据库,打开、连接、备份和修改字符集等操作。 执行 CREATE DATABASE 语句创建数据库。 执行 DROP DATABASE 语句删除数据库。 执行 CREATE SPFILE 语句。 执行 ALTER DATABASE ARCHIVELOG 语句。 执行 ALTER DATABASE RECOVER 语句。 拥有 RESTRICTED SESSION 权限,此权限允许用户执行基本的操作任务,但不能查看用户数据。 作为 SYS 用户连接到数据库。拥有 SYSOPER 权限可以执行如下操作: 启动和关闭数据库操作。 执行 CREATE SPFILE 语句。 执行 ALTER D
6、ATABASE 语句修改数据库,打开、连接、备份等操作。 执行 ALTER DATABASE ARCHIVELOG 语句。 执行 ALTER DATABASE RECOVER 语句。 拥有 RESTRICTED SESSION 权限,此权限允许用户执行基本的操作任务,但不能查看用户数据。第五章 简答题1简述删除控制文件的步骤。答:(1)关闭数据库。(2)编辑 CONTROL_FILES 参数的值,删除指定的控制文件信息。(3)将要删除的控制文件备份到其他介质,然后使用操作系统命令将该文件删除。(4)重新启动数据库。2简述 Oracle 记录重做日志的过程。答:日志写入进程 LGWR 负责记录重
7、做日志。如果重做日志文件已经被填充满了,则 LGWR 将变化数据写入下一个重做日志文件;如果最后一个有效的重做日志文件被填充满了,则 LGWR 将变化数据写入第一个重做日志文件。为了防止重做日志文件本身被破坏,Oracle 提供了一种多元重做日志(Multiplexed redo log) ,也就是说,系统在不同的位置上自动维护重做日志的两个或更多的副本。从安全角度出发,这些副本的保存位置应该在不同的磁盘上。3简述重命名重做日志成员的步骤。答:3(1)使用 SHUTDOWN 命令关闭数据库。(2)将重做日志文件复制到新的位置。(3)使用 STARTUP MOUNT 命令装载数据库。(4)使用带
8、 RENAME FILE 子句的 ALTER DATABASE 语句重命名数据库的重做日志文件。(5)使用 ALTER DATABASE OPEN 命令打开数据库。4简述切换数据库归档模式的步骤。答:(1)在切换数据库归档模式之前,必须使用 SHUTDOWN 语句关闭相关的数据库实例。(2)备份数据库。在对数据库进行比较重要的配置改变时,通常要进行数据库备份操作,以防止数据丢失。特别是数据库处于非归档模式时,一旦数据库被破坏,只能依靠数据库备份来恢复数据。(3)编 辑 初 始 化 参 数 文 件 , 设 置 归 档 日 志 文 件 的 位 置 。 此 步 骤 涉 及 的 内 容将 在 5.5.
9、3 小 节 介 绍 。(4)使用 STARTUP MOUNT 语句装载数据库,但不打开数据库。(5)使用 ALTER DATABASE ARCHIVELOG 语句或 ALTER DATABASE NOARCHIVELOG 切换归档模式。(6)使用 ALTER DATABASE OPEN 语句重新打开数据库。第六章 简答题1以流程图的方式描述 Oracle 数据库管理员的认证方式。 是 否 建 立 安 全 连 接 管 理 远 程 数 据 库 是 否 使 用 操作 系 统 认 证 管 理 本 地 数 据 库 是 是 否 否 使 用 操 作 系 统 认 证 使 用 密 码 文 件 认 证 2简述用户
10、和角色的关系。答:要管理 Oracle 数据库、编辑数据库中的数据,必须拥有对数据库有管理权限的用户名和密码。角色是对用户的一种分类管理办法,不同权限的用户可以分为不同的角色。例如,DBA 角色是在 Oracle 数据库创建时自动生成的角色,它包含大多数数据库系统权限,因此只有系统管理员才能被授予 DBA 角色。3试列举 3 个 Oracle 系统权限,并说明其含义。答:参照 6.4.1 小节。4第七章 简答题1简述表与视图的区别与联系答:视图看上去同表似乎一模一样,具有一组命名的字段和数据项,但它其实是一个虚拟的表,在物理上并不存在。视图是由查询数据库表产生的,它限制了用户能看到和能修改的数
11、据。视图兼有表和查询的特点:与查询相类似的是,视图可以用来从一个或多个相关联的表或视图中提取有用信息;与表相类似的是,视图可以用来更新其中的信息,并将更新结果永久保存在磁盘上。可以用视图使数据暂时从数据库中分离成为游离数据,以便在主系统之外收集和修改数据。2简述索引的工作原理。答:索引是对表的一列或多列进行排序的结构。因为绝大多数的搜索方法在搜索排序结构时效率都会大大提高,所以如果表中某一列经常被作为关键字搜索,则建议对此列创建索引。索引提供指针以指向存储在表中指定列的数据值,然后根据指定的排序次序排列这些指针。数据库使用索引的方式与使用书的目录很相似:通过搜索索引找到特定的值,然后跟随指针到
12、达包含该值的行。用户可以利用索引快速访问数据库表中的特定信息。索引是对数据库表中一个或多个列的值进行排序的结构。如果想根据用户名来查找特定的用户,则按用户名列 UserName 建立索引将大大缩短查询的时间。第八章 简答题1在使用 RMAN 命令备份和恢复数据库之前,需要做哪些准备?答:(1)将数据库切换为归档日志模式(2)创建保存 RMAN 数据的表空间(3)创建 RMAN 用户并授权(4)创建恢复目录(5)注册目标数据库2简述将数据库设置为归档日志模式的操作步骤。答:(1)以 SYSDBA 的身份登录。执行下面的语句,变更登录用户:connect sys/oracle as sysdba(
13、2)在数据库实例打开时不能修改日志模式。首先执行下面的语句关闭数据库:shutdown immediate(3)执行下面的命令,再次启动数据库,但不打开实例:startup mount(4)切换实例为归档日志模式了,执行下面的语句:ALTER DATABASE ARCHIVELOG;5(5)在确认数据库处于归档日志模式后,可以执行下面的语句打开数据库实例。ALTER DATABASE OPEN;第十章 简答题1简述游标的基本概念。答:游标从字面来理解就是游动的光标。用数据库语言来描述,游标是映射在结果集中一行数据上的位置实体,有了游标,用户就可以访问结果集中的任意一行数据了。将游标放置到某行后,即可对该行数据进行操作,最常见的操作是提取当前行数据。2简述触发器与存储过程的关系。答:触发器是一种特殊的存储过程,当指定的事件发生时自动运行。触发器与普通存储过程的不同之处在于:触发器的执行是由事件触发的,而普通存储过程是由命令调用执行的。第十一章 简答题1简述 ADO 数据模型中包含的元素。答:1连接2命令3参数4记录集5字段6错误7属性8集合9事件2列举 3 个 ADO.NET 中常用 Oracle 访问类。答:OracleConnection 类、 OracleCommand 类、OracleDataReader 类、OracleDataAdapter 类、DataSet 类等。