<Documents Title Here>

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "<Documents Title Here>"

Transcription

1 ParnassusData, More on Data 诗檀学院 Oracle 11g OCP-052 考试题库详解 诗檀 IT 学院 报名咨询电话 : / QQ: 地址 : 上海市静安区共和新路 1988 号 10 座 610 室

2 作者 : 建立日期 : 更新日期 : 赵栋 7-Jan Jan

3 文档控制 变更记录 日期作者及更新人版本号变更信息 7-Jan-17 赵栋 1.0 Initial 审阅人 版本号审阅人职位相关评论 1.0 Maclean Liu 审批人 版本号批准人日期相关评论 1.0 Maclean Liu 文档分发 分发号文档名分发位置 1 3

4 目录 文档控制... 3 变更记录... 3 审阅人... 3 审批人... 3 文档分发... 3 目录... 4 简介... 5 本文目的... 5 相关参考... 5 公司简介... 6 关于诗檀... 6 关于产品... 6 紧急服务热线... 6 内容... 7 最后

5 简介 本文由 Parnassusdata 工作人员编写及使用, 如有问题或更新汇 报, 请联系作者进行修订 本文目的 本文档是 oracle 11g ocp-052 的题库, 答案及详细解释, 以供大家学习和参考. 相关参考 5

6 公司简介 关于诗檀 诗檀软件 (ParnassusData) 是一家立足于上海的软件 服务 方案供应商 公司长于数据库相关技术咨询及全生命周期管理, 并始终以数据为核心, 致力于为客户提供更多样, 更优质, 更关键的产品及技术支持 诗檀软件为 Oracle 公司合作伙伴, 公司可提供专业的 Oracle 数 据库资讯及技术支持服务 关于产品 PRM DUL for Oracle 数据库灾难拯救工具为诗檀公司开发产品 免费下载 : 企业版售价请咨询官方网站, 或可拨打服务热线咨询 紧急服务热线 相关咨询及 Oracle 紧急服务国内热线电话 : 或可拨打移动电话 :(+86) /

7 内容 1: The instance abnormally terminates because of a power outage. Which statement is true about redo log files during instance recovery? A. Inactive and current redo log files are required to accomplish recovery B. Online and archived redo files are required to accomplish instance recovery C. All redo log entries after the last checkpoint are applied from redo log files to data files D. All redo log entries recorded in the current log file until the checkpoint position are applied to data files 1: 实例因为断电异常中止 哪些是关于 redo 日志在实例恢复期间的正确描述? A. Inactive 和 current 状态的 redo 日志需要完成恢复 B. Online 和 Archived 日志需要实例恢复 C. 最后一个 checkpoint 之后的所有 redo 信息都要应用到数据文件 D. 所有记录在 current 状态日志中直到检查点位置的 redo 信息应用于数据文件 答案 :C 实例恢复是进程应用记录在 online redo log 的信息去重建最近一次检查点的之后的变更 参考官方文档 : 2: Examine the command: SQL>ALTER USR skd ACCOUNT LOCK; Which two statements are true after the command is executed? (Choose two.) A. The SKD user cannot log in to the database instance B. The objects owned by the SKD user are not accessible to any user C. The other users can access the objects owned by the SKD user, on which they have access D. The password for the SKD user expires and the user is forced to change the password at the next log in 2: 检查命令 : 7

8 SQL>ALTER USR skd ACCOUNT LOCK; 哪两个语句是正确的命令执行之后?( 选择两个 ) A. SKD 用户不能登录数据库实例 B. SKD 拥有的对象不能被任何用户访问 C. 访问过 SKD 的用户, 可以访问 SKD 用户拥有的对象 D. SKD 用户的密码过期并且下次登录时强制更改密码 答案 :AC 创建两个测试用户 SKD 和 SKD2 SQL> create user SKD identified by oracle; User created. SQL> create user SKD2 identified by oracle; User created. SKD 用户创建测试表 SQL> create table object as select * from dba_objects; Table created. 使用 sys 用户给 SKD 上锁 SQL> alter user SKD account lock; User altered. 尝试登录 SKD 用户 SQL> connect SKD/oracle ERROR: ORA-28000: the account is locked Warning: You are no longer connected to ORACLE. 所以 A 对,D 错 使用 SKD2 用户尝试访问 SKD 用户的 object 表 SQL> select owner from SKD.object where rownum < 2; 8

9 OWNER SYS 故 B 错,C 对 3: For which database operation would you need the database to be in the MOUNT state? A. Renaming the control files B. Re-creating the control files C. Dropping a user in your database D. Dropping a tablespace in your database E. Configuring the database instance to operate in the ARCHIVELOG or NOARCHIVELOG modes 3: 数据库在 mount 状态期间能做什么操作? A. 重命名控制文件 B. 重建控制文件 C. 删除用户 D. 删除表空间 E. 配置数据库为 ARCHIVELOG 或 NOARCHIVELOG 模式 答案 :E ACD 需要在数据库处于 open 状态 B 需要数据库处于 nomount 状态数据库在 mount 期间可以执行以下操作 : 启用或禁用 redo 日志归档选项 执行完整的数据库恢复 参考文档 : 9

10 4: The job to gather optimizer statistics for objects runs as part of the automatic maintenance window in your database instance. At a certain point of time, the maintenance window closes before the statistics are gathered for all objects. Which statement is true in this scenario? A. The statistics collection continues until all objects are processed. B. The job is terminated and the statistics collected are restored to a time before the job started. C. This produces an error and the statistics collected are locked until the next time that the maintenance window is opened. D. The job is terminated and the statistics for the remaining objects are collected the next time that the maintenance window is opened. 4: 收集优化器统计信息的作业作为你数据库实例自动维护窗口的一部分 在一个确定的时间点, 自动维护窗口关闭在所有的对象的统计信息收集完成之前 哪句描述是正确的在以下场景? A. 统计信息收集继续直到所有的对象处理 B. 作业中止并且统计信息收集还原到作业开始的时间点 C. 产生一个错误并且统计信息收集锁住直到下次维护窗口打开 D. 作业中止并且剩余对象的统计信息继续收集在下次维护窗口打开的时候 答案 :D 一个作业在你的数据库实例的自动维护窗口中为一些对象正在搜集优化统计信息, 在一个特定的时间点, 所有对象的统 计信息还没有搜集完, 维护窗口就关闭了, 此时, 这个作业被终止, 剩下的统计信息的搜集将在下次维护窗口打开的时候 继续搜集 参考官方文档 : 10

11 5: You want to move all objects of the APPS user in the test database to the DB_USR schema of the production database. Which option of IMPDP would you use to accomplish this task? A. FULL B. SCHEMAS C. TRANSFORM D. REMAP_SCHEMA E. REMAP_TABLESPACE 5: 你想移动测试库中 APPS 用户的所有对象到生产数据库的 DB_USR 用户 哪个 IMPDP 的选项可以完成这个任务? A. FULL B. SCHEMAS C. TRANSFORM D. REMAP_SCHEMA E. REMAP_TABLESPACE 答案 :D A 是全库导入 B 是导入某个用户 C 是去掉表空间和存储子句 D 是将一个用户导入另一个用户 E 是将数据从一个表空间导入另一个表空间 参考官方文档 : 6: You executed the following command to create a password file in the database server: $ orapwd file = orapworcl entries = 5 ignorecase=n Which statement describes the purpose of the above password file? A. It records usernames and passwords of users when granted the DBA role B. It contains usernames and passwords of users for whom auditing is enabled C. It is used by Oracle to authenticate users for remote database administrator 11

12 D. It records usernames and passwords of all users when they are added to OSDBA or OSOPER operating groups 6: 执行下面命令创建一个密码文件 $ orapwd file = orapworcl entries = 5 ignorecase=n 哪些描述是正确的关于上面的密码文件? A. 当授予 DBA 角色的时候记录用户的用户名和密码 B. 包含启用了审计的用户的用户名和密码 C. Oracle 用来对远程的数据库管理员进行身份验证 D. 用来记录加入 OSDBA 或 OSOPER 组的所有用户的用户名和密码 答案 :C Oracle 的口令文件的作用是存放所有 sysdba 或者 sysoper 权限连接数据库的用户的口令 是否使用口令文件, 是通过 oracle 提供的一个参数 remote_login_passwordfile 来控制的, remote_login_passwordfile 有 none,shared,exclusive3 个值,none 表示不使用口令文件, exclusive 表示实例独占使用口令文件, 也就是各自实例使用单独的口令文件,shared 表示多个实例共享一个口令文件 参考官方文档 : 7: Which two statements are true regarding the MRKT tablespace? (Choose two.) SQL> CREATE BIGFILE TABLESPACE MRKT 2 DATAFILE '/u01/app/oracle/oradata/orcl/mrkt.dbf' size 10M LOGGING 3 EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO; Tablespace created. SQL> ALTER DATABASE DEFAULT TABLESPACE MRKT; Database altered. A. No more data files can be added to the tablespace. B. Segment space is managed by free lists in the tablespace. C. A user created without being assigned a default tablespace uses this tablespace. D. The tablespace can be dropped with the current setting with segments present in it. 7: 哪两句关于 MRKT 表空间的描述是正确的?( 选择两个 ) 12

13 SQL> CREATE BIGFILE TABLESPACE MRKT 2 DATAFILE '/u01/app/oracle/oradata/orcl/mrkt.dbf' size 10M LOGGING 3 EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO; Tablespace created. SQL> ALTER DATABASE DEFAULT TABLESPACE MRKT; Database altered. A. 不能再添加数据文件到表空间 B. 段空间在表空间中是自由列表管理 C. 创建用户不指定默认表空间将使用这个表空间 D. 表空间可以删除在当前的配置下 答案 :AC BIGFILE 只能有一个数据文件,A 对 ALTER DATABASE DEFAULT TABLESPACE MRKT; 将默认表空间修改成 MRKT,C 对创建 MRKT 的时候,Oracle 自动创建本地管理表空间和自动段空间管理 (ASSM) B 错默认表空间不能直接 drop,d 错 8: View the Exhibit and examine the privileges granted to the MGR_ROLE role. The user SKD has been granted the CONNECT and RESOURCE roles only. The database administrator (DBA) grants MGR_ROLE to the user SKD by executing the command: SQL> GRANT MGR_ROLE TO SKD WITH ADMIN OPTION; Which statement is true about the user SKD after he/she is granted this role? 13

14 A. The user SKD can grant only the MGR_ROLE role to other users, but not the privileges in it B. The user SKD can revoke the MGR_ROLE only from the users for whom he/she is the grantor C. The user SKD can grant the privileges in the MGR_ROLE role to other users but not with ADMIN OPTION D. The user SKD can grant the privileges in the MGR_ROLE role to other users, but cannot revoke privileges from them 8: 观察下面的表并检查赋予 MGR_ROLE 角色的权限 用户 SKD 只被授予 CONNECT 和 RESOURCE 角色 DBA 授权 MGR_ROLE 给 SKD 用户使用下面命令 : SQL> GRANT MGR_ROLE TO SKD WITH ADMIN OPTION; 下面哪些描述是正确的关于 SKD 被授予这个角色之后? A. SKD 只能授予其他用户 MGR_ROLE 角色, 不能是角色里的权限 B. SKD 只可以从它授予的用户的 MGR_ROLE 角色 C. SKD 可以授予其他用户 MGR_ROLE 角色中的权限不使用 ADMIN 选项 D. SKD 可以授权其他用户 MGR_ROLE 角色中的权限, 但是不能收回权限 答案 :A 实验验证 create user SKD identified by SKD; 14

15 User created. grant connect,resource to SKD; Grant succeeded. create role MGR_ROLE; Role created. grant create role to MGR_ROLE; Grant succeeded. grant create user to MGR_ROLE; Grant succeeded. grant select any table to MGR_ROLE; Grant succeeded. 查 dba_sys_privs dba_role_privs,dba_tab_privs 三个视图看用户到底有哪些权限 * from dba_role_privs where grantee='mgr_role'; no rows selected select * from role_sys_privs where role='mgr_role'; ROLE PRIVILEGE ADM MGR_ROLE SELECT ANY TABLE NO MGR_ROLE CREATE ROLE NO MGR_ROLE CREATE USER NO select * from role_tab_privs where role='mgr_role'; 15

16 no rows selected WITH ADMIN OPTION 的意思是被授予该权限的用户有权将某个权限 ( 如 MGR_ROLE) 授予其他用户或角色, 取消是 不级联的 GRANT MGR_ROLE TO SKD WITH ADMIN OPTION; Grant succeeded. create user user1 identified by test1; User created. grant create session to user1; Grant succeeded. grant MGR_ROLE to user1; Grant succeeded. grant create user to user1; grant create user to user1 * ERROR at line 1: ORA-01031: insufficient privileges A 正确, 可以授权给 MGR_ROLE 给别的用户, 但不能把 MGR_ROLE 里面的权限如 create user 授权给别的用户 B 错误, 可以级联回收, 可以回收不是 SKD 自己授予的 C 错, 错误 The user SKD can grant the privileges in the MGR_ROLE role to other users 根据 A 答案,SKD 不能将 MGR_ROLE 角色里的权限给别的用户 D, 也可以回收权限 revoke MGR_ROLE from user1; Revoke succeeded. 16

17 9: After performing a clean shut down of the database instance for maintenance, you mount the database and then execute a command to open the database: SQL> ALTER DATABASE OPEN; Which two statements are true? (Choose two.) A. The online redo log files and online data files are opened B. All the online data files headers are checked for consistency C. Instance recovery is performed before opening the database D. The path and existence of all the log file members are checked 9: 执行一次干净的关闭数据库之后, 你 mount 数据库, 然后执行下面命令 : SQL> ALTER DATABASE OPEN; 哪两个说法是正确的?( 选择两个 ) A. 在线 redo log 和在线数据文件被打开 B. 所有的在线数据文件头检查一致性 C. 实例恢复执行在数据库打开之前 D. 检查所有日志文件成员的路径和存在 答案 :AB 打开数据库过程包括执行以下任务 : 打开数据文件 打开联机重做日志文件如果尝试打开数据库时任一数据文件或联机重做日志文件不存在, 则 Oracle 服务器返回错误 在最后这个阶段,Oracle 服务器会验证是否可以打开所有数据文件和联机重做日志文件, 还会检查数据库的一致性 如有必要, 系统监视器 (SMON) 后台进程将启动实例恢复 17

18 10: Examine the command that is used to create a table: SQL> CREATE TABLE orders ( oid NUMBER(6) PRIMARY KEY, odate DATE, ccode NUMBER (6), oamt NUMBER(10,2) ) TABLESPACE users; Which two statements are true about the effect of the above command? (Choose two.) A. A CHECK constraint is created on the OID column. B. A NOT NULL constraint is created on the OID column. C. The ORDERS table is the only object created in the USERS tablespace. D. The ORDERS table and a unique index are created in the USERS tablespace. E. The ORDERS table is created in the USERS tablespace and a unique index is created on the OID column in the SYSTEM tablespace. 10: 执行下面命令创建一个表 : SQL> CREATE TABLE orders ( oid NUMBER(6) PRIMARY KEY, odate DATE, ccode NUMBER (6), oamt NUMBER(10,2) ) TABLESPACE users; 哪两句是描述正确的 ( 选择两个 )? A. CHECK 约束被创建在 OID 列上 B. NOT NULL 约束被创建在 OID 列上 C. ORDERS 表是唯一创建在 USERS 表空间上的对象 D. ORDERS 表和唯一索引被创建在 USERS 表空间 E. ORDERS 表被创建在 USERS 表空间, 唯一索引被创建 OID 列在 SYSTEM 表空间中 答案 :BD 加在 OID 列上的是主键约束, 包含唯一约束和非空约束,A 错,B 对 因为 OID 上有主键索引, 所以会自动创建唯一索引, 也在 USERS 表空间,CE 错,D 对 18

19 11: Which two statements are true about Shared SQL Area and Private SQL Area? (Choose two.) A. Shared SQL Area will be allocated in the shared pool B. Shared SQL Area will be allocated when a session starts C. Shared SQL Area will be allocated in the large pool always D. The whole of Private SQL Area will be allocated in the Program Global Area (PGA) always E. Shared SQL Area and Private SQL Area will be allocated in the PGA or large pool F. The number of Private SQL Area allocations is dependent on the OPEN_CURSORS parameter 11: 哪两句是正确的关于共享 SQL 区和私有 SQL 区?( 选择 2 个 ) A. 共享 SQL 区被分配在共享池 B. 共享 SQL 区被分配当启动会话时 C. 共享 SQL 区总是被分配到大池 D. 私有 SQL 区总是被分配到 PGA E. 共享 SQL 区和私有 SQL 区被分配到 PGA 或者大池 F. 私有 SQL 区分配取决于参数 OPEN_CURSORS 答案 :AF Shared SQL Area 存储着 SQL 的执行计划等信息, 可以被多个 session 共享, 该 component 存储在 SGA 中 Private SQL Area 包括绑定变量等信息, 每个 session 的这类信息都不一样, 为 session 所独有 (PGA) 且在 Private SQL Area 存储一个指向 shared SQL area ( SGA ) 中共享 SQL 的指针, 与 OPEN_CURSORS 参数相关 12: Which three statements are correct about temporary tables? (Choose three.) A. Indexes and views can be created on temporary tables B. Both the data and structure of temporary tables can be exported C. Temporary tables are always created in a user's temporary tablespace D. The data inserted into a temporary table in a session is available to other sessions 19

20 E. Data Manipulation Language (DML) locks are never acquired on the data of temporary tables 12: 哪三句话是正确的关于临时表?( 选择 3 个 ) A. 索引和视图可以被创建在临时表 B. 临时的数据和表结构都能被导出 C. 临时表总是创建在临时表空间 D. 在一个会话中插入数据到临时表对另一个会话可用 E. 临时表不需要 DML 锁 答案 :ACE 在临时表中可以创建索引 视图及触发器, 还可以使用 Export and Import( 导出和导入 ) 或 Data Pump ( 数据泵 ) 导出和导入临时表的定义 但是, 即使使用了 ROWS 选项, 也不会导出数据 A, 可以对临时表创建索引, 视图, 触发器, 正确 B, 可以用 export 和 import 工具导入导出表的定义和数据, 错误, 不能导出数据 C, 一个用户的临时表就放在当前用户的临时表空间中, 创建临时表后并不产生任何 segments 分配, 与普通表不同, 正确 D, 被插入临时表的数据能被其他会话访问, 错误 临时表中的数据是基于一个会话或者一个事务的, 其他的会话不能访问到 E, 在临时表中,DML 锁永远不需要, 正确 临时表可专用于事务处理, 也可专用于会话 对于专用于事务处理的临时表而言, 数据存在于事务处理期间 ; 对于专用于会话的临时表而言, 数据存在于会话期间 在这两种情况下, 会话插入的数据专用于会话 每个会话仅可查看和修改自己的数据 因此, 临时表的数据从不会获得 DML 锁 参考官方文档 : 20

21 two.) 13: Which two kinds of failures make the Data Recovery Advisor (DRA) generate a manual checklist? (Choose A. Failure when no standby database is configured B. Failure because a data file is renamed accidentally C. Failure that requires no archive logs to be applied for recovery D. Failure due to loss of connectivity-for example, an unplugged disk cable 13: 哪两种故障导致 DRA 产生手动清单?( 选择 2 个 ) A. 当没有配置备用数据库时发生故障 B. 因为数据文件意外的重命名导致的故障 C. 因为没有归档日志应用于恢复产生的故障 D. 由于丢失连接导致的故障, 例如没插电缆的磁盘答案 :BD DRA 会显示两种类型的故障 需要人工干预的故障, 例如, 未插入磁盘电缆的连接故障 可以通过撤销以前的错误操作快速修复的故障, 例如 : 错误的重命名了数据文件 参考官方文档 14: Which two statements correctly describe the relation between a data file and the logical database structures? (Choose two) A. An extent cannot spread across data files. B. A segment cannot spread across data files. C. A data file can belong to only one tablespace. D. A data file can have only one segment created in it. E. A data block can spread across multiple data files as it can consist of multiple operating system (OS) blocks. 21

22 14: 哪两句是正确的关于描述数据文件和数据库逻辑结构关系?( 选择 2 个 ) A. extent 不能跨数据文件 B. segment 不能跨数据文件 C. 一个数据文件只能属于一个表空间 D. 一个数据文件只能创建一个段 E. 一个数据块可以跨多个数据文件, 因为它由多个操作系统块组成 答案 :AC Extent 不能跨数据文件,segment 可以,A 错,B 对每个表空间都可以有一个或多个数据文件, 但一个数据文件只能属于一个表空间,c 对一个数据文件可以有多个段, 并且段能跨数据文件,D 错数据块不能跨数据文件,E 错参考官方文档 : 15: Which two statements are true regarding a tablespace? (Choose two.) A. It can span multiple databases B. It can consist of multiple data files C. It can contain blocks of different sizes D. It can contains segments of different sizes E. It can contains a part of nonpartitioned segment 15: 哪两句关于表空间的描述是正确的?( 选择两个 ) A. 可以跨多个数据库 B. 可以由多个数据文件组成 C. 可以包含不同大小的数据块 D. 可以包含不同大小的段 E. 可以包含非分区段的一部分 答案 :BD 表空间在物理上将所有逻辑结构的数据都存储在表空间中 表空间不能跨数据库,A 错每个表空间都可以有一个或多个数据文件, 但一个数据文件只能属于一个表空间,B 对 22

23 数据库的数据库大小是固定的,C 错段是由一系列的区组成的, 而去又是由一系列的块组成的, 块的大小是固定的, 所以段的大小不固定,D 对非分区段能跨数据文件, 但是不能跨表空间,E 错参考官方文档 : 16: Which two statements are true regarding Oracle Data Pump? (Choose two.) A. EXPDP and IMPDP are the client components of Oracle Data Pump B. DBMS_DATAPUMP PL/SQL packages can be used indedendently of the DATA Pump clients C. Oracle Data Pump export and import operations can be performed only by users with the SYSDBA privilege D. Oracle Data Pump imports can be done from the export files generated in the Original Export Release 9.x E. EXPDP and IMPDP use the procedures provided by DBMS_METADATA to execute export and import commands 16: 哪些是正确的关于 Oracle Data Pump?( 选择两个 ) A. EXPDP 和 IMPDP 是 Oracle Data Pump 的客户端组件 B. DBMS_DATAPUMP PL/SQL 可以独立 Data Pump client 之外使用 C. Oracle Data Pump 的导入和导出操作只能由有 SYSDBA 权限的用户执行 D. Oracle Data Pump 可以导入由 9.x 版本的 Original Export 产生的导出文件 E. EXPDP 和 IMPDP 使用 DBMS_METADATA 执行导出和导入命令 答案 :AB Data Pump 包含三个部分 :DBMS_DATAPUMP,DBMS_METADATA,, 客户端命令行 EXPDP 和 IMPDP, 所以 A 正确 DBMS_DATAPUMP 和 DBMS_METADATA 都可以独立于 Data Pump client 使用,B 正确 参考官方文档 : 23

24 17: Identify the two situations in which the alert log file is updated with details. (Choose two.) A. Running a query on a table returns "ORA-600: Internal Error" B. Inserting a value in a table returns "ORA-01722: Invalid Number" C. Creating a table returns "ORA-00955: name is already used by an existing object' D. Inserting a value in a table returns "ORA-00001: unique constraint (SYS.PK_TECHP) violated." E. Rebuilding an index using ALTER INDEX... REBUILD fails with an error "ORA-01578: ORACLE data block corrupted (file # 14, 50)." F. Rebuilding an index using ALTER INDEX... REBUILD fails with an error "ORA-01578: ORACLE data block corrupted (file #14, block #50)." 17: 鉴别两种情况下告警日志更新细节 ( 选择两个 ) A. 在一个表运行查询返回 ORA-600:Internal Error B. 在一个表插入值返回 ORA-01722: Invalid Number C. 创建一个表返回 ORA-00955:name is already used by an existing object D. 在一个表插入值返回 "ORA-00001: unique constraint (SYS.PK_TECHP) violated." E. 重建索引使用 ALTER INDEX... REBUILD 失败, 报 "ORA-01578: ORACLE data block corrupted (file # 14, 50)." F. 重建索引使用 ALTER INDEX... REBUILD 失败, 报 "ORA-01578: ORACLE data block corrupted (file # 14, block # 50)." 答案 :AF 每个数据库都有一个 alert_<sid >.log 文件 此文件位于数据库所在的服务器中, 如果设置了 $ORACLE_BASE, 则此文件默认存储在 $ORACLE_BASE/diag/rdbms/<db_name>/<SID>/trace 中 数据库预警文件是按时间顺序列出消息的日志文件, 例如 : 启动时使用的任何非默认初始化参数 已发生的所有内部错误 ( ORA-600) 块损坏错误( ORA-1578 ) 和死锁错误 ( ORA-60 ) 管理操作, 如 SQL 语句 CREATE ALTER DROP DATABASE 和 TABLESPACE, 以及 Enterprise Manager 或 SQL*Plus 语句 STARTUP SHUTDOWN ARCHIVE LOG 和 RECOVER 与共享服务器和分派程序进程的功能相关的多个消息和错误 自动刷新实体化视图时发生的错误 24

25 18: Which two statements are true about alerts? (Choose two.) A. Clearing an alert sends the alert to the alert history B. Response actions cannot be specified with server-generated alerts C. The nonthreshold alerts appear in the DBA_OUTSTANDING_ALERTS view D. Server-generated alerts notify the problems that cannot be resolved automatically and require administrators to be notified 18: 哪两个语句是正确的关于告警日志?( 选择两个 ) A. 清除告警日志发送告警到告警历史 B. 响应动作不会产生指定的服务器告警 C. 阈值警报出现在视图 DBA_OUTSTANDING_ALERTS 中 D. 服务器告警通知不能自动解决和需要管理员注意的问题 答案 :AD 告警有两种, 一种是 trace 和 alert 文件, 一种是 Server-Generated Alerts 这道题应该说的是第二种情况 Server-Generated Alerts 是数据库产生的一种告警, 它可能包括解决这个告警的方法, 当告警清除后还会生成通知消息, 当问题出现或者没有匹配到期望的阈值的时候就会自动生成告警, 这些阈值都是可以定义的, 比如 1. 每秒的物理读 2. 每秒的用户提交 3.sql 服务响应时间一些没有基于阈值的比如 1. 快照太旧 2. 恢复会话挂起 3. 恢复区的使用 A: 正确, 当告警清除后会从 DBA_OUTSTANDING_ALERTS 删除, 并且在 DBA_ALERT_HISTORY 中添加 B: 错误, 会产生 C: 错误, 一些没有基于阈值的也会警报 D: 正确, 发现的问题不会自动处理, 需要 DBA 人工干预参考官方文档 : 25

26 19: Examine the following steps performed on a database instance: 1. The DBA grants the CREATE TABLE system privilege to the SKD user with ADMIN OPTION 2. The SKD user creates a table 3. The SKD user grants the CREATE TABLE system privilege to the HR user 4. The HR user creates a table 5. The DBA revokes the CREATE TABLE system privilege from SKD Which statement is true after step 5 is performed? A. The table created by SKD is not accessible and SKD cannot create new tables B. The tables created by SKD and HR remain, but both cannot create new tables C. The table created by HR remains and HR still has the CREATE TABLE system privilege D. The table created by HR remains and HR can grant the CREATE TABLE system privilege to other users 19: 检查下面在数据库实例执行的步骤 : 1. DBA 授予 SKD 用户 CREATE TABLE 权限使用 ADMIN OPTION 2. SKD 用户创建一个表 3. SKD 用户授予 CREATE TABLE 系统权限给 HR 用户 4. HR 用户创建一个表 5. DBA 收回 SKD 的 CREATE TABLE 系统权限 哪些语句是正确的上述 5 步执行之后? A. SKD 创建的表是不可访问的并且 SKD 不能创建新表 B. SKD 和 HR 创建的表仍然在, 但都不能创建新表 C. HR 创建的表存在且 HR 仍然有 CREATE TABLE 系统权限 D. HR 创建的表存在且 HR 可以授予其它用户 CREATE TABLE 系统权限 答案 :C SKD 创建的表是可以访问的, 但是不能创建新表,A 错系统权限的收回不是级联的, 所以不会影响 HR 用户的权限,HR 可以创建新表,B 错,C 对 SKD 授予 HR 权限时没有使用 with admin option, 故 HR 用户不能授予其他用户权限,D 错 参考官方文档 : 26

27 20: You execute this command to drop the ITEM table, which has the primary key referred in the ORDERS table: SQL> DROP TABLE scott.item CASCADE CONSTRAINTS PURGE; Which two statements are true about the effect of the command? (Choose two.) A. No flashback is possible to bring back the ITEM table. B. The ORDERS table is dropped along with the ITEM table. C. The dependent referential integrity constraints in the ORDERS table are disabled. D. The dependent referential integrity constraints in the ORDERS table are removed. E. The table definition of the ITEM table and associated indexes are placed in the recycle bin 20: 执行下面命令删除 ITEM 表, 主键被 ORDERS 表参照 : SQL> DROP TABLE scott.item CASCADE CONSTRAINTS PURGE; 哪些语句是正确的关于上述命令的影响?( 选择两个 ) A. 不能使用 flashback 找回 ITEM 表 B. ORDERS 表随 ITEM 表一起删除 C. ORDERS 表的参照性完整约束失效 D. ORDERS 表的参照性完整约束删除 E. ITEM 的表定义和相关的索引被放到回收站 答案 :AD 由于使用了 PURGE, 不会讲表和相关的对象放入回收站, 因此 flashback 不能用,A 对,E 错指定 CASCADE CONSTRAINTS 语句是指删除所有的参照完整性约束包括主键约束和唯一性约束 如果不指定此语句, 则参照完整性约束还存在,drop table 时会返回一个错误 C 错,D 对 B 错误, 如果想实现这个需要级联删除, alter table order_status2 add constraint order_status2_modified_by_fk modified_by references employees(employee_id) on delete cascade; -- 使用了 on delete cascade 语句, 用于删除父表一条记录的时候, 子表记录也要删除 alter table order_status2 add constraint order_status2_modified_by_fk modified_by references employees(employee_id) on delete set null; -- 这里使用了 on delete set null 语句, 当父表删除的时候, 子表记录就会设置为空 参考文档 : 27

28 21: View the Exhibit and examine the privileges granted to the SL_REP user. The EMP table is owned by the SCOTT user. The SL_REP user executes the following command: SQL> GRANT SELECT ON scott.emp TO hr; Which statement describes the outcome of the command? A. The command executes successfully B. The command produces an error because the EMP table is owned by SCOTT C. The command produces an error because SL_REP has the GRANT ANY OBJECT PRIVILEGE without ADMIN_OPTION D. The command produces an error because SL_REP does not have the SELECT privilege with GRANT_OPTION on the EMP table 21: 查看下图并检查授予 SL_REP 用户的权限 EMP 表的拥有者是 SCOTT 用户 SL_REP 用户执行下面的命令 : SQL> GRANT SELECT ON scott.emp TO hr; 28

29 哪些关于输出结果的命令是正确的? A. 命令执行成功 B. 命令产生一个错误因为 EMP 表的拥有者是 SCOTT C. 命令产生一个错误因为 SL_REP 用户 GRANT ANY OBJECT PRIVILEGE 没使用 ADMIN_OPTION D. 命令产生一个错误因为 SL_REP 没有 SELECT 权限在 EMP 表上 答案 :A A 对, 因为 SL_REP 用户拥有 GRANT ANY OBJECT PRIVILEGE 权限, 所以可以授予别的用户 SELECT 权限下面是实验 1 创建 SL_REP 用户 create user SL_REP identified by 123; 2 授予相应的权限 grant connect,resource to SL_REP; grant grant any object privilege to SL_REP; 3 执行上面的命令 SQL> GRANT SELECT ON scott.emp TO hr; Grant succeeded. 22: You executed this command to create a temporary table: SQL> CREATE GLOBAL TEMPORARY TABLE report_work_area ( startdate DATE, enddate DATE, class CHAR(20) ) ON COMMIT PRESERVE ROWS; Which statement is true about the rows inserted into the REPORT_WORK_AREA table during a transaction? A. The rows stay in the table only until session termination B. The rows stay in the table only until the next transaction starts on the table C. The rows are visible to all current sessions after the transaction in committed 29

30 D. The rows stay available for subsequent sessions after the transaction is committed 22: 执行下面命令创建一个临时表 : SQL> CREATE GLOBAL TEMPORARY TABLE report_work_area ( startdate DATE, enddate DATE, class CHAR(20) ) ON COMMIT PRESERVE ROWS; 哪些语句是正确的关于一个事务中, 在表 REPORT_WORK_AREA 中插入行? A. 表中的行保持直到会话中止 B. 表中的行保持直到下个事务开始 C. 事务提交后行是可见的对所有当前会话来说 D. 事务提交后行依旧可用对后续会话 答案 :A 因为使用了 ON COMMIT PRESERVE ROWS; 即指定插入行的生存期为会话的持续时间 ON COMMIT DELETE ROWS : 指定插入行的生存期仅为事务处理的持续时间 参考官方文档 : 23: You want to access employee details contained in flat files as part of the EMPLOYEE table. You plan to add a new column to the EMPLOYEE table to achieve this. Which data types would you use for the new column? A. CLOB B. BLOB C. BFILE D. LONG RAW 23: 你想把包含在平面文件中的员工详细信息作为 EMPLOYEE 表的一部分 你打算添加一个新的列实现 哪种数据类型你需要使用在新的列? A. CLOB 30

31 B. BLOB C. BFILE D. LONG RAW 答案 :C CLOB 字符型大对象 一般存储大数量文本信息 存储单字节, 固定宽度的数据 BLOB 二进制大对象 存储在数据库里的大对象, 一般是图像声音等文件 BFILE 二进制文件, 存储在数据库外的操作系统文件, 只读的 把此文件当二进制处理 LONG RAW 为未加工的可变长二进制数据, 最长 2G( 不建议使用 ) 24: The HR user creates a stand-alone procedure as follows and grants the EXECUTE privilege on the procedure to many database users: CREATE OR REPLACE PROCEDURE create_dept ( v_deptno NUMBER, v_dname VARCHAR2, v_mgr NUMBER, v_loc NUMBER) BEGIN INSERT INTO hr.departments VALUES (v_deptno, v_dname, v_mgr, v_loc); END; The users having permission to execute the procedure are able to insert records into the DEPARTMENTS table even though they do not have the INSERT privilege on the table. You want only those users who have privileges on the DEPARTMENTS table to be able to execute the procedure successfully. What would you suggest to the PL/SQL developers to achieve this? A. Create the procedure with definer's right. B. Create the procedure with invoker's right. C. Grant the EXECUTE privilege with GRANT OPTION on the procedure to selected users. D. Create the procedure as part of a PL/SQL package and grant the EXECUTE privilege on the package to selected users. 24: HR 用户创建一个标准存储过程并授予 EXECUTE 权限给数据库用户 : CREATE OR REPLACE PROCEDURE create_dept ( v_deptno NUMBER, v_dname VARCHAR2, v_mgr NUMBER, v_loc NUMBER) BEGIN INSERT INTO hr.departments VALUES (v_deptno, v_dname, v_mgr, v_loc); 31

32 END; 用户拥有权限执行过程也能够插入记录到 DEPARTMENTS 表, 即使它没有 INSERT 表的权限 你想拥有 DEPARTMENTS 表权限的用户能成功执行过程 你建议 PL/SQL 开发人员如何实现? A. 创建过程使用 definer 身份 B. 创建过程使用 invoker 身份 C. 使用 GRANT OPTION 授予 EXECUTE 权限给选择的用户 D. 创建过程作为包的一部分并且授予 package EXECUTE 权限给选择的用户 答案 :B A: 错误, 应创建调用者权限, 而不是定义者权限 B: 正确 C: 错误, 默认是以定义者权限创建存储过程, 那么有 execute 权限就可以向部门表 insert 数据不能实现需求 grant option 权限是指可以把存储过程权限授权给其它人 D: 错误, 存储过程可单独创建, 不需要放到包里, 这样也不能实现题里的需求 25: View the Exhibit to examine the details for an incident. Which statement is true regarding the status of the incident? 32

33 A. The DBA is working on the incident and prefers that the incident be kept in the ADR B. The incident is now in the Done state and the ADR can select the incident to be purged C. The incident has been newly created and is in the process of collecting diagnostic information D. The data collection for the incident is complete and the incident can be packaged and sent to Oracle Support 25: 查看图表检查 incident 的详细信息 哪些语句是正确的关于 incident 的状态? A. DBA 正在处理 incident 并且更喜欢将 incident 保存在 ADR 中 B. Incident 现在处于 Done 状态并且 ADR 可以选择清理 incident C. Incident 被新建并且正在收集诊断信息 D. Incident 收集信息已经完成并且可以被打包发送给 Oracle Support 答案 :D 使用 Enterprise Manager 支持工作台, 可以通过执行以下常规步骤来调查 报告并 ( 在某些情况下 ) 解决问题 : 1. 在 Enterprise Manager 的 Database( 数据库 ) 主页上, 复查严重错误预警 选择一个预警查看详细资料 2. 分析问题详细信息并查看针对问题所记录的所有意外事件的列表 可显示自动运行的所有健康状况检查的查找结果 3. ( 可选 ) 运行附加健康状况检查并调用 SQL Test Case Builder, 该程序将收集与 SQL 问题相关的所有必需数据, 并且以 Oracle 技术支持能够再现该问题的方式对这些信息进行打包 4. 使用 My Oracle Support 创建一个服务请求并 ( 可选 ) 随问题信息一起记录服务请求号 5. 调用意外事件打包服务, 该服务可以对收集到的有关某个问题的所有诊断数据进行打包, 可以选择将这些数据上载到 Oracle 技术支持 上载之前可以对数据进行编辑, 删除敏感信息 6. 可以在支持工作台中维护一份服务请求的活动日志 可运行 Oracle 指导以帮助修复 SQL 故障或损坏的数据 7. 为一个 一些或所有意外事件设置状态, 以便关闭问题 参考官方文档 : : What can you achieve by implementing reverse key index? A. Reverse the bytes of each column indexed including the row ID 33

34 B. Store a bitmap for each key value instead of a list of row IDs in the leaf node C. Prevent contention on the highest leaf block when using sequences to generate keys D. Remove repeated key values from the index to fit more index entries in a given amount of disk space 26: 你可以通过反向键索引实现什么? A. 反转每个索引列的字节包括 row ID B. 存储每个键值的位图代替叶节点的一系统 row ID C. 避免争用最高的叶子块当使用序列产生键值时 D. 删除重复的索引键值适合更多的索引条目在给定数量的磁盘空间 答案 :C A 改变的是字符顺序, 不是列顺序 B 描述的是 bitmap index C 正确 D Remove repeated key values 可以尝试用函数索引 substr() 达到 参考官方文档 : 27: You executed the following command to perform a backup of the USERS tablespace: SQL> ALTER TABLESPACE users BEGIN BACKUP; ALTER TABLESPACE users BEGIN BACKUP * ERROR at line 1: ORA-01123: cannot start online backup; media recovery not enabled What could be the reason for this error? A. The MTTR Advisor is disabled. B. The database is in NOARCHIVELOG mode. C. The tablespace is already in backup mode. D. The Flash Recovery Area is not configured. 34

35 27: 执行下面的命令备份 USERS 表空间 SQL> ALTER TABLESPACE users BEGIN BACKUP; ALTER TABLESPACE users BEGIN BACKUP * ERROR at line 1: ORA-01123: cannot start online backup; media recovery not enabled 什么导致整个错误 A. MTTR Advisor 禁用 B. 数据库处于 NOARCHIVELOG 模式 C. 表空间已经处于备份模式 D. Flash Recovery Area 没有配置 答案 :B 对数据库进行热备, 必须处于归档模式 出现这个报错是因为数据库没有开归档, 所以 B 对 28: Which statements listed below describe the data dictionary views? 1. These are stored in the SYSTEM tablespace 2. These are the based on the virtual tables 3. These are owned by the SYS user 4. These can be queried by a normal user only if O7_DICTIONARY_ACCESSIBLILITY parameter is set to TRUE 5. The V$FIXED_TABLE view can be queried to list the names of these views A. 1 and 3 B. 2,3 and 5 C. 1,2, and 5 D. 2,3,4 and 5 28: 下列哪些语句描述的是数据字典视图? 1. 存储在 SYSTEM 表空间 35

36 2. 基于虚拟表 3. SYS 用户拥有 4. 可以被正常的用户查询, 只要 O7_DICTIONARY_ACCESSIBLILITY 参数设置为 TRUE 5. V$FIXED_TABLE 可以被查询列出这些视图的名字 A. 1 和 3 B. 2,3 和 5 C. 1,2 和 5 D. 2,3,4 和 5 答案 :A 1,3 它们都被存在 system 表空间以及 owner 都是 sys 用户 2 动态性能视图以基于数据库服务器内部的内存结构构建的虚拟表为基础 4 O7_DICTIONARY_ACCESSIBILTY 设置为 TRUE, 则如果用户授予了如 select any table 等权限, 即使不是 dba 或 sysdba 用户也可以访问数据字典 设置为 FLASE, 则普通用户不能访问 5 V$FIXED_TABLE 只能查询动能性能视图所有的名称 29: View the Exhibit to examine the error that occurred during the database startup. You opened an RMAN session for the database. To repair the failure, you executed the following command as the first RMAN command: RMAN> REPAIR FAILURE; Which statement describes the consequence of this command? A. The command performs the recovery and closes the failure 36

37 B. The command only displays the advice and the RMAN script required for recovery C. The command executes the RMAN script to repair the failure and remove the entry from the Automatic Diagnostic Repository (ADR) D. The command produces an error because the ADVISE FAILURE command was not executed before the REPAIR FAILURE command 29: 查看图表查看数据库启动期间发生的错误 你打开一个数据库的 RMAN 会话 去修复这个故障, 你执行下面的命令作为第一个 RMAN 命令 : RMAN> REPAIR FAILURE; 哪个语句描述命令的结果? A. 命令执行 recovery 并且关闭故障 B. 命令只显示建议和恢复需要的 RMAN 脚本 C. 命令执行 RMAN 脚本修复故障并从 ADR 删除信息 D. 命令产生一个错误因为 ADVISE FAILURE 命令没有在 REPAIR FAILURE 之前执行 答案 :D 执行步骤 list failure advise failure repair failure change failure ADR(automatic diagnostic repository) 自动诊断存储库,ADR 提供了大量新的信息以及新的工具以方便数据库管理 30: You plan to move data from a flat file to a table in your database. You decide to use SQL*Loader direct path load method to perform this task. The table in which you plan to load data in an important table having various integrity constraint defined on it. Which constraints will remain enabled by default during this operation? (Choose all that apply.) A. CHECK B. UNIQUE C. NOT NULL D. PRIMARY KEY E. FOREIGN KEY 37

38 30: 你打算从平面文件移动数据到你的数据库 你决定使用 SQL*Loader 直接路径加载方法来执行该任务 你打算加载数据 的重要表上定义的有各种完整性约束 哪些约束将默认启动在这个操作期间?( 选择所有适用的 ) A. CHECK B. UNIQUE C. NOT NULL D. PRIMARY KEY E. FOREIGN KEY 答案 :BCD 31: What is the effect of this command? SQL> AUDIT DROP ANY TABLE BY scott BY SESSION WHENEVER SUCCESSFUL; A. One audit record is created for every successful DROP TABLE command executed in the session of SCOTT B. One audit record is generated for the session when SCOTT grants the DROP ANY TABLE privilege to other users C. One audit record is created for the whole session if user SCOTT successfully drops one or more tables in his 38

39 session D. One audit record is created for every session of any other user in which a table owned by SCOTT is dropped successfully E. One audit record is created for every successful DROP TABLE command executed by any user to drop tables owned by SCOTT 31: 下面命令的影响是什么? SQL> AUDIT DROP ANY TABLE BY scott BY SESSION WHENEVER SUCCESSFUL; A. SCOTT 用户成功在会话中执行 DROP TABLE 命令会创建一个审计记录 B. 当 SCOTT 用户授予 DROP ANY TABLE 权限给其他用户时, 会话产生一个审计记录 C. 如果 SCOTT 用户成功的删除一个或多个表在它的会话中, 整个会话会产生一个审计记录 D. 一个审计记录被创建由每个其它用户成功删除 SCOTT 用户拥有表的会话 E. 一个审计记录被创建由其他用户成功执行 DROP TABLE 命令删除 SCOTT 拥有的表 答案 :C BY SESSION: 一个会话里的同类型的操作只会生成一条审计记录 BY ACCESS: 每个审计操作都会产生一个审计记录, 默认为 BY ACCESS 指定 WHENEVER SUCCESSFUL, 只有语句或操作成功, 才会记录指定 WHENEVER NOT SUCCESSFUL, 只有语句或操作失败或返回错误才会记录如果不指定, 失败和成功的都会产生审计 BY SCHMEA: 指定选择审计方案包含的对象 本题目指定了 by scott 和 by session 所以只有 scott 用户执行相同的 drop 操作只会产生一条记录故选择 C 参考官方文档 : 31: User A executes the following command to drop a large table in your database: SQL> DROP TABLE trans; While the drop table operation is in progress; user B executes the following command on the same table; SQL> DELETE FROM trans WHERE tr_type='sl'; Which statement is true regarding the DELETE command? A. It fails to delete the records because the records are locked in the SHARE mode 39

40 B. It deletes the rows successfully because the table is locked in the SHARE mod C. It fails to delete the records because the table is locked in EXCLUSIVE mode D. It deletes the rows successfully because the table is locked in SHARE ROW EXCLUSIVE mode 31: 用户 A 执行下面的命令删除数据库中的大表 : SQL> DROP TABLE trans; 当删除表操作正在进行时 ; 用户 B 执行下面的命令在相同的表 ; SQL> DELETE FROM trans WHERE tr_type='sl'; 哪些语句是正确的关于 DELETE 命令? A. 删除记录失败因为记录被锁处于 SHARE 模式 B. 删除行成功因为表被锁处于 SHARE 模式 C. 删除记录失败因为表被锁处于 EXCLUSIVE 模式 D. 删除行成功因为表被锁处于 SHARE ROW EXCLUSIVE 模式 答案 :C 当执行 alter table,drop table,drop index,truncate table,lock exclusive 的时候会造成 excluvise 锁, 因此 B 错,C 对当执行 lock share row exclusive 的时候会造成共享排他锁, 排除 D 当执行 insert,update,delete,lock row share 的时候会造成行级排他锁, 在提交前不允许做 dml 操作, 因此排除 A 参考官方文档 : 32: In which situation may the UNDO_RETENTION parameter be ignored, even if it is set to a value? A. When the data file of the undo tablespace is autoextensible B. When there are more than one undo tablespace available in the database C. When the undo tablespace is of a fixed size and retention guarantee is not enabled D. When the undo tablespace is autoextensible and retention guarantee is not enabled 32: 40

41 在什么情况下 UNDO_RETENTION 参数即使设置了, 也不起作用? A. 当 undo 表空间的数据文件是自动扩展的时候 B. 当数据库有不只一个 undo 表空间可用的时候 C. 当 undo 表空间是固定尺寸且 retention guarantee 没有启用的时候 D. 当 undo 表空间是自动扩展且 retention guarantee 没有启用的时候 答案 :C 此题考的是 UNDO_RETENTION 即使设置了值, 在哪些情况下会忽略 在固定大小的还原表空间, 且没有设置 retention guarantee 强制保留,UNDO_RETENTION 就会被忽略 如果设置了 retention guarantee, 即使是固定大小的表空间, 也不会忽略 UNDO_RETENTION, 但有可能出现事务失败 参考官方文档 : 33: You perform differential incremental level 1 backups of your database on each working day and level 0 backup on Sunday to tape: Which two statements are true about differential incremental backups? (Choose two.) A. The backup performed on Sundays contains all the blocks that have ever been used in the database B. The backup performed on Sundays contains all the blocks that have changed since the last level 1 backup C. The backup performed on each working day contains all the blocks that have changed since the last level 0 backup D. The backup performed on Monday contains all the blocks that have changed since the level 0 backup and every other working day contains all the blocks that have changed since the level 1 backup 33: 你在你的数据库工作日执行 level 1 差异增量备份, 在周日执行 level 0 差异增量备份到磁带上 ; 哪两句是正确的关于差异增量备份?( 选择两个 ) A. 每周日执行的备份包括数据库使用过的所有的块 B. 每周日执行的备份包括所有自从上次 level 1 备份改变的块 C. 工作日执行的备份包括所有自从上次 level 0 备份改变的块 D. 周一执行的备份包括自从 level 0 备份改变的块和其它工作日自从 level 1 备份改变的块 答案 :AD 执行增量备份操作时, 首先需要的是增量基本备份 (incremental base backup), 即 level 0, 今后所有的增量备份都是基 41

42 于这个基本备份的 0 级增量备份会备份所有曾经在此数据库中使用的块 从星期一到星期六的每一天,1 级增量备份备份最近 1 或 0 级增量备份以来所有更改过的块 周一备份周日 0 级备份以来变化的块, 周二备份周一 1 级备份改变的块, 等等 参考官方文档 : 34: Your database is open and the LISTENER listener is running. The new DBA of the system stops the listener by using the command: LSNRCTL> STOP What happens to the sessions that are presently connected to the database instance? A. The sessions are able to perform only queries B. The sessions are not affected and continue to function normally C. The sessions are terminated and the active transactions are rolled back D. The sessions are not allowed to perform any operations till the listener is started 34: 你的数据库处于 open 且 LISTENER 正在运行 新的 DBA 停止监听使用命令 : command: LSNRCTL> STOP 现在连接数据库实例会话会发生什么? A. 会话只能执行查询 B. 会话无影响并且功能正常 C. 会话中止并且活动的事务回滚 D. 会话不允许任何操作直到监听启动 答案 :B 当会话连接到数据库, 即使停止了监听, 也不会影响会话的政策操作 -- 首先在一个 crt 窗口连接上数据库 ~]$ sqlplus SQL> select * from dept; DEPTNO DNAME LOC ACCOUNTING NEW YORK 20 RESEARCH DALLAS 42

43 30 SALES CHICAGO 40 OPERATIONS BOSTON 在另外一个 crt 窗口执行下面命令 admin]$ lsnrctl stop -- 停止监听 admin]$ lsnrctl status -- 查看状态 LSNRCTL for Linux: Version Production on 27-JUL :15:50 Copyright (c) 1991, 2011, Oracle. All rights reserved. Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521)) TNS-12541: TNS:no listener TNS-12560: TNS:protocol adapter error TNS-00511: No listener Linux Error: 111: Connection refused 在第一个 crt 窗口验证是否中断会话 SQL> select * from dept; DEPTNO DNAME -- 不受影响, 执行 dml 也不受影响 LOC ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON SQL> exit -- 退出 ~]$ sqlplus -- 重新连接, 发现无法连接了 SQL*Plus: Release Production on Wed Jul 27 22:17: Copyright (c) 1982, 2011, Oracle. All rights reserved. ERROR: ORA-12541: TNS:no listener 35: You are managing an Oracle Database 11g database with the following backup strategy: 1. On Sunday, an incremental level 0 tape backup is performed 2. Monday through Saturday, a cumulative incremental level 1 tape backup is performed Which two statements are true regarding the backups performed? (Choose two.) 43

44 A. The backup performed in step 1 backs up all blocks that have ever been in use in the database B. The backup performed in step 2 copies all the blocks changed since the most recent level 0 backup C. The backup performed in step 1 backs up all the blocks changed since the most recent level 1 backup D. The backup performed in step 2 backs up all blocks that have changed since the most recent incremental backup at level 1 35: 你管理一个 Oracle Database 11g 数据库使用下面的备份策略 : 1. 周日执行一个 level 0 增量磁带备份 2. 周一到周六, 执行一个 level 1 累积增量磁带备份 哪两句是正确的关于执行备份?( 选择两个 ) A. 第一步执行的备份会备份所有数据库使用过的数据块 B. 第二步执行的备份拷贝所有自从上次 level 0 备份改变的数据块 C. 第一步执行的备份会备份自从上次 level 1 备份改变的数据块 D. 第二步执行的备份会备份自从上次 level 1 增量备份改变的数据块 答案 :AB 此题考查的是增量累积备份 参考 33 题 36: View the Exhibit and examine the attributes of an undo tablespace. In an OLTP system, the user SCOTT has started a query on a large table in the peak transactional hour that performs bulk inserts. The query runs for more than 15 minutes and then SCOTT receives the following error: ORA-01555: snapshot too old What could be the reason for this error? A. The query is unable to get a read-consistent image. B. There is not enough space in Flash Recovery Area. 44

45 C. There is not enough free space in the flashback archive. D. The query is unable to place data blocks in undo tablespace. 36: 查看下图并检查 undo 表空间的属性 在 OLTP 系统, 用户 SCOTT 在事务顶峰时期在一个大表启动一个查询执行批量插入 查询运行超过 15 分钟并且 SCOTT 收到下面错误 : ORA-01555: snapshot too old 这个错误的原因是什么? A. 查询不能得到一致性读副本 B. Flash Recovery Area 没有足够的空间 C. 闪回归档没有足够的空间 D. 查询不能放数据块在 undo 表空间 答案 :A ~]$ oerr ora , 00000, "snapshot too old: rollback segment number %s with name \"%s\" too small" // *Cause: rollback records needed by a reader for consistent read are // overwritten by other writers // *Action: If in Automatic Undo Management mode, increase undo_retention // setting. Otherwise, use larger rollback segments 该错误的意思是, 快照太旧了, 回滚段太小, 原因 : 读一致性需要获取其他写用户的回滚段解决办法 : 如果是自动 undo 管理模式, 增加 undo_retention 的设置, 否则, 使用比较大的回滚段因此选择 A 37: Which two operations can be performed on an external table? (Choose two.) A. Create a view on the table B. Create an index on the table C. Create a synonym on the table D. Add a virtual column to the table E. Update the table using the UPDATE statement F. Delete rows in the table using the DELETE command 45

46 37: 哪两种操作可以在外部表执行?( 选择两个 ) A. 在表上创建视图 B. 在表上创建索引 C. 在表上创建同义词 D. 在表上增加一个虚拟列 E. 更新表使用 UPDATE 语句 F. 删除行使用 DELETE 命令 答案 :AC 参考官方文档 : 38: Which two statements are true regarding listeners? (Choose two.) A. Listeners use only the TCP/IP protocol. B. Multiple listener processes can run simultaneously on a host. C. Multiple database instances can be registered with a single listener. D. The listener-related errors can be traced only at the administrative level. E. Only one database instance can be registered with a single listener at any time. 38: 哪两句是正确的关于监听?( 选择两个 ) A. Listener 只使用 TCP/IP 协议 B. 多个 linstener 进程可以同时运行在一个主机上 C. 多个数据库实例可以在一个监听上注册 D. Listener 相关的错误只能在管理员级别追踪 E. 一个数据库实例只能被一个 listener 注册在任何时候 答案 :BC A 错误, 还有 IPC B 正确, 可以设置不同的端口号, 从而启动多个监听 C 正确, 多个数据库可以注册到同一个监听 D 错误, 相关信息会写入到 Listener Log File E 和 C 冲突, 错误 46

47 39: You set the following parameters in the parameter file and restarted the database: MEMORY_MAX_TARGET=0 MEMORY_TARGET=500M PGA_AGGREGATE_TARGET=90M SGA_TARGET=270M two.) Which two statements are true about these parameters after the database instance is restarted? (Choose A. The MEMORY_MAX_TARGET parameter is automatically set to 500 MB. B. The PGA_AGGREGATE_TARGET and SGA_TARGET parameters are automatically set to zero. C. The value of the MEMORY_MAX_TARGET parameter remains zero until it is changed manually. D. The lower bounds of PGA_AGGREGATE_TARGET and SGA_TARGET parameters are set to 90 MB and 270 MB, respectively. 39: 设置下列参数在参数文件并重启数据库 MEMORY_MAX_TARGET=0 MEMORY_TARGET=500M PGA_AGGREGATE_TARGET=90M SGA_TARGET=270M 哪两句是正确的关于这些参数在数据库实例重启之后?( 选择两个 ) A. MEMORY_MAX_TARGET 参数自动设置为 500MB B. PGA_AGGREGATE_TARGET 和 SGA_TARGET 参数自动设置为 0 C. MEMORY_MAX_TARGET 参数为 0 直到手动修改 D. PGA_AGGREGATE_TARGET 和 SGA_TARGET 的下限分别是 90MB 和 270MB 答案 :AD 设置了 MEMORY_TARGET 之后, 会自动管理 sga 和 pga 如果只设置了 MEMORY_TARGET, 没设置 MEMORY_MAX_TARGET, 则 MEMORY_MAX_TARGET 会和 MEMORY_TARGET 相同 故 A 正确 PGA_AGGREGATE_TARGET 和 SGA_TARGET 分别设置为 90M 和 270M, 意味着 pga 和 sga 最小不会小于 90M 和 270M, 故 D 正确 47

48 参考官方文档 : : You have issued a SHUTDOWN ABORT command to bring down your database instance. Consider the steps that will be performed later when you open the database: 1. SGA is allocated. 2. Control file is read. 3. Redo log files are opened. 4. Instance recovery is started. 5. Background processes are started. 6. Data file headers are checked for consistency. 7. Server parameter file or the initialization parameter file is read. Which option has the correct order in which these steps occur? A. 7, 1, 5, 2, 3, 6, 4 B. 1, 2, 3, 7, 5, 6, 4 C. 7, 1, 4, 5, 2, 3, 6 D. 1, 7, 5, 4, 2, 3, 6 40: 你执行 SHUTDOWN ABORT 命令关闭数据库实例 考虑打开数据库之的步骤 : 1. 分配 SGA 2. 读取控制文件 3. 打开日志文件 4. 开始实例恢复 5. 启动后台进程 6. 检查数据文件头一致性 7. 读取 spfile 或 pfile 文件 哪个是正确的步骤? 48

49 A. 7, 1, 5, 2, 3, 6, 4 B. 1, 2, 3, 7, 5, 6, 4 C. 7, 1, 4, 5, 2, 3, 6 D. 1, 7, 5, 4, 2, 3, 6 答案 :A 本题考查的是数据库启动 参考官方文档 : 41: A user, who is authenticated externally, logs in to a remote machine and connects to the database instance. What action would you take to ensure that a user cannot connect to the database instance by merely logging in to a remote machine? A. Set REMOTE_OS_ROLES to FALSE B. Set OS_ROLES parameter to FALSE C. Set the REMOTE_OS_AUTHENT parameter to FALSE D. Set the REMOTE_LOGIN_PASSWORD_FILE parameter to NONE 41: 一个用户, 通过外部认证, 登录一个远程机器并连接数据库实例 你采取什么行动才能确保用户仅仅不能通过远程机器连接数据库实例? A. 设置 REMOTE_OS_ROLES 为 false B. 设置 OS_ROLES 为 false C. 设置 REMOTE_OS_AUTHENT 参数为 false D. 设置 REMOTE_LOGIN_PASSWORD_FILE 参数为 none 答案 :C 参数 REMOTE_OS_ROLES 指定操作系统角色是否被远程客户端允许参数 OS_ROLES 定义了是由 Oracle 还是操作系统来验证和管理每个用户的角色 TRUE 表示操作系统管理,FLASE 表示 Oracle 自身验证和管理角色 49

50 参数 REMOTE_OS_AUTHENT 用来限制外部验证的方式远程数据库验证 FLASE 不允许,TRUE 代表允许 参数 REMOTE_LOGIN_PASSWORD_FILE 代表是否使用口令文件验证,NONE 是不使用,exclusive 独占口令文件, share 共享口令文件 参考官方文档 : 42: Which two statements are true about setting the FAST_START_MTTR_TARGET initialization parameter to a nonzero value? (Choose two.) A. The MTTR advisor will be disabled B. Automatic checkpoint tuning will be enabled C. The value for the LOG_CHECKPOINT_INTERVAL initialization parameter will be override the value for FAST_START_MTTR_TARGET D. The time taken to recover the instance after the crash is always exactly the same as the value given for the FAST_START_MTTR_TARGET initialization parameter 42: 哪两句是正确的关于设置 FAST_START_MTTR_TARGET 初始参数为非零值?( 选择两个 ) A. MTTR advisor 会被禁用 B. 自动检查点调优被启用 C. 初始参数 LOG_CHECKPOINT_INTERVAL 会被 FAST_START_MTTR_TARGET 重写 D. 实例崩溃后恢复实例花费的时间总是恰好同 FAST_START_MTTR_TARGET 初始参数给的值 答案 :BC 启用 MTTR Advisor 需要设置 STATISTICS_LEVEL 和 FAST_START_MTTR_TARGET, 故 A 错快速启动检查点功能是通过指定所需的非零恢复平均时间 (MTTR) 值来启用的, 该值将用于设置 FAST_START_MTTR_TARGET 初始化参数 此参数控制数据库对单个实例执行崩溃恢复所花费的时间量 启用快速启动检查点功能时,Oracle 将自动保持检查点的速度, 已便达到请求的 MTTR. 如果将该值设置为 0, 将禁用此功能, 故 B 正确 FAST_START_MTTR_TARGET 会被 LOG_CHECKPOINT_INTERVAL 所覆盖, 故 C 正确 D 错误, 是在所需时间内或在尽量接近此事件的范围内, 并不是指定的时间点 参考官方文档 : 50

51 43: You want to create a role to meet these requirements: 1. The role is to be protected from unauthorized usage. 2. The password of the role is not to be embedded in the application source code or stored in a table. Which method would you use to restrict enabling of such roles? A. Create the role with external authentication. B. Create the role as a secure application role. C. Create the role as a password-protected role. D. Create a role and use Fine-Grained Access Control (FGAC) to secure the role. 43: 你想创建一个角色有下面这些需求 : 1. 创建一个角色防止未授权使用 2. 角色的密码没有嵌入到应用的源码或存储在表里 哪些方法你可以用来限制使用这样的角色? A. 创建角色使用外部认证 B. 创建角色作为安全应用程序角色 C. 创建角色作为密码保护角色 D. 创建角色并使用 FGAC 去保护角色 答案 :C secure application role, 是授予给应用程序用户的数据库角色, 通过调用者权限存储过程从数据库表获取角色的口令 secure application role 的口令不是嵌在应用程序中的 参考官方文档 : 51

52 44: View the Exhibit and identify the component marked with a question mark. A. Checkpoint (CKPT) B. Process Monitor (PMON) C. Archiver Processes (ARcn) D. Recoverer Process (RECO) E. Memory Manager Process (MMAN) 44: 查看下图并鉴别问号标志的组件 A. Checkpoint (CKPT) B. Process Monitor (PMON) C. Archiver Processes (ARcn) D. Recoverer Process (RECO) E. Memory Manager Process (MMAN) 52

53 答案 :A 检查点被记录在控制文件和每个数据文件的文件头 出现检查点的时候,DBWr 会将所有修改的缓冲区内容写到数据文件中当 DBWr 需要写入的数据的 SCN 号大于 LGWR 记录的 SCN 号, 会触发 LGWR 写入故可以知道问好处应为 CKPT 参考文档 : 45: Note the following points describing various utilities in Oracle Database 11g: 1. It enables the transfer of data from one database to another 2. It provides a complete solution for the backup, restoration and recovery needs of the entire database 3. It enables the loading of data from an external file into tables of an Oracle Database 4. It provides a tape backup management for the Oracle ecosystem Which point describes the Oracle Data Pump utility? A. 1 B. 2 C. 3 D. 4 E. 1 and 3 F. 1, 2, 3 and 4 45: 注意以下几点描述 Oracle Database 11g 各种功能 : 1. 它使数据从一个数据库转移到另一个地方 2. 它提供了一个备份, 恢复和恢复整个数据库的完整解决方案 3. 它使数据从外部文件加载到数据库的表 4. 提供了一个 Oracle 磁带备份管理生态系统 53

54 哪一个描述了 Oracle Data Pump 功能? A.1 B.2 C.3 D. 4 E. 1 and 3 F. 1, 2, 3 and 4 答案 :A 1 描述的是数据泵的功能 2 是 RMAN 3 是 SQL*Load 4 是 Oracle Secure Backup 46: Your database is configured in shared server mode. However, your senior DBA asks you to modify the value of the PRIVATE_SGA limit in the profile of the users. What could be the reason for this? A. To limit the User Global Area (UGA) memory allocated to a session from the SGA B. To limit the amount of memory to be used for the dispatcher queue of a session in SGA C. To limit the amount of memory to be used for the request pool in System Global Area (SGA) D. To control the amount of memory allocated in SGA for the local variables for each shared server process 46: 你的数据库配置为共享服务模式 然而, 你的高级 dba 要求你修改 PRIVATE_SGA 的值限制用户资源 原因可能是什么? A. 限制从 SGA 分配给会话的 UGA B. 限制 SGA 中一个会话中用于调度队列的内存数量 C. 限制 SGA 中用于 request pool 的内存数量 D. 控制 SGA 中分配给每个共享服务进程的本地变量的内存数量 答案 :A 在专用服务器模式下, 进程和会话是一对一的关系,UGA 被包含在 PGA 中, 在共享服务器模式下, 进程和会话是一对多的关系,UGA 在大池 (Large Pool) 中分配 54

55 如果分配失败, 如大型池太小, 或是根本没有设置大型池, 则从共享池 (Shared Pool) 中分配 参考官方文档 : 47: You used the IMMEDIATE option to shutdown your database instance. Consider the steps that will be performed later when you open the database: 1. SGA is allocated. 2. Control file is read. 3. Redo log files are read. 4. Instance recovery is started. 5. Background processes are started. 6. Data files are checked for consistency. 7. Server parameter file or the initialization parameter file is read. Which option has the correct order in which these steps occur? A. 7, 1, 5, 2, 3, 6, 4 B. 1, 5, 7, 2, 3, 6; step 4 is not required C. 7, 1, 5, 2, 3, 6 step 4 is not required D. 1, 2, 3, 5, 6, 4; step 7 is not required 47: 你使用 IMMEDIATE 选项关闭数据库实例 考虑打开数据库需要执行的步骤 : 1. 分配 SGA 2. 读取控制文件 3. 读取日志文件 4. 开始实例恢复 5. 启动后台进程 6. 检查数据文件一致性 7. 读取 spfile 或者 pfile 哪个选项是正确的关于这些步骤? A. 7, 1, 5, 2, 3, 6, 4 B. 1, 5, 7, 2, 3, 6; step 4 is not required C. 7, 1, 5, 2, 3, 6 step 4 is not required 55

56 D. 1, 2, 3, 5, 6, 4; step 7 is not required 答案 :C shutdown abort 后, 再 startup, 需要用到 smon 进行实例恢复, 而 shutdown immediate 则不需要进行实例恢复 参考第 40 题 48: Automatic Shared Memory Management (ASMM) has been enabled for your database instance. The initialization parameters for the components that are managed by ASMM are not set. After observing the effects of ASMM, you executed the following command: SQL> ALTER SYSTEM SET DB_CACHE_SIZE = 100M; Which statement is true in this scenario? A. The minimum memory size for the database buffer cache is set to 100 MB. B. The maximum memory size that can be obtained by the database buffer cache during ASMM is set to 100 MB. C. The minimum memory size allocated for a server process in the database buffer cache in dedicated mode is set to 100 MB. D. The maximum memory size from the database buffer cache that can be released for dynamic distribution during ASMM is set to 100 MB. 48: 你的数据库启用了自动共享内存管理 (ASMM) ASMM 管理的组件的初始化参数没有设置 为了观察 ASMM 的影 响, 你执行下面命令 : SQL> ALTER SYSTEM SET DB_CACHE_SIZE = 100M; 哪些语句是正确的在这个场景? A. 数据库 buffer cache 的最小设置为 100MB B. 在 ASMM 中数据库 buffer cache 最大可以获得的内存是 100MB C. 数据库 buffer cache 在专用模式下分配给一个服务进程最小为 100MB 56

57 D. 数据库 buffer cache 动态管理被释放的最大值设置为 100MB 答案 :A 启用 ASMM 之前, 应该从 SPFILE 中删除单个内存区参数, 因为设置这些参数会使 ASMM 受到限制 看到 ASMM 分配的效果之后, 如果决定要调整特定组件的分配值, 可以为这些组件指定值 如果指定的值比目前的值小, 这些值将被视为各个组件的最小内存大小 如果指定的值比目前的值大, 那么只要有空闲内存, 就可以将内存组件的大小重新上调至您提供的值 执行此操作会限制可用于自动调整的内存量, 但在环境需要对大小进行特殊调整 而 ASMM 又无法满足此需要时, 可使用此功能 参考官方文档 : 49: Examine the values for the following initialization parameters: FAST_START_MTTR_TARGET=0 LOG_CHECKPOINT_INTERVAL=0 Which two will be the implications of these values in your database? (Choose two.) A. The SGA advisor will be disabled B. The MTTR advisor will be disabled C. Automatic checkpoint tuning will be disabled D. Checkpoint information will not be written to the alert log file 49: 检查下面初始化参数的值 : FAST_START_MTTR_TARGET=0 LOG_CHECKPOINT_INTERVAL=0 哪两个将被影响在你的数据库中?( 选择两个 ) A. SGA advisor 将被禁用 B. MTTR advisor 将被禁用 C. Automatic checkpoint tuning 将被禁用 D. 检查点信息将被写入 alert 日志中 答案 :BC 参考 42 题 57

58 50: View the Exhibit to examine the output for the CROSSCHECK BACKUP command. Which statement is true about the output of the command? A. The backup piece is expired as the new backup is available B. The backup piece is expired because the operating-system file was not found C. The backup piece is expired because the retention period for the backup has expired D. The backup piece is expired because the backup set to which it belongs is not complete 50: 查看下表并检查 CROSSCHECK BACKUP 命令的输出结果 哪些语句是正确的关于命令的输出 A. 备份片失效因为新的备份是可用的 B. 备份片失效因为操作系统上文件找不到 C. 备份片失效因为备份保留时间失效 D. 备份片失效因为它所属的备份集不完整 答案 :B CROSSCHECK BACKUP 的作用是检查备份的可用性 ( 物理上是否存在 ), 并对失效的备份集打上 expired 标记 ACD 都属于违背备份策略的备份集, 需要使用 obsolete 操作 参考官方文档 : 58

59 51: Your database instance is configured with automatic undo management and the UNDO_RETENTION parameter is set to 900 seconds. You executed the following command to enable retention guarantee: SQL> ALTER TABLESPACE undotbs1 RETENTION GUARANTEE; What affect would this command have on the database? A. The extents in the undo tablespace retain data until the next full database backup B. The extents containing committed undo in the undo tablespace are not overwritten for at least 15 minutes C. The extents containing committed data in the undo tablespace are not overwritten until the instance is shut down D. The extents containing committed undo in the undo tablepace are transferred to Flash Recovery Area before being overwritten 51: 你的数据库实例配置 UNDO 自动管理并且 UNDO_RETENTION 参数设置为 900 秒 执行下面的命令启用 retention guarantee: SQL> ALTER TABLESPACE undotbs1 RETENTION GUARANTEE; 这个命令在数据库中会有什么影响? A. undo 表空间中的 extent 会保留数据直到下次数据库完整备份 B. undo 表空间中的包含已提交的 undo 的 extent 不会被覆盖在 15 分钟内 C. undo 表空间中的包含已提交的 data 的 extent 不会被覆盖直到数据库实例关闭 D. undo 表空间中包含已提交的 undo 的 extent 会被传输到 Flash Recovery Area 在被覆盖前 答案 :B 因为 undo 表空间是自动管理的, 所以执行上面的命令后,UNDO_RETENTION 变成强依赖参数, 即使拒绝执行 SQL DML 操作, 也不会发生 undo 数据覆盖的情况 参考官方文档 : 59

60 52: You configured the Flash Recovery Area for your database. The database instance has been started in ARCHIVELOG mode and the LOG_ARCHIVE_DEST_1 parameter is not set. What will be the implications on the archiving and the location of archive redo log files? A. Archiving will be disabled because the destination for the redo log files is missing B. The database instance will shut down and the error details will be logged in the alert log file C. Archiving will be enabled and the destination for the archived redo log file will be set to the Flash Recovery Area implicitly D. Archiving will be enabled and the location for the archive redo log file will be created in the default location $ORACLE_HOME/log 52: 为数据库配置 Flash Recovery Area 数据库实例启动于 ARCHIVELOG 模式并且 LOG_ARCHIVE_DEST_1 参数没有设置 归档和归档日志的位置会受到什么影响? A. 归档会被禁用因为归档目的地丢失 B. 数据库实例会关闭并将错误详细记录在 alert 之日中 C. 归档会启用且归档日志将会设置为 Flash Recovery Area D. 归档会启用且归档日志会默认创建在 $ORACLE_HOME/log 答案 :C 如果打开归档, 并且没有指定归档路径的话, 那么默认就是在闪回恢复区 53: Which is the correct description of a pinned buffer in the database buffer cache? A. The buffer is currently being accessed B. The buffer is empty and has not been used C. The contents of the buffer have changed and must be flushed to the disk by the DBWn process D. The buffer is a candidate for immediate aging out and its contents are synchronized with the block contents on the disk 53: 哪些描述是正确的关于数据库 buffer cache 中的 pinned buffer? A. buffe 目前正在被访问 60

61 B. buffer 是空的, 没有被使用 C. buffer 的内容被修改且必须通过 DBWn 进程刷新到磁盘 D. buffer 作为即将老化的候选并且内容和磁盘上的内容相同 答案 :A 每个 buffer 都有一个访问方式 :pinned 或者 free(unpinned) Buffer 固定在 cache 中以至于内存不会老化当一 个用户会话访问的时候 多个会话不能同时修改 pinned buffer 参考官方文档 : 54: In which situation would you use static database registration for a listener? A. When multiple databases are to be registered with the listener B. When DBAs need to connect remotely to start up the database instance C. When users need to connect the database instance using the host naming method D. When the database instance that is to be registered with the listener is configured in shared server mode 54: 在什么情况下你使用数据库静态注册监听? A. 当多个数据库被注册使用监听 B. 当 DBA 需要远程启动数据库实例 C. 当用户需要连接数据库实例使用主机名方法 D. 当数据库实例被使用监听注册配置为共享服务模式 答案 :B 静态注册可以远程管理数据库, 比如数据库的起停, 而动态注册必须数据库启动才可以 动态注册为 ready 从字面的意思理解为准备好, 而静态注册为 unknow 也就是不知道数据库状态 参考官方文档 : 61

62 55: While observing the index statistics, you find that an index is highly fragmented, thereby resulting in poor database performance. Which option would you use to reduce fragmentation without affecting the users who are currently using the index? A. Validate the index structure using the ANALYZE... INDEX command B. Rebuild the index using the ALTER INDEX... REBUILD ONLINE command C. Change the block space utilization parameters using the ALTER INDEX command D. Deallocate the unused space in the index using the ALTER INDEX... DEALLOCATE UNUSED command 55: 观察索引统计信息, 你发现一个索引高度分裂, 从而导致数据库性能下降 哪种方法你可以用来减少分裂不影响正在使用索引的用户? A. 分析索引结构使用 ANALYZE INDEX 命令 B. 重建索引使用 ALTER INDEX..REBUILD ONLINE 命令 C. 改变块空间利用率使用 ALTER INDEX 命令 D. 释放未使用的空间索引使用 ALTER INDEX DEALLOCATE UNUSED 命令 答案 :B 由于频繁的 dml, 索引就会产生碎片, 它的效率会越来越慢, 因此就需要重建, 可以使用 online 关键字在线重建索引, 因为重建索引的时候会加锁, 假如该关键字后, 可以使加锁时间变的很短, 从而减少对使用索引用户的影响 参考官方文档 : 56: See the Exhibit to observe the roles assigned to the SL_REP user. Which statement is true about the assignment of the SELECT_CATALOG_ROLE role to the SL_REP user? 62

63 A. The user must enable the role explicitly B. The user can grant the role to other users C. The user cannot user the role until the DBA enables it explicitly D. The user can start using the role immediately without any changes 56: 观察下图 SL_REP 用户分配的角色 哪些语句是正确的关于分给 SL_REP 用户的 SELECT_CATALOG_ROLE 角色? A. 用户必须显式的启用角色 B. 用户可以授予角色给其他的用户 C. 用户不能使用角色直到 DBA 显式的启用它 D. 用户可以立即使用角色不做任何改变 答案 :A select_catalog_role 是一种角色, 题中默认为 N, 需要重新登录或者显式的 set role 来生效, 所以选 A 57: To make audit information more productive, the DBA executes the following command before starting an audit operations: SQL>ALTER SYSTEM SET AUDIT_TRAIL=DB,EXTENDED SCOPE=SPFILE; Which statement is true regarding the audit record generated when auditing starts after restarting the 63

64 database? A. It contains only the plan for the SQL statement executed by the user B. It contains the SQL text executed by the user and the bind variables used with it C. It contains the plan and statistics associated with the SQL statement executed by the user D. It contains the plan for the SQL statement executed by the user and the bind variables used with it 57: 为了使审计更生产化,DBA 执行下面命令在开始审计操作之前 : SQL>ALTER SYSTEM SET AUDIT_TRAIL=DB,EXTENDED SCOPE=SPFILE; 哪些语句是正确的关于审计记录产生当启动审计在重启数据库后? A. 只包含用户执行的 SQL 语句执行计划 B. 包含用户执行的 SQL 文本和它使用的绑定变量 C. 包含用户执行的执行计划和统计信息相关的 SQL 语句 D. 包含用户执行的 SQL 语句执行计划和使用的绑定变量 答案 :B AUDIT_TRAIL 值含义如下 : DB: 启用审计, 信息记录在 SYS.AUD$ 中 OS: 启用审计, 审计信息保存在操作系统,Oralce 建议使用该配置 Db,extended: 启用审计, 并且记录对应的执行语句 Xml: 启用审计, 审计信息以 xml 形式保存在操作系统上 Xml,extended: 启用审计, 并且包括所有的执行语句 参考官方文档 : 58: You want to import schema objects of the HR user using Oracle Data Pump from the development database, DEVDB, to the production database, PRODDB. A database link devdb.us.oracle.com is created between PRODDB and DEVDB. You execute the following command on the PRODDB database server: $ impdp system/manager directory = DB_DATA 64

65 dumpfile = schemas.dat schemas = hr flashback_time = "TO_TIMESTAMP(' :35:00', 'DD-MM-YYYY HH24:MI:SS')" The command fails displaying the following error: ORA-39001: invalid argument value ORA-39000: bad dump file specification ORA-31640: unable to open dump file "/home/oracle/schema/schemas.dat" for read ORA-27037: unable to obtain file status What would you do to overcome the error? A. Add the user, SYSTEM, to the schemas option. B. Add the network_link = devdb.us.oracle.com option. C. Change the dumpfile option to D. Replace the schemas option with the network_link = devdb.us.oracle.com E. Replace the dumpfile option with the network_link = devdb.us.oracle.com 58: 你想导入 HR 用户使用数据泵从开发数据库 DEVDB 到生产数据库 PRODDB 一个数据库连接 devdb.us.oracle.com 被创建在 PRODDB 和 DEVDB 之间 你执行下面命令在 PRODDB 数据库服务端 : $ impdp system/manager directory = DB_DATA dumpfile = schemas.dat schemas = hr flashback_time = "TO_TIMESTAMP(' :35:00', 'DD-MM-YYYY HH24:MI:SS')" 命令报错如下 : ORA-39001: invalid argument value ORA-39000: bad dump file specification ORA-31640: unable to open dump file "/home/oracle/schema/schemas.dat" for read ORA-27037: unable to obtain file status 你做什么来解决这个错误? 65

66 A. 增加用户 SYSTEM 在 schema 选项 B. 增加 network_link=devdb.us.oracle.com 选项 C. 改变 dumpfile 选项为 D. 代替 schema 选项为 network_link = devdb.us.oracle.com E. 代替 dumpfile 选项为 network_link = devdb.us.oracle.com 答案 :E 通过 database link 导数据需要提供参数 network_link, 这时不会生成 dump file, 所以不需要 dumpfile 参数 参考官方文档 : 59: Which two statements are true about the Automatic Database Diagnostic Monitor (ADDM)? (Choose two.) A. The ADDM requires at least four AWR snapshots for analysis B. The ADDM runs after each AWR snapshot is collected automatically by MMON C. The results of the ADDM analysis are stored in the Automatic Workload Repository (AWR) D. The ADDM analysis provides only diagnostics information but does not provide recommendations E. The ADDM calls other advisors if required, but does not provide recommendations about the advisors 59: 哪两句是正确的关于自动数据库诊断监视器 (ADDM)?( 选择两个 ) A. ADDM 需要至少四个 AWR 快照用于分析 B. ADDM 运行在 MMON 自动收集每个 AWR 快照之后 C. ADDM 分析的结果存储在 AWR D. ADDM 分析提供诊断信息不提供建议 E. ADDM 调用其它 advisors 如果需要, 但是不提供建议 答案 :BC ADDM 每个 awr 快照被记录后,addm 就会自动运行, 分析与最后两个快照对应的时段中的数据,addm 会主动监视实例多数情况下,addm 会为检测到的问题提供解决方案,addm 可以检测到一些常见问题如下 1.cpu 瓶颈 2.oracle net 连接管理问题 3. 锁的竞争 4.IO 问题 66

67 5. 一些数据库实例内存结构的大小不足 6. 过载的 sql 语句 7.plsql 和 java 运行时间过长 8. 检查点负载过高及原因 ( 如日志文件过小 ) 因此 :BC 正确 参考官方文档 : 60: Which task would you perform before you run Oracle Universal Installer (OUI) in silent or suppressed mode for an installation? A. Run the root.sh script. B. Create the orainst.loc file. C. Create the tnsnames.ora file. D. Run the orainstroot.sh script. 60: 哪些任务需要执行在你运行 Oracle Universal Installer(OUI) 在静默模式或 suppressed 模式安装之前? A. 运行 root.sh 脚本 B. 创建 orainst.loc 文件 C. 创建 tnsname.ora 文件 D. 运行 orainstroot.sh 脚本 答案 :B orainst.loc 是定义 inventory 路径的, 必须咋运行 OUI 之前创建 root.sh 和 oraintroot.sh 都是安装的时候执行的 tnsnames.ora 是配置网络连接远程的 参考官方文档 : 67

68 61: You are working on an instance started using the SPFILE. You want to move the Flash Recovery Area of your database to a new location. You want the Flashback log files to be stored in the new location. Given below are the steps to accomplish the task in random order: 1) Shut down the instance. 2) Change the value of the DB_RECOVERY_FILE_DEST initialization parameter to a new value. 3) Execute the ALTER DATABASE FLASHBACK OFF command. 4) Start up the instance and mount the database. 5) Execute the ALTER DATABASE FLASHBACK ON command. 6) Open the database. Select the correct order in which these tasks need to be performed. A. 2, 1, 4, 3, 5, 6 B. 1, 4, 3, 2, 6, 5 C. 1, 4, 2, 6, 3, 5 D. 3, 2, 1, 4, 5, 6 61: 你正在一个使用 spfile 启动的数据库实例工作 你想移动 Flash Recovery Area 到一个新的位置 你想 Flashback 日 志存储在新的位置 下面是完成这项任务的随机排序步骤 : 1) 关闭实例 2) 改变参数 DB_RECOVERY_FILE_DEST 的值为新的值 3) 执行 ALTER DATABASE FLASHBACK OFF 命令 4) 启动数据库实例并 mount 数据库 5) 执行 ALTER DATABASE FLASHBACK ON 命令 6) 打开数据库 选择正确的执行顺序 A. 2, 1, 4, 3, 5, 6 B. 1, 4, 3, 2, 6, 5 C. 1, 4, 2, 6, 3, 5 D. 3, 2, 1, 4, 5, 6 答案 :A 本题是想考查更换 Flash Recovery Area 的位置 68

69 参考官方文档 : 62: You are in the middle of a transaction updating a very important table. The machine on which a database was running reboots because of power outage. This caused a database instance failure. Which statement is true in this situation? A. The online redo log files and archived redo log files are required to accomplish the recovery B. The uncommitted transaction will be committed at the next startup of the database instance C. The uncommitted transaction is rolled back automatically at the next opening of the database D. The DBA has to perform the recovery on the database to recover the uncommitted transaction 62: 你处于一个正在更新一个非常重要的表的事务中 数据库正在运行的机器因为断电重启 这导致数据库实例故障 哪些 语句是正确的在这种情况? A. 完成恢复需要联机重做日志和归档日志 B. 下一次数据库实例启动的时候会提交未提交的事务 C. 下一次数据库打开会自动回滚未提交的事务 D. DBA 执行数据库恢复去恢复未提交的事务 答案 :C 完成恢复只需要联机重做日志, 不需要归档日志, 所以 A 错 下一次启动实例的时候会将位提交的事务回滚而不是提交,B 错,C 对 实例恢复由 SMON 自动执行, 而不是 DBA 控制,D 错 69

70 63: View the Exhibit to examine the output produced by the following query at three different times since the database instance started and has experienced workloads of different capacities: SQL> SELECT substr(component, 0, 10) COMP, current_size CS, user_specified_size US FROM v$memory_dynamic_components WHERE current_size!=0; What do you infer from this? 70

71 A. The database instance is running with manual PGA management. B. The database instance is running with manual shared memory management. C. The database instance has the MEMORY_TARGET value set to a nonzero value. D. All sessions are connected to the database instance in dedicated mode, and no RMAN or parallel query operations have been performed. 63: 查看下图检查存储过程输出结果, 自从数据库实例启动并经历不同的工作负载在三个不同的时间 : SQL> SELECT substr(component, 0, 10) COMP, current_size CS, user_specified_size US FROM v$memory_dynamic_components WHERE current_size!=0; 你能推断出什么? A. 数据库实例正在运行, 使用手动管理 PGA B. 数据库实例正在运行, 使用手动管理共享内存 C. 数据库实例设置 MEMORY_TARGET 为非 0 值 D. 所有的会话连接数据库实例为专用模式, 没有 RMAN 或者并行查询操作执行 答案 :C 动态性能视图 V$MEMORY_DYNAMIC_COMPONENTS 显示所有动态优化的内存组件的当前大小, 其中包括 SGA 和实例 PGA 的总大小 三次启动的 SGA 的各个组件大小都一样, 是动态变化的,PGA 也是动态变化的, 所以此数据库是处于自动内存管理即 AMM, 也即是说 MEMORY_TARGET 设定为非零值 64: Your database instance is started using the server parameter file (SPFILE). You executed a command to change the value of the LOG_BUFFER initialization parameter: ALTER SYSTEM SET LOG_BUFFER=32M SCOPE=BOTH; What would be the outcome of this command? A. The command succeeds only if Automatic Memory Management is not enabled. B. The command succeeds, but you need to restart the database for changes to take effect. C. The command returns an error because the size of the redo log buffer cannot be changed dynamically. D. The parameter value is changed and it comes into effect as soon as space becomes available in the System Global Area (SGA). 64: 你的数据库实例启动使用 SPFILE 你执行一个命令改变 LOG_BUFFER 的值 : 71

72 ALTER SYSTEM SET LOG_BUFFER=32M SCOPE=BOTH; 这个命令的输出结果是什么? A. 命令执行成功只有自动内存管理没有启用的时候 B. 命令执行成功, 但是你需要重启数据库来生效 C. 命令返回一个错误因为 redo log buffer 不能动态修改 D. 参数值被修改并且会立即生效只要 SGA 中有可用的空间 答案 :C LOG_BUFFER 为静态参数, 故只能使用 SCOPE=spfile, 重启后生效 参考官方文档 : 65: The database instance is currently using SPFILE. View the Exhibit and examine the error that you received while running the DB Structure Integrity check. Given below are the steps to recover from the error in random order: 1. Shut down the instance, if not already done. 2. Copy one of the remaining control files to a new location. 3. Change the value of the CONTROL_FILES initialization parameter to correspond to the new location of the control files. 4. Start up the database instance to the NOMOUNT stage. 5. Recover the database to the point of failure of the control file. 6. Open the database. Identify the correct sequence of steps? A. 1, 2, 4, 3, 5, 6 B. 2, 4, 3, 5, 6; 1 not required C. 4, 5, 6, 2, 3; 1 not required D. 5, 2, 3, 4; 1 and 6 not required 72

73 65: 数据库实例正在使用 SPFILE 查看下表并检查运行 DB 结构完整性检查时发生的错误 下面给出随机步骤恢复错误 : 1. 关闭实例, 如果尚未完成 2. 拷贝一个冗余控制文件到新的位置 3. 改变 CONTROL_FILES 初始参数的值和新位置一致 4. 启动数据库实例到 NOMOUNT 阶段 5. 恢复数据库到控制文件的故障点 6. 打开数据库 鉴别正确的步骤顺序? A. 1, 2, 4, 3, 5, 6 B. 2, 4, 3, 5, 6; 1 不需要 C. 4, 5, 6, 2, 3; 1 不需要 D. 5, 2, 3, 4; 1 和 6 不需要 答案 :A 本题考查的是使用 RMAN 恢复控制文件 参考官方文档 : 66: You are working on a new Oracle Database 11g server, where only the software is installed and no database is created. You plan to create a database on this server using the Database Configuration Assistant (DBCA). Some of the requirements set for your database creation task are: 1. Configure the database to operate in shared server mode. 2. Disable automatic maintenance tasks such as optimizer statistics collection. 3. Configure a naming method to help the remote user connect to the database instance. 4. Use Automatic Storage Management (ASM) for storing the database files. 5. Configure daily database backup to flash recovery area. 6. Configure Enterprise Manager Database Control to manage the database. Which of these requirements can be met while creating the database? A. 4 and 6 73

74 B. 2, 3, 4, and 6 C. 1, 2, 4, 5, and 6 D. 1, 2, 3, 4, 5, and 6 66: 你正在一个新的 Oracle 11g 数据库工作, 只安装了软件没有创建数据库 你计划使用 DBCA 创建一个数据库在这个服务器上 一些数据库创建需要的设置任务是 : 1. 配置数据库为共享服务器模式 2. 禁用自动维护任务例如优化器统计信息收集 3. 配置一个命名方法帮助远程用户连接数据库实例 4. 使用自动储存管理 (ASM) 存储数据文件 5. 配置日常数据库备份到 FRA 6. 配置企业管理控制台管理数据库 哪些要求可以被满足当创建数据库的时候? A. 4 和 6 B. 2, 3, 4, 和 6 C. 1, 2, 4, 5, 和 6 D. 1, 2, 3, 4, 5, 和 6 答案 :C DBCA 创建数据库如下 : 1.Database Configuration Assistant:Welcome 2.Database Configuration Assistant,Step 1 of 13:Operations 选择 Create a Database 3.Database Configuration Assistant,Step 2 of 13:Database Templates 选择 General Purpose or Transaction Processing 4.Database Configuration Assistant,Step 3 of 13:Database Identification 填写 Global Database Name 和 SID 5.Database Configuration Assistant,Step 4 of 13:Management Options 选择 Enterprise Manager 和 Automatic Maintenance Tasks 6.Database Configuration Assistant,Step 5 of 13:Database Credentials 填写密码 7.Database Configuration Assistant,Step 6 of 13:Network Configuration 选择监听器 8.Database Configuration Assistant,Step 7 of 13:Database File Locations 选择 ASM 9.Database Configuration Assistant,Step 8 of 13:Recovery Configuration 快速恢复区指定 10.Database Configuration Assistant,Step 9 of 13:Database Content 勾选 Sample Schemas 11.Database Configuration Assistant,Step 10 of 13:Initialization Parameters 包括 Memory,Sizing,Character Sets,Connection 74

75 67: Examine the following output: SQL> SELECT index_name,status FROM dba_indexes WHERE status='unusable'; INDEX_NAME STATUS EIND UNUSABLE Which two statements about the above index are true? (Choose two.) A. It is ignored by the query optimizer. B. It is not used while the index is being rebuilt. C. The index cannot be rebuilt, and has to be re-created. D. The index is automatically rebuilt when used the next time. 67: 检查下面的输出 : SQL> SELECT index_name,status FROM dba_indexes WHERE status='unusable'; INDEX_NAME STATUS EIND UNUSABLE 哪两句关于索引的描述是正确的?( 选择两个 ) A. 它被查询优化器忽略 B. 它不用被使用当重建的时候 C. 索引不能被 rebuilt 必须重新 create D. 索引会自动 rebuilt 当下次使用的时候 答案 :AB 当你创建一个索引为 UNUSABLE 状态, 它会被查询优化器忽略并且不会被 DML 维护 一个 UNUSABLE 索引必须被 rebuilt 或删除后 create, 在它被使用之前 如果索引被分区, 所有的分区索引会被标记为 UNUSABLE 在 Oracle 数据库 11g Release 2, 当数据库创建一个 unusable 索引的时候, 不会创建索引段 参考官方文档 : 75

76 68: In a system, large online transaction processing (OLTP) jobs run during the daytime that require a large database buffer cache. In the night, the system supports batch jobs that require a higher value to be set for the large pool. You must simultaneously configure the memory components to accommodate the peak requirement. What would you do to automate this configuration for the memory components with change in mode of working? A. Set the SGA_TARGET initialization parameter to zero. B. Set the PRE_PAGE_SGA initialization parameter to TRUE. C. Set the MEMORY_MAX_TARGET initialization parameter to zero. D. Set the SGA_TARGET initialization parameter to a nonzero value. 68: 在一个大型联机事务处理 (OLTP) 系统在白天需要巨大的数据库 buffer cache 在晚上, 系统支持批量任务需要设置 large pool 为很大的值 你必须配置内存组件同时适应峰值要求 你会怎么做来自动化配置内存组件适用模式变化的工作? A. 设置 SGA_TARGET 初始值为 0 B. 设置 PRE_PAGE_SGA 初始值为 TRUE C. 设置 MEMORY_MAX_TARGET 初始值为 0 D. 设置 SGA_TARGET 初始值为非 0 值 答案 :D 因为白天需要大的 BUFFER CACHE, 晚上需要大的 LARGE POOL, 所以可以启动 ASMM 管理 启动 ASMM, 需要 : 1. 除了 sga_target,sga_max_size,lock_sga,pre_page_sga 需要静态调整外, 其他都可以动态调整 2. 启用方法是需要将 sga_target 设置为非 0, 同时将 statistics_level 设置为 typical 或者 all 3. 如果使用了自动共享内存管理, 下面这些缓存区就不需要在进行设置了, 他们会自动设置为 0 i.db_cache_size ii.shared_pool_size iii.large_pool_size iv.java_pool_size v.streams_pool 4. 尽管使用了 assm, 还是可以设置缓存区大小的, 设置后表示的是该缓存区的下限值, 即 orale 任何时候 76

77 该缓存区都应该不小于这个值, 至少预留这么大的空间 69: You have executed this command to change the size of the database buffer cache: SQL> ALTER SYSTEM SET DB_CACHE_SIZE= ; System altered. To verify the change in size, you executed this command: SQL> SHOW PARAMETER DB_CACHE_SIZE NAME TYPE VALUE db_cache_size big integer Why is the value set to and not to ? A. Because is the granule size B. Because is the standard block size C. Because is the largest nonstandard block size defined in the database D. Because is the total size of data already available in the database buffer cache 69: 你执行下面命令去改变数据库 buffer cache 的值 : SQL> ALTER SYSTEM SET DB_CACHE_SIZE= ; System altered. 为了验证大小的修改, 执行下面命令 : SQL> SHOW PARAMETER DB_CACHE_SIZE NAME TYPE VALUE db_cache_size big integer

78 为什么值设置为 , 而不是 ? A. 因为 是粒度大小 B. 因为 是标准块大小 C. 因为 是数据库定义中最大的非标准块大小 D. 因为 是数据库 buffer cache 已使用的数据总大小 答案 :A 如果指定的大小不是粒度的整倍数, 则约等于到整倍数, 例如粒度为 4M, 指定 DB_CACHE 为 10M, 则实际上为 12M 参考官方文档 : 70: Identify two situations in which the block header grows in a data block. (Choose two.) A. When row directories need more row entries B. When there is row migration in the data block C. When there is an increase in the PCTFREE value for the data block D. When more transaction slots are required than are initially configured 70: 确定数据块块头增长的两种情况 ( 选择两个 ) A. 当行目录需要更多的行信息 B. 当数据块中发生行迁移 C. 当数据块中的 PCTFREE 的值增加 D. 当更多的事务槽需要比最初设置 答案 :AD 块头 : 块头包含段类型 ( 如表或索引 ) 数据块地址 表目录 行目录和事务处理插槽 每个插槽的大小约为 23 字节, 修改块中的行时会使用这些插槽 块头自上而下进行增长 行数据 : 这是块中行的实际数据 行数据空间自下而上进行增长 空闲空间 : 空闲空间位于块的中部, 允许头和行数据空间在必要时进行增长 当插入新行或用更大的值更新现有行的 78

79 列时, 行数据会占用空闲空间 参考官方文档 : 71: You are installing Oracle Database 11g on your server. During the installation Oracle Universal Installer (OUI) prompts you to enter the path of the inventory directory and also prompts you to specify an operating system group name. Which statement is true in this case? A. The ORACLE_BASE parameter is not set. B. The installation is being performed by the root user. C. The operating system group that will be specified should have root user as its member. D. The installation is being performed without the "Create Starter Database" option selected. E. The operating system group that will be specified must have permission to write to the inventory directory. 71: 你正在安装 Oracle 数据库 11g 在你的服务器上 在安装期间,Oracle Universal Installer(OUI) 提示你输入产品目 录路径并提示你指定一个操作系统组名 哪些语句是正确的在这种情况下? A. ORACLE_BASE 参数没设置 B. 使用 root 用户执行安装 C. 被指定的操作系统组应该有 root 用户作为成员 D. 没有使用选项 "Create Starter Database" 执行安装 E. 被指定的操作系统组必须有权限写产品目录 答案 :E 72: View the Exhibit. You want to create a tablespace to contain objects with block size 16 KB. But while configuring the storage you find that the block size that you can provide is only 8 KB. Which configuration could have enabled the block selection of 16 KB? 79

80 A. Choosing the extent allocation type to uniform B. Choosing the Segment Space Management option to manual C. Setting autoextension on for the data file mentioned for the tablespace D. Setting the DB_16K_CACHE_SIZE parameter for the database instance to a nonzero value 72: 查看下表 你想创建一个表空间包含 16KB 块大小的对象 但是当配置存储的时候你发现你只能提供 KB 块大小 哪些配置可以让你选择使用 16KB? A. 选择 extent 分配类型为 uniform B. 选择段空间管理方式为手动 C. 设置表空间涉及的数据文件为自动扩展 D. 设置数据库实例参数 DB_16K_CACHE_SIZE 为非零值 80

81 答案 :D 1.9i 之后可以使用多种块大小, 首先使用一个标准的数据块, 然后最多可以定义 4 种其他的数据块, 值为 2 的 n 次方, 范围是 2~32( 这里也就 5 种 ) 2. 使用其他块大小的时候, 必须首先设置 db_nk_cache_size 的大小 SQL> show parameter k_cache_size NAME TYPE VALUE db_16k_cache_size big integer 0 db_2k_cache_size big integer 0 db_32k_cache_size big integer 0 db_4k_cache_size big integer 0 db_8k_cache_size big integer 0 首先应该设置这里对应的值, 这里需要注意的是与数据库块大小相同的不能设置 create tablespace cache_size datafile'cache_size_001.dbf' size 16M BLOCKSIZE 16K; -- 这里的 16k 必须先设置 db_16k_cache_size 3. 标准数据库大小用于系统表空间和临时表空间 4. 数据块的内容和参数 i. 块头存储数据块的地址 表目录 行目录和事务槽, 头部从上往下增长 ii. 数据区位于数据块的底部, 当插入行的时候从下向上增长 iii. 空闲区位于中间, 最初始是连续的, 当删除和插入后导致碎片化,smon 会进行合并空闲区的操作 5. 手工数据块的管理 i. 插入操作的时候,oracle 将保留数据块 15% 的空闲空间, 为将来的更新做准备 ii. 当空闲区小于 15% 的时候,oracle 将该数据从空闲队列 (freelists) 中去掉 iii. 如果删除或修改造成了数据行的缩小, 虽然大于了 15%, 但是使用的空间大于 30, 因此还是不能插入 iv. 只有当小于 30(pctused), 该数据块才可以重新放入空闲队列中 参考官方文档 : 81

82 73: You are installing Oracle Database 11g on a machine. When you run the installer, the Universal Installer (OUI) shows the message that says one of the product-specific prerequisite checks has failed: Checking available swap space requirements... Expected result: 1512MB Actual Result: 1018MB Check complete. The overall result of this check is: Failed <<<< Problem: The system does not have the required swap space. What happens to the installation in this situation? A. It can be continued. B. It resizes the swap space automatically when you proceed further. C. It can be continued, but the instance cannot be started without increasing the swap space. D. It shows a message saying one or more prerequisite checks have failed and the installation cannot proceed. 73: 你正在机器上安装 Oracle Database 11g 当你运行安装,Universal Installer (OUI) 显示消息一项检查没有通过 : Checking available swap space requirements... Expected result: 1512MB Actual Result: 1018MB Check complete. The overall result of this check is: Failed <<<< Problem: The system does not have the required swap space. 这种情况下安装发生了什么问题? A. 可以继续安装 B. 进一步执行会自动调整 SWAP 空间大小 C. 可以继续, 但是实例不能启动, 如果不增加 swap 空间 D. 消息显示一个或多个先决条件检查失败, 安装无法继续进行 答案 :A 1512M 是期望值, 不是必须达到的值, 一般主要达到 150M, 就可以安装, 选择 A 82

83 74: Which two statements about the background process of the database writer are true? (Choose two.) A. It is possible to have multiple database writers in an Oracle instance. B. It writes dirty buffers, if any, to data files whenever a checkpoint occurs. C. It writes dirty buffers, if any, to data files whenever a transaction commits. D. It writes dirty buffers, if any, to data files before the log writer (LGWR) writes. 74: 哪两个语句是正确的关于数据库写的后台进程是正确的?( 选择两个 ) A. 可能有多个数据库写在一个数据库实例中 B. 如果发生检查点时, 它会写脏缓冲区到数据文件 C. 如果发生事务提交, 它会写脏缓冲区到数据文件 D. 在发生 LGWR 之前, 它会写脏缓冲区到数据文件 答案 :AB 虽然对于大多数系统来说, 一个数据库写进程 (DBW0) 已经足够, 但如果系统需要频繁修改数据, 则可以配置附加进程 (DBW1 到 DBW9 以及 DBWa 到 DBWj) 以改进写性能 (A 正确, 可以有很多个 dbwr 进程 ) DBWR 触发条件 1. 产生检查点 2. 脏数据缓冲区达到阀值默认 10% 3. 扫描整个 data buffer 没有空闲 data buffer 中包含脏的和未脏的优先写脏数据列表再写未脏块 4. timeout 超时, 如果 DBWR 没事做会被每三秒唤醒一次去巡检写不写不一定 5. 表级别的 truncate 或 drop 也会触发数据写 6. 修改表空间的 read only 7. 做表空间的 offline ( 离线 ) 8. 热备份 begin backup 命令 LGWR 触发条件 : 1. 用户进程提交事务处理时 2. 重做日志缓冲区的三分之一已满时 3. 重做日志缓冲区达到 1M 的 redo 条目 4. 在 DBWn 进程将经过修改的缓冲区写入磁盘 ( 如果需要 ) 之前 5. 每隔 3 秒 参考官方文档 : 83

84 75: The TRANS_SUMMARY table contains product-wise transaction details that get updated with every transaction in the system. Each row has cumulative transaction details of a single product and every product is identified by a product code, which is the primary key. As part of the archival process, the company wants to transfer the rows in the TRANS_SUMMARY table to the TRANS_SUMMARY_DUP table at the end of every quarter of the year. Along with existing products, the company deals with many new products during every quarter. Which method is best suited for this quarterly data transfer? A. Using the MERGE command B. Using the SQL*Loader utility C. Using the correlated UPDATE command D. Using the INSERT command to perform bulk operation 75: TRANS_SUMMARY 表包含生产方面的事务细节如系统中的每笔交易 每一行累积记录单个产品的交易细节并且每个产品使用产品码也就是主键来鉴别 作为归档的一部分过程, 公司想在每年的季度末转移 TRANS_SUMMARY 表的行到 TRANS_SUMMARY_DUP 表 随同现有的产品, 公司在每季度期间交易很多新产品 哪种方法是最适合这个季度数据传输的? A. 使用 MERGE 命令 B. 使用 SQL*Load 功能 C. 使用相关的 UPDATE 命令 D. 使用 INSERT 命令执行批量操作 答案 :A 使用 MERGE 命令可在一个命令中执行 UPDATE 和 INSERT 可将一个源中的数据合并到另一个源, 因而可选择插入新行和更新特定列 ( 如果行已经存在 ) 这道题的意思是将 TRANS_SUMMARY 里的数据合并到 TRANS_SUMMARY_DUP 表里, 如果 TRANS_SUMMARY_DUP 有存在的产品, 则保留, 如果是新产品, 则插入 76: Which two statements are true regarding a PL/SQL package body? (Choose two.) A. It cannot be created without a package specification. B. It cannot invoke subprograms defined in other packages. C. It can contain only the subprograms defined in the package specification. 84

85 D. It can be changed and recompiled without making the package specification invalid. 76: 哪两句关于 PL/SQL 包主体的描述是正确的? A. 可以被创建不指定包 B. 不能调用其他包的子程序 C. 只能包含指定的包中定于的子程序 D. 没有标记指定的包为无效的时候可以被修改和重新编译 答案 :AD 程序包体 : 与程序包说明是分开的 因此, 可以更改并重新编译程序包体代码, 此时不会将与程序包说明相关的其它对象标记为无效 包含程序包说明中定义的子程序的代码 这是负责完成工作的部分 程序包说明表明了如何调用程序包中的子程序 ; 程序包体是代码段 只有在编译了程序包说明之后才能编译程序包体 可以在没有程序包体的情况下创建程序包说明, 但不能在没有程序包说明的情况下创建程序包体 通过包装可隐藏代码明细 包装是一个可打乱 PL/SQL 源代码的独立程序, 所以可不暴露源代码的情况下传送 PL/SQL 应用程序 A, 没有包装说明它不能创建 正确 只有在编译了程序包说明之后才能编译程序包体 可以在没有程序包体的情况下创建程序包说明, 但不能在没有程序包说明的情况下创建程序包体 B, 它不能调用其他包中定义的子程序 错误, 可以调用 C, 它只能包含包说明中定义的子程序 错误, 可以调用不在包装包说明的子程序 D, 它可以改变和重新编译, 而不使包装规格无效 正确 与程序包说明是分开的 因此, 可以更改并重新编译程序包体代码, 此时不会将与程序包说明相关的其它对象标记为无效 77: In your database instance, the user sessions are connected to the database server from the remote machines. You want to achieve the following for these users: 1. The user account must be locked after four unsuccessful login attempts. 2. The user must be prompted to change the password at regular intervals. 3. The user may not have more than three simultaneous sessions. 85

86 4. The user session must automatically be logged off if more than 10 minutes elapsed time used. How would you accomplish the above? A. By assigning profiles for the users B. By implementing Fine-Grained Auditing (FGA) C. By granting a secure application role to the users D. By implementing the Database Resource Manager plan 77: 在你的数据库实例中, 用户会话从远程机器连接数据库服务器 你想这些用户达到下面 : 1. 用户帐户必须锁定在四次尝试登录失败之后 2. 用户必须被提示定期更改密码 3. 用户不能有超过三个并发会话 4. 用户必须自动注销如果超过 10 分钟运行时间 你将如何完成上述所示? A. 通过指定用户 profile B. 通过实行 Fine-Grained Auditing (FGA) C. 通过授予一个安全的应用角色给用户 D. 通过实行 Database Resource Manager plan 答案 :A 可以通过配置 profile 来达到限制上面的目标 SQL> select * from dba_profiles where profile='default'; PROFILE RESOURCE_NAME RESOURCE LIMIT DEFAULT COMPOSITE_LIMIT KERNEL UNLIMITED DEFAULT SESSIONS_PER_USER KERNEL UNLIMITED DEFAULT CPU_PER_SESSION KERNEL UNLIMITED DEFAULT CPU_PER_CALL KERNEL UNLIMITED DEFAULT LOGICAL_READS_PER_SESSION KERNEL UNLIMITED DEFAULT LOGICAL_READS_PER_CALL KERNEL UNLIMITED DEFAULT IDLE_TIME KERNEL UNLIMITED DEFAULT CONNECT_TIME KERNEL UNLIMITED DEFAULT PRIVATE_SGA KERNEL UNLIMITED DEFAULT FAILED_LOGIN_ATTEMPTS PASSWORD 10 DEFAULT PASSWORD_LIFE_TIME PASSWORD 180 DEFAULT PASSWORD_REUSE_TIME PASSWORD UNLIMITED 86

87 DEFAULT PASSWORD_REUSE_MAX PASSWORD UNLIMITED DEFAULT PASSWORD_VERIFY_FUNCTION PASSWORD NULL DEFAULT PASSWORD_LOCK_TIME PASSWORD 1 DEFAULT PASSWORD_GRACE_TIME PASSWORD 7 16 rows selected. 78: Observe the information in the columns: 1. The SGA 2. The cursor state 3. User-session data 4. The stack space a. Text and parsed forms of all SQL statements b. Run-time memory values for the SQL statement, such as rows retrieved c. Security and resource usage information d. Local variables for the process Which option has the correct match between the memory areas and their contents? A. 1-c, 2-b, 3-d, 4-a B. 1-b, 2-c, 3-d, 4-a C. 1-a, 2-b, 3-c, 4-d D. 1-a, 2-b, 3-d, 4-c 78: 观察列中的信息 : 1. SGA 2. 游标状态 3. 用户会话数据 4. Stack space a. 所有 SQL 语句的文本和解析形式 b. SQL 语句的运行时间内存值, 例如行检索 c. 安全性和资源使用信息 d. 程序的本地变量 87

88 哪个选项是正确的关于内存区域和他们的解释? A. 1-c, 2-b, 3-d, 4-a B. 1-b, 2-c, 3-d, 4-a C. 1-a, 2-b, 3-c, 4-d D. 1-a, 2-b, 3-d, 4-c 答案 :C 本题主要是考察一些概念问题 79: You are using Enterprise Manager to schedule backups for your database. Which type of script would be generated by the backup scheduler? A. XML script B. PL/SQL script C. Operating system script D. Recovery Manager (RMAN) script 79: 你正在使用 Enterprise Manager 调度备份你的数据库 哪种类型的脚本会产生通过备份调度? A. XML 脚本 B. PL/SQL 脚本 C. 操作系统脚本 D. RMAN 脚本 答案 :D 如果你启用自动备份,Oracle Enterprise Manager 调度一个日常备份 job 使用 RMAN 备份所有的数据文件到 FRA 上 参考官方文档 : 80: Note the following functionalities of various background processes: 88

89 1. Record the checkpoint information in data file headers. 2. Perform recovery at instance startup. 3. Cleanup unused temporary segments. 4. Free the resources used by a user process when it fails. 5. Dynamically register database services with listeners. 6. Monitor sessions for idle session timeout. Which option has the correct functionalities listed for a background process? A. Archiver Process (ARCn): 1, 2, 5 B. System Monitor Process (SMON): 1, 4, 5 C. Process Monitor Process (PMON): 4, 5, 6 D. Database Writer Process (DBWn): 1, 3, 4 80: 注意下面各种各样的后台进程的功能 : 1. 记录检查点信息在数据文件头 2. 执行实例恢复在启动的时候 3. 清楚没使用的临时段 4. 用户进程故障时释放用户使用的资源 5. 使用监听动态注册数据库服务 6. 为空闲会话超时监视会话 哪个选项是正确的列出的后台进程和它的功能? A. Archiver Process (ARCn): 1, 2, 5 B. System Monitor Process (SMON): 1, 4, 5 C. Process Monitor Process (PMON): 4, 5, 6 D. Database Writer Process (DBWn): 1, 3, 4 答案 :C 一 SMON: 系统监控进程 1. 主要是已经提交的数据但是还没有进行写入数据文件给断电了, 重启的时候,smon 就会进行恢复 a. 执行前滚, 将已经写入重做日志文件但是还没有写入到数据文件中的数据 ( 使用 scn 号码来识别提交记录的 ) b. 打开数据库 89

90 c. 回滚没有提交的事务 2. 还可以进行磁盘空间维护工作 a. 回收或者合并数据文件中相连的空闲区 b. 释放临时段 二 PMON: 进程监督进程 1. 当某个进程崩溃,PMON 将负责进行如下的清理工作 a. 回滚用户当前事务 b. 释放用户所加的所有表一级和行一级的锁 c. 释放用户所有的其他资源等 三 ARCn: 归档日志进程 1. 当一组重做日志文件写满后, 会写另外一组, 当最后一组写满后会在写第一组, 叫做日志切换 2. 如果没有开归档, 那么覆盖后就无法进行恢复了 3. 如果开了归档, 那么就会使用 arch 进程进行写入归档日志文件中,oracle 会确保在一组重做日志的归档操作完成之前不会重新使用该组日志 四 DBWn: 数据库写进程 1.11g 之前只可以有 0~9,10 个进程,11g 之后可以有 36 个,0~9 和 a~z, 通过 db_writer_processes 来设置个数的, 如果启动的时候没有说明个数那么是由 cpu 的个数来决定的该参数的 2. 当以下情况发生时,DBWR 会将高速缓冲区中的数据写入到数据文件中 a. 当脏缓冲区的数量超过了所设定的限额 b. 所设定的时间间隔已到 c. 有进程需要高速缓冲区, 但是没有空闲的高速缓冲区空间时候 d. 校验 ( 检查点 ) 发生时 e. 某个表被删除或者截断 (truncate,drop) f. 某个表空间被设置为只读 g. 表空间进行联机备份时 h. 表空间被设置为脱机时 参考官方文档 : 81: Which statement is true about a whole consistent database backup on a database running in ARCHIVELOG 90

91 mode? A. The backup will consist of used data blocks only. B. The database must be shut down to accomplish the backup. C. The backup can be accomplished without shutting down the database. D. The backup will contain all database files that have never been backed up. 81: 哪些语句是正确的关于运行在 ARCHIVELOG 模式下的一致性数据库备份? A. 只备份使用过的数据块 B. 数据库必须 shutdown 来完成备份 C. 备份可以在不 shutdown 数据库的情况下完成 D. 备份将包含所有的未备份过的数据文件 答案 :B 一致性备份必须在数据库正常关闭的情况下进行, 这个时候 redo, 数据文件和控制文件的 scn 都是一致的 参考官方文档 : 82: Which statement is true about the UNDO_RETENTION parameter when retention guarantee is not enabled? A. It is the time period after which the undo data becomes obsolete. B. It is the time period after which the committed undo data would be transferred to a temporary tablespace. C. It is the minimum time period up to which the committed undo data would be retained if free undo space is available. D. It is the time period after which the undo data is transferred to the Flash Recovery Area to provide read consistency. 82: 哪句是正确的关于 UNDO_RETENTION 参数在 retention guarantee 没启用的时候? A. 它是 undo 数据变得失效之后的时间 B. 它是提交的 undo 数据被传输到临时表空间之后的时间 91

92 C. 它是 undo 空间可用的情况下保留提交的 undo 数据的最小时间 D. 它是 undo 数据传输到快速闪回区用来提高读一致性所需的时间 答案 :C 当 retention guarantee 没有设置时, 即 undo 数据不强制保留 UNDO_RETENTION 所设置的时间内, 如果是 undo 表空间是自动增长, 即在足够的空闲空间下, 则可能会保留到 UNDO_RETENTION 所设置的时间 如果 undo 表空间是固定的, 则 UNDO_RETENTION 可能会被忽略,undo 数据可能被覆盖 83: You have a large amount of historical data in a flat file. Some analysts in your organization need to query this data in the file. The file is too large to load the data in it into your current database. Which is the most effective method to access this data in your database? A. Use the database link. B. Use the SQL*Loader utility. C. Use the Oracle Data Pump utility. D. Create an external table and leave the data in the flat file. 83: 你有大量的历史数据在平面文件中 在你的公司中一些分析师需要查询这个文件中的数据 文件太大对你目前的数据库来说 哪种方法是最有效的去访问数据? A. 使用 database link B. 使用 SQL*Load 功能 C. 使用 Oracle Data Pump 功能 D. 创建一个外部表并保留数据在平面文件中 答案 :D 因为题目中提到文件过大, 不能导入到数据库中, 故排除 BC, 又因为数据存在平面文件中, 不是数据库文件, 故 A 也 不可行 答案选择 D, 使用外部表来访问 外部表, 参考官方文档 : 92

93 84: Which statements are true regarding the creation of an incident package file by using the EM Workbench Support? (Choose all that apply.) A. You can add SQL test cases to the incident package. B. You can add or remove the trace files to the package. C. You cannot create an incremental incident package when the physical files are purged from the ADR. D. You can create the incremental incident package ZIP file for new or modified diagnostic information for the incident package already created. 84: 哪些语句是正确的关于使用 EM Workbench Support 创建一个事件包文件?( 选择所有正确的 ) A. 你可以在事件包添加 SQL 测试用例 B. 你可以在事件包添加或移除追踪文件 C. 你不能创建一个增量事件包当物理文件从 ADR 删除 D. 你可以创建增量事件包压缩文件为新的或修改事件包已经创建的诊断信息 答案 :ABD 参考官方文档 : 85: You are managing an Oracle Database 11g database. You want to ensure the recovery of the database to the point of failure. Which configuration will you do to accomplish the task? A. Multiplex all database files. B. Configure the Flash Recovery Area. C. Configure the database instance for ARCHIVELOG mode. D. Configure the FAST_START_MTTR_TARGET initialization parameter. 85: 你正在管理一个 Oracle Database 11g 数据库 你想确保数据库的时间点恢复 哪些配置你需要做来完成这个任务? A. 多路复用所有的数据文件 B. 配置 Flash Recovery Area C. 配置数据库实例为 ARCHIVELOG 模式 93

94 D. 配置 FAST_START_MTTR_TARGET 参数 答案 :C 指定时间点恢复, 需要归档日志, 所以必须处于归档模式, 才能进行恢复, 答案选择 C 86: View the Exhibit and examine the user information. The user has been granted CONNECT and RESOURCE roles and no individual system privileges. The SL_REP user executes this command to create a table: SQL> CREATE TABLE orders ( oid number(6), odate date, ccode number(4), oamt number(10,2) ) TABLESPACE purchase_space; The PURCHASE_SPACE tablespace already exists in the database. Which statement describes the effect of the command? A. The command executes successfully and creates the table in the USERS tablespace. B. The command executes successfully and creates the table in the PURCHASE_SPACE tablespace. C. The command produces an error because the user does not have the privilege to createthe table. D. The command produces an error because the user does not have quota in the PURCHASE_SPACE tablespace. 94

95 86: 查看下表检查用户信息用户被授予 CONNECT 和 RESOURCE 角色并且没有单独的系统权限 SL_REP 用户执行这个命令去创建一个表 : SQL> CREATE TABLE orders ( oid number(6), odate date, ccode number(4), oamt number(10,2) ) TABLESPACE purchase_space; 哪个语句是正确描述这个命令的影响? A. 命令执行成功并且创建表在 USERS 表空间 B. 命令执行成功并且创建表在 PURCHASE_SPACE 表空间 C. 命令执行报错因为用户没有权限创建表 D. 命令执行报错因为用户在 PURCHASE_SPACE 表空间没有配额 答案 :B RESOURCE 角色包含 Create Table 系统权限, 所以可以创建表, 创建语句中指定了表空间, 故 B 正确 参考官方文档 : 87: A constraint in a table is defined with the INITIALLY IMMEDIATE clause. You executed the ALTER TABLE command with the ENABLE VALIDATE option to enable the constraint that was disabled. What are the two effects of this command? (Choose two.) A. It fails if any existing row violates the constraint. B. It does not validate the existing data in the table. C. It enables the constraint to be enforced at the end of each transaction. D. It prevents insert, update, and delete operations on the table while the constraint is in the process of being enabled. 87: 一个表上的约束使用 INITIALLY IMMEDIATE 子句定义 你执行 ALTER TABLE 命令使用 ENABLE VALIDATE 选项去启用被禁用的约束 这个命令的两个影响是什么?( 选择两个 ) A. 将会失败如果任何现有行违反约束 B. 它不会验证表中已经存在的数据 C. 它会启用约束强制执行在每个事务的末期 95

96 D. 阻止在表上的插入 更新和删除操作当约束被启用的时候 答案 :AD INITIALLY IMMEDIATE 表示初始化立即执行, 在每条语句执行结束时检验约束 ENABLE VALIDATE 表示原有的和新加的数据都必须遵循约束条件 A 正确,B 错误,ENABLE VALIDATE 会验证已经存在的数据是否违反约束 C 错,INITIALLY DEFERRED 才是事务提交之后检查约束 D 正确,ENABLE VALIDATE 会阻止插入 更新和删除操作来保证数据一致性 参考官方文档 : 88: The session of user SCOTT receives the following error after executing an UPDATE command on the EMP table: ERROR at line 1: ORA-00060: deadlock detected while waiting for resource On investigation, you find that a session opened by user JIM has a transaction that caused the deadlock. Which two statements are true regarding the session of SCOTT in this scenario? (Choose two.) A. The session is terminated after receiving the error and JIM can continue with his transaction. B. SCOTT should perform a COMMIT or ROLLBACK to allow JIM to continue with his transaction. C. The session is rolled back after receiving the error and JIM can continue with his transaction. D. SCOTT has to reexecute the last command in the transaction after he commits the transaction. 88: 用户 SCOTT 收到下面错误在 EMP 表上执行一个 UPDATE 命令之后 : ERROR at line 1: ORA-00060: deadlock detected while waiting for resource 经调查, 你发现用户 JIM 打开的会话有一个事务导致死锁 哪两句是正确的关于这个场景下的 SCOTT?( 选择两个 ) A. 会话中止在收到报错之后并且 JIM 可以继续它的事务 B. SCOTT 需要执行一个 COMMIT 或者 ROLLBACK 去允许 JIM 继续它的事务 C. 会话回滚在收到报错之后并且 JIM 可以继续它的事务 D. SCOTT 不得不重新执行事务的最后一个命令在它提交它的事务之后 96

97 答案 :BD 死锁是锁定冲突的特殊示例 两个或多个会话等待由对方锁定的数据时, 就会发生死锁 因为每个会话都在等待另一个会话释放锁定, 所以任何一个会话都不能完成事务处理, 也不能解决冲突 Oracle 数据库会自动检测死锁并终止语句, 同时显示错误消息 更正这种错误的适当做法是执行提交或回退, 这样做会在一个会话中释放任何其它锁定, 以便其它会话可继续完成其事务处理 scott 必须提交或回退, 才能更正检测到的死锁误 如果执行提交, 则必须重新提交第二次更新才能完成事务处理 如果执行回退, 则必须同时重新提交这两个语句才能完成事务处理 参考官方文档 : 89: Examine the following statement that is used to modify the primary key constraint on the SALES table: SQL> ALTER TABLE SALES MODIFY CONSTRAINT pk DISABLE VALIDATE; Which three statements are true regarding the above command? (Choose three.) A. The constraint remains valid. B. The index on the constraint is dropped. C. It allows the loading of data into the table using SQL *Loader. D. New data conforms to the constraint, but existing data is not checked. E. It allows the data manipulation on the table using INSERT/UPDATE/DELETE SQL statements. 89: 检查下面用于修改 SALES 表主键约束的语句 : SQL> ALTER TABLE SALES MODIFY CONSTRAINT pk DISABLE VALIDATE; 哪三句是正确的关于上面的命令?( 选择三个 ) A. 约束仍然有效 B. 约束上的索引被删除 C. 允许使用 SQL*Load 加载数据到表中 D. 新的数据符合约束, 已经存在的数据不会被检查 E. 允许在表上对数据使用 INSERT/UPDATE/DELETE SQL 语句 答案 :ABC DISABLE 和 ENABLE 是针对新增的数据是否符合约束,NOVALIDATE 和 VALIDATE 是针对已经存在的数据是否符合 97

98 约束 DISABLE NOVALIDATE: 不检查新数据和现有数据, 因此这些数据可能不符合约束条件 当数据来自验证过的源, 而且表是只读表时, 通常会使用此状态 因此, 不会将新数据输入表中 在已清理了数据的数据仓库环境中使用 NOVALIDATE 此时不需要进行验证, 因而可以节省很多时间 DISABLE VALIDATE: 如果约束条件处于此状态, 则不允许对有约束条件的列进行任何修改 因为如果在验证现有数据后, 又允许将未经检查的数据输入表中, 就会出现不一致的情况 通常, 在必须验证现有数据但不进行修改时, 以及不需要索引来提高性能时, 可使用此状态 ENABLE NOVALIDATE: 新数据符合约束条件, 但现有数据处于未知状态 通常在确信表中只存在纯净数据和符合规则的数据的情况下使用该状态, 此时不需要进行验证 但是, 不允许将违反规则的新数据输入到系统中 ENABLE VALIDATE: 新数据与现有数据均符合约束条件 这是约束条件的典型状态和默认状态 A 正确, 因为 DISABLE VALIDATE 对现有的数据仍然有约束 B 正确, 因为 DISABLE VALIDATE 状态会删除索引 C 正确, 因为 DISABLE VALIDATE 对新增加的数据没有约束 D 错误, 因为 DISABLE VALIDATE 是对现有的数据有约束, 新增的没有 E 错误, 因为 DISABLE VALIDATE 不允许对有约束条件的列进行任何修改 参考官方文档 : 90: You execute the following command to change the status of the SALES tablespace: SQL> ALTER TABLESPACE sales OFFLINE; Which statements describe the effect of the command? (Choose all that apply.) A. The tablespace would require recovery to go back online. B. A checkpoint is taken on all data files that are associated with the SALES tablespace. C. The sessions that subsequently try to access the objects in the SALES tablespace receive an error. D. The new status of the SALES tablespace is recorded in the control file when the database instance is closed. 90: 你执行下面的命令改变 SALES 表空间的状态 : SQL> ALTER TABLESPACE sales OFFLINE; 98

99 哪些语句描述了命令的影响?( 选择所有合适的 ) A. 表空间需要恢复才能回到 online 状态 B. 检查点会记录在 SALES 表空间关联的所有数据文件 C. 会话随后访问 SALES 表空间的对象会收到一个错误 D. 当数据库实例关闭,SALES 表空间的新状态被记录在控制文件中 答案 :BC 表空间 offline 选项 : Normal( 正常 ): 如果表空间中的任何数据文件不存在任何错误状态, 可通过正常方式使表空间脱机. 表空间脱机时, 会对表 空间中的所有数据文件设置检查点, 可以确保将所有数据写入磁盘. Temporary( 临时 ): 如果表空间中的一个或多个文件存在错误状态, 也可以使表空间暂时脱机. 尚未脱机的数据文件脱机时, 会对这些数据文件设置检查点. 如果没有任何文件脱机, 但是使用了临时子句, 使表空间重新联机时便不需要执行介质恢复. 但是, 如果因写错误而导致表空间的一个或多个文件脱机, 而且设置了表空间临时脱机, 那么表空间需要执行恢复后才能重新联机. Immediate( 立即 ) 表空间可以立即脱机,Oracle 数据库不需要对任何数据文件设置检查点. 如果指定了 "Immediate", 则 必须先对表空间执行介质恢复 recover tablespace, 才能使表空间联机. 如果数据库在 NOARCHIVELOG 模式下运行, 则 无法立即使表空间脱机. 因为是正常的 offline 表空间, 所以不需恢复, 即可 online,a 错正常的 offline 表空间, 会对所有数据文件设置检查点,B 对不能访问 offline 的表空间,C 对表空间 offline 时会立即记录在控制文件, 而不是关闭的时候才记录,D 错 91: You are working on a database that must be functioning 24 hours a day, 7 days a week. The database is configured in ARCHIVELOG mode. Which two options do you have for performing user-managed backups? (Choose two.) A. You can perform consistent backups only. B. You can perform a complete database backup without shutting down the database instance. C. You can back up data files only when all data files have the same SCN recorded in the control file. 99

100 D. You can back up only those data files whose headers are frozen by using ALTER TABLESPACE BEGIN BACKUP or ALTER DATABASE BEGIN BACKUP commands. 91: 你工作在一个 7 24 小时工作的数据库 数据库配置为 ARCHIVELOG 模式 哪两个种是你可以执行用户管理的备份?( 选择两个 ) A. 你只可以执行一致性备份 B. 你可以执行一个完整的数据库备份在数据库实例不关闭的情况下 C. 你可以备份数据文件只有在在控制文件中所有数据文件拥有相同的 SCN 记录时 D. 你可以备份只有那些文件头使用 ALTER TABLESPACE BEGIN BACKUP 或者 ALTER DATABASE BEGIN BACKUP 命令冻结的数据文件 答案 :BD 归档模式 : 可以进行一致性备份 ( 冷备 ) 和非一致性备份 ( 热备 ) 非归档模式 : 一致性备份 ( 冷备 ) 一致性备份 ( 冷备份 ): 在数据库正常关闭情况下做备份, 数据库处于一致性状态 ( 可以用于归档和非归档 ), 所有 SCN 号一致 缺点 : 数据库需要关闭 非一致性备份 ( 热备份 ): 数据库在 open 状态下备份 ( 用于归档模式 ), 使用 alter database/tablespace xxx begin backup 开始备份, 此时会冻结数据文件文件头 92: You have set Tablespace Full Metrics Threshold values for the USERS tablespace as follows: Warning (%): 90 Critical (%): 95 Which background process is responsible for issuing alerts when the threshold is crossed? A. System monitor (SMON) B. Process monitor (PMON) C. Memory manager process (MMAN) D. Manageability Monitor process (MMON) 92: 你设置 USERS 表空间的 Tablespace Full Metrics Threshold 值为下面 : Warning (%): 90 Critical (%):

101 哪个后台进程负责阈值超出时发出警报? A. System monitor (SMON) B. Process monitor (PMON) C. Memory manager process (MMAN) D. Manageability Monitor process (MMON) 答案 :D 可管理性监视器进程 (MMON), 可执行各种与可管理性相关的后台任务, 例如 : 每当给定的度量超过其阈值时发出预警 通过衍生附加进程 (MMON 从属进程 ) 获取快照 捕获近期已做修改的 SQL 对象的统计值 参考官方文档 : 93: User SCOTT executes the following command on the EMP table but has not issued COMMIT, ROLLBACK, or any data definition language (DDL) command: SQL> SELECT ename FROM emp 2 WHERE job='clerk' FOR UPDATE OF empno; SCOTT has opened another session to work with the database instance. Which three operations would wait when issued in SCOTT's second session? (Choose three.) A. LOCK TABLE emp IN SHARE MODE; B. LOCK TABLE emp IN EXCLUSIVE MODE; C. UPDATE emp SET sal=sal*1.2 WHERE job='manager' D. INSERT INTO emp(empno,ename) VALUES (1289,'Harry'); E. SELECT ename FROM emp WHERE job='clerk' FOR UPDATE OF empno; 93: 用户 SCOTT 执行下面命令在 EMP 表上但是没有 COMMIT,ROLLBACK 或者任何 DDL 命令 : 101

102 SQL> SELECT ename FROM emp 2 WHERE job='clerk' FOR UPDATE OF empno; SCOTT 打开了另一个会话与数据库实例 哪三种操作会等待当在 SCOTT 的第二个会话执行的时候?( 选择三个 ) A. LOCK TABLE emp IN SHARE MODE; B. LOCK TABLE emp IN EXCLUSIVE MODE; C. UPDATE emp SET sal=sal*1.2 WHERE job='manager' D. INSERT INTO emp(empno,ename) VALUES (1289,'Harry'); E. SELECT ename FROM emp WHERE job='clerk' FOR UPDATE OF empno; 答案 :ABE 这个 select... for update 是在 TX 加上了 S 锁, 在 TM 上增加了 SX 锁, 因此不能在 TX 上增加 X 锁, 不能在 TM 上增加 S SSX X 锁 A: 正确, 这个相当于 TMS 锁 B: 正确, 这个是 TM 的 X 锁 C: 这里只是 TM 的 SX 锁 D: 和 C 一样 E: 正确, 这里是 SX 锁, 锁的是不同的记录 94: Which three statements are true about logical structures of the Oracle database? (Choose three.) A. Each segment contains one or more extents. B. Multiple tablespaces can share a single data file. C. A data block is the smallest unit of input/output (I/O) in data files. D. It is possible to have tablespaces of different block sizes in a database. E. Each data block in the database always corresponds to one operating system block. 94: 哪三个语句是正确的关于 Oracle 数据库的逻辑结构?( 选择三个 ) A. 每个段包含一个或多个区 B. 多个表空间可以共用一个数据文件 C. 数据块是数据文件最小的 I/O 单元 D. 一个数据库中可能有不同的块大小的表空间 E. 数据库中的每个数据块总是和操作系统块保持一致 102

103 答案 :ACD A 段是由一个或多个去组成的, 故正确 B 一个数据文件只能属于一个表空间, 一个表空间可以有多个数据文件, 错误 C Oracle Data Block 是最小的 I/O 单位, 正确 D 可以指定非标准快大小的表空间 E 数据库里的块大小可以和操作系统一致, 也可以是其的整倍数, 错误 95: You are managing an Oracle Database 11g database. You configured the database to run in ARCHIVELOG mode. Which two statements are true in this scenario? (Choose two.) A. You must shut down the database instance to perform the backups. B. You must configure the Flash Recovery Area (FRA) for the database. C. You can perform complete database backups without closing the database. D. All the previous closed database backups including control files become invalid after you configure the database to ARCHIVELOG mode. 95: 你正在管理一个 Oracle Database 11g 数据库 你配置数据库为 ARCHIVELOG 模式 哪两句是正确的在这个场景? ( 选择两个 ) A. 你必须关闭数据库才能执行备份 B. 你必须为数据库配置 Flash Recovery Area C. 你可以执行完整的数据库备份没有关闭数据库的情况下 D. 在你设置数据库为 ARCHIVELOG 模式之后, 所有之前的相关数据库备份包括控制文件变得无效 答案 :CD A. 在归档模式下, 可以进行数据库非一致性备份, 即热备份 不需要关闭数据库来备份 B. 在归档模式下, 不用必须指定快速恢复区, 归档日志可以重新自己指定本地位置或远程位置来归档 C. 在归档模式下, 可以进行完成的数据库备份, 而不需要数据库关闭 D. 在非归档转为归档模式后, 或者重新配置成归档模式, 之前所有的备份, 包括控制文件, 都已经变为无效的, 因为日志信息的序列号是重头开始的 103

104 96: View the Exhibit to examine the output of the DBA_OUTSTANDING_ALERTS view. After 30 minutes, you executed the following command: SQL> SELECT reason,metric_value FROM dba_outstanding_alerts; REASON METRIC_VALUE Tablespace [TEST] is [28 perce nt] full What could be the reason for the elimination of the other rows in the output? A. An Automatic Workload Repository snapshot has been taken recently. B. The non-threshold-based alerts are transferred to DBA_ALERT_HISTORY. C. The threshold alerts conditions are cleared and the alerts are transferred to BA_ALERT_HISTORY. D. The threshold alerts related to database metrics are permanently stored in DBA_ALERT_HISTORY but not the threshold alerts related to instance metrics. 96: 查看下图检查 DBA_OUTSTANDING_ALERTS 视图的输出 30 分钟之后, 你执行下面的命令 : SQL> SELECT reason,metric_value FROM dba_outstanding_alerts; REASON METRIC_VALUE 104

105 Tablespace [TEST] is [28 perce nt] full 可能是什么原因消除输出中的行? A. 采取最近一个自动负载知识库快照 B. 非基于阈值的 alert 被转移到 DBA_ALERT_HISTORY C. 基于阈值的 alert 条件被清除并且 alert 转移到 DBA_ALERT_HISTORY D. 基于阈值的 alert 数据库相关的指标被永久的存储在 DBA_ALERT_HISTORY 而不是基于阈值的 alert 实例相关的指标 答案 :C 服务器生成预警分为两种类型 : 阈值预警和非阈值预警 大多数服务器生成的预警是通过对数据库度量设置警告阈值和严重阈值来配置的 可为 120 多个度量定义阈值, 这些度量包括 : 每秒的物理读取次数 每秒的用户提交次数 SQL 服务响应时间除了表空间的空间占用率度量与数据库相关外, 其它度量都与实例相关 阈值预警又称为 有状态预警, 清空预警条件后, 会自动清空这些预警 有状态预警显示在 DBA_OUTSTANDING_ALERTS 中, 清空后会转到 DBA_ALERT_HISTORY 服务器生成的其它预警对应于特定的数据库事件, 如 ORA-* 错误 快照太旧 错误 恢复区空闲空间过少 和 可恢复会话被挂起 等 这些都不是基于阈值的预警, 又称为 无状态预警 无状态预警会直接转到历史记录表 只在 Database Control 环境中, 清空无状态预警才有意义, 因为 Database Control 会在自身的资料档案库中存储无状态预警 97: You have two database servers SEMP and SACCT. The database in the SEMP server maintains the employee information and the database in the SACCT server maintains the accounts payable information. The employees submit the expense reports to the accounts payable department. A user of the accounts payable database wants to extract the employee information from the database in the SEMP server for cross verification. Which schema object enables the user to access the information from the remote database? A. Cluster B. Database link 105

106 C. Mapping table D. Materialized view 97: 你有两个数据库服务器 SEMP 和 SACCT SEMP 服务器上的数据库维护员工的信息,SACCT 服务器上的数据库维护账户应付款信息 员工提交账户应付款部门的费用报告 一个账户应付款数据库的用户想提取员工信息从 SEMP 服务器上数据库进行交叉验证 哪个方案对象启用可以使用户访问远程数据库的信息? A. Cluster B. Database link C. Mapping table D. Materialized view 答案 :B 使用 DB Link 可以实现数据库的远程连接, 关于 DB Link 的介绍, 参考官方文档 : 98: In a new installation of Oracle Database 11g, you perform these activities: 1. Organize software and data on different subdirectories to avoid poor performance. 2. Use consistent naming conventions for database files. 3. Separate administrative information pertaining to the database in different directories. Which option corresponds to the type of activities you performed? A. Oracle Managed Files B. Oracle Grid Architecture C. Optimal Flexible Architecture D. Oracle database architecture E. Automatic Storage Management 98: 106

107 在一个新安装的 Oracle Database 11g 数据库, 你执行下面活动 : 1. 组织软件和数据在不同的子目录, 避免性能不佳 2. 使用统一的命名惯例为数据库文件 3. 分开管理权限信息在不同目录 哪个选项对应的你指定的活动? A. Oracle Managed Files B. Oracle Grid Architecture C. Optimal Flexible Architecture D. Oracle database architecture E. Automatic Storage Management 答案 :C OFA 其实就是一种 Oracle 的一种规范, 其意义就是用一种统一的给文件和文件夹的规则, 和文件存放目录的规则做一个约定 这样, 我们不管是安装多个版本的 Oracle Database 也好, 因为目录规范, 命名规范, 这样软件不会冲突, 方便管理, 文件也方便查找 通过遵循 OFA 的指导, 使得整个系统可以更加灵活 参考官方文档 : 99: You configured the Flash Recovery Area (FRA) for your database. The database instance is running in ARCHIVELOG mode. The default location for the archived redo log files is the Flash Recovery Area. Which two files are removed automatically if the space is required in the FRA as per the retention policy? (Choose two.) A. Flashback log files B. Backups that have become obsolete C. User managed backups of the data files and control files D. Archived redo log files that have multiple copies in a different archive location and not backed up 99: 你为你的数据库配置 Flash Recovery Area(FRA) 数据库实例处于 ARCHIVELOG 模式 默认的归档日志路径是 Flash Recovery Area 哪两个文件自动删除如果 FRA 按照保留策略需要空间? 107

108 A. 闪回日志文件 B. Obsolete 的备份 C. 用户管理的数据文件和控制文件备份 D. 没有备份的归档日志文件有多路复用的备份在不同的归档路径 答案 :AB 快速恢复区的空间管理由备份保留策略控制 保留策略确定文件何时过时, 即何时这些文 件对达到数据恢复目标已不再有用 Oracle DB 通过删除不再需要的文件自动管理该存储 参考官方文档 : 100: All the database users are presently connected to the database instance and working. The HR user has opened three database sessions and executed the following command in one of his sessions: SQL> UPDATE persons SET ccode='u031' WHERE ccode='u029'; 123 rows updated. SQL> DELETE FROM persons WHERE exp='y'; 3 rows deleted. The SYS user opens a new session after HR executed the above commands. Which sessions can see the effect of the UPDATE and DELETE commands? A. All sessions of the HR user only B. All sessions of the HR user and the SYS user C. The session of the HR user that executed the commands D. All the sessions for which the database users have access privilege to the PERSONS table 100: 所有的数据库用户正在连接数据库实例进行工作 HR 用户打开了三个数据库会话并执行下面的命令在其中一个会话 : SQL> UPDATE persons SET ccode='u031' WHERE ccode='u029'; 123 rows updated. SQL> DELETE FROM persons WHERE exp='y'; 3 rows deleted. SYS 用户打开一个新的会话在 HR 执行上面的命令后 哪个会话可以看到 UPDATE 和 DELETE 命令的影响? A. 只有 HR 用户打开的所有会话 B. HR 和 SYS 的所有会话 C. HR 用户执行命令的会话 D. 数据库用户有访问 PERSONS 表权限的用的所有会话 108

109 答案 :C 因为 update 和 delete 之后没有 commit, 所以只能执行语句的会话才能看到结果 101: The user HR receives the following error while inserting data into the TTK table: ERROR at line 1: ORA-01653: unable to extend table HR.TTK by 128 in tablespace SMD Upon investigation, you find that SMD is a small file tablespace. Which three action would allow the user to insert data? (Choose three.) A. Add a data file to the SMD tablespace. B. Add a data file to the temporary tablespace associated with the user HR. C. Resize the data file associated with the SMD tablespace to make it larger. D. Alter the data file associated with the SMD tablespace to grow automatically. E. Change the segment space management for the SMD tablespace to automatic. 101: HR 用户收到下面的错误当插入数据到 TTK 表中 : ERROR at line 1: ORA-01653: unable to extend table HR.TTK by 128 in tablespace SMD Upon investigation, you find that SMD is a small file tablespace. 哪三种动作允许用户插入数据?( 选择三个 ) A. 添加数据文件到 SMD 表空间 B. 添加数据文件到与 HR 用户相关联的临时表空间 C. 调整 SMD 表空间相关的数据文件使之更大 D. 变更 SMD 表空间相关的数据文件为自动增长 E. 改变 SMD 表空间的段空间管理为自动 答案 :ACD 增大表空间有三种方法 : 1 增加一个文件:ALTER TABLESPACE lmtbsb ADD DATAFILE '/u02/oracle/data/lmtbsb02.dbf' SIZE 1M; 2 改变原来数据文件的大小:ALTER DATABASE DATAFILE '/u02/oracle/rbdb1/stuff01.dbf' RESIZE 300M; 3 设置自动增长:ALTER TABLESPACE users ADD DATAFILE '/u02/oracle/rbdb1/users03.dbf' SIZE 10M 109

110 AUTOEXTEND ON NEXT 512K MAXSIZE 250M; 故答案选 ACD 参考官方文档 : 102: Which two statements are true about checkpointing? (Choose two.) A. The checkpoint frequency decreases with the smaller redo log file size. B. It ensures that all committed data is written to the data files during normal shutdown. C. The frequent full checkpoint in a database can cause the overall degradation of the database performance. D. It prompts the Checkpoint (CKPT) process to write data to the data files and redo information to the online redo log files. 102: 哪两句关于检查点的描述是正确的?( 选择两个 ) A. 检查点出现的频率会减少随着 redo 日志文件变小 B. 它确保所有已经提交的数据被写入到数据文件在关机期间 C. 频繁的完全检查点会导致数据库性能全线下降 D. 它提示检查点进程 (CKPT) 写数据到数据文件和写 redo 信息到在线 redo 日志文件中 答案 :BC A. 当重做日志文件太小的情况下, 会频繁的切换日志, 检查点信息写入数据文件的频率会增加而不是减少 A 错 B. 在正常关库, 会生成完全检查点,CKPT 会让 DBWn 进程将所有已经提交的都写进数据文件,B 对 C. 频繁的发生检查点会增加 I/O 的读写次数, 造成数据库性能的下降, 故 C 对 D.LGWR 是将重做信息写进重做日志里,DBWn 是将数据写进数据文件,CKPT 进程写入的检查点信息包括检查点位置 系统更改编号 (SCN) 联机重做日志文件中恢复开始的位置 有关日志的信息等等.D 错 103: Which two statements are true regarding the Oracle Data Pump export and import operations? (Choose two.) A. You cannot export data from a remote database. B. You can rename tables during an import operation. C. You can overwrite existing dump files during an export operation. 110

111 D. You can compress the data during export but not the metadata because it is not supported. 103: 哪两句是正确的关于 Oracle Data Pump 的导入和导出操作?( 选择两个 ) A. 你不能从远程数据库导出数据 B. 你可以重命名表在导入期间 C. 你可以覆盖已经存在的 dump 文件在导出操作期间 D. 你可以在导出期间压缩数据除了元数据因为它不支持 答案 :BC 可以从远程导出, 使用 network_link 参数 可以压缩元数据和数据, 参数 compression 的选项有 ALL,DATA_ONLY,METADATA_ONLY 和 NONE 参考官方文档 : 104: View the Exhibit. You are creating an additional database by using the Database Configuration Assistant (DBCA). You opted to create a General Purpose database and during the database creation realize that the Block Size field is not enabled. What could be the reason for this? 111

112 A. You have chosen the File System option as the storage option. B. You have chosen the Automatic Storage Management (ASM) as the storage option. C. The data block size can be increased only when DBCA is invoked from Oracle Universal Installer (OUI). D. You are using General Purpose template and not the Custom Database template to create the database. 104: 查看下图 你正在创建一个数据库通过使用 Database Configuration Assistant(DBCA) 你选择创建一个一般用途数据库并且在数据库创建期间意识到 Block Size field 没有启用 原因可能是什么? A. 你选择了文件系统作为存储选项 B. 你选择了 ASM 作为存储选项 C. 数据块大小只能被增大当 DBCA 从 Oracle Universal Installer(OUI) 调起 D. 你正在使用一般用途模板而不是普通数据库模板创建数据库 答案 :D 是因为之前创建数据库时, 选择的是按照一般目的模板来创建的, 故块大小为固定的, 不能改 112

113 105: Your database is functional with a peak load for the last one hour. You want to preserve the performance statistics collected during this period to be used for comparison when you analyze the performance of the database in the future. What action would you take to achieve this task? A. Insert finding directives for ADDM tasks in the future. B. Create a baseline on a pair of snapshots spanning the peak-load period. C. Decrease the snapshot interval in the AWR to collect more snapshots during the peakload period. D. Set the snapshot retention period in the Automatic Workload Repository (AWR) to zero to avoid automatic purging of snapshots. 105: 数据库处于峰值负载的最后一个小时 你想保留在此期间收集的性能统计信息用于和未来的数据库性能进行比较和分析 你会采取什么行动来完成这个任务? A. 针对以后 ADDM 任务插入寻找指令 B. 创建一个基线用于和负载峰值期间对照 C. 在高峰负载时期, 减少 AWR 快照时间间隔, 收集更多的快照 D. 自动负载信息库 (AWR) 快照保留期限设置为零, 以避免自动清除快照 答案 :B 自动工作量资料档案库 (AWR): 是用于数据搜集 分析和提供解决方案建议的基础结构, 包括数据库统计信息和度量 应用程序统计信息 ( 事务处理量和响应时间 ) 操作系统统计信息及其它度量 自动工作量资料档案库(AWR) 通过为内部 Oracle 服务器组件提供服务来收集 处理 维护和使用性能统计信息, 以便进行问题检测和自优化 AWR 基线 : 是在一段时间内收集的一组 AWR 快照 基线用于性能比较, 这既可以是当前性能与基线的比较, 也可以是一个基线与另一基线的比较 从题中可知, 可在峰值负载期间建立一对快照来对比性能 106: Which of these is true about undo tablespace? A. Undo tablespace is a temporary tablespace B. Undo tablespace has only one datafile C. Undo tablespace has a datafile which is reused in cyclic manner 106: 哪些是正确的关于 undo 表空间? 113

114 A. undo 表空间是临时表空间 B. undo 表空间只有一个数据文件 C. undo 表空间有一个数据文件以循环的方式使用 答案 :A 107: Your database is in shutdown state. What will happend if you issue next command: SQL> startup A. instance will started B. instance started and DB is mounted C. instance started, DB opened and finally mounted D. instance started, DB mounted and finally opened 107: 你的数据库处于 shutdown 状态 如果你执行下面这个命令将会发生什么 : SQL> startup A. 实例将会启动 B. 实例启动并且数据库 mount C. 实例启动数据库 open 并最终 mount D. 实例启动数据库 mount 并最终 open 答案 :D Startup 默认为 startup open 参考官方文档 : 114

115 108: Which two statements are true about standard database auditing? (Choose two.) A. DDL statements can be audited. B. Statements that refer to standalone procedure can be audited. C. Operations by the users logged on as SYSDBA cannot be audited. D. Only one audit record is ever created for a session per audited statement even though it is executed more than once. 108: 哪两句是正确的关于标准的数据库审计?( 选择两个 ) A. DDL 语句可以被审计 B. 涉及独立存储过程的语句可以被审计 C. 用户作为 SYSDBA 登录操作不能被审计 D. 一个会话只会有一条审计记录被创建即便它执行不止一次 答案 :AB SQL 语句审计 :AUDIT table; 上面显示的语句可审计影响表的任何数据定义语言 (DDL) 语句, 包括 CREATE TABLE DROP TABLE 和 TRUNCATE TABLE 等 也可以审计 pl/sql 语句 C 答案 :Oracle DB 会自动捕获 SYSDBA 和 SYSOPER 用户的登录事件 D 答案 : 审计设置为 BY ACCESS 每次行使经审计的系统权限时, 都会生成一条审计记录 使用 BY SESSION 子句将这些记录组成一组, 以便每个会话只生成一条记录 ( 这样, 如果一个用户针对另一个用户的表发出了多条更新语句, 则只收集一条审计记录 ) 115

116 109: View Exhibit to examine the current memory allocation and parameter settings, respectively. Why are advisors not available for the shared pool and the buffer cache? A. because the DB_CACHE_ADVICE parameter is set to OFF B. because Automatic Memory Management (AMM) is disabled for the database instance C. because Automatic Shared Memory Management (ASMM) is enabled for the database instance D. because the values for the DB_CACHE_SIZE and SHARED_POOL_SIZE parameters were not set initially 109: 查看下表, 检查当前的内存分配和参数设置, 为什么 advisor 不能用于共享池和 buffer cache? 116

117 A. 因为 DB_CACHE_ADVICE 参数设置为 OFF B. 因为数据库实例禁用自动内存管理 C. 因为数据库实例启用了自动共享内存管理 D. 因为一开始没有设置 DB_CACHE_SIZE 和 SHARED_POOL_SIZE 参数 答案 :C 从图中可以看到启用了 asmm, 所以 share pool 和 buffer cache 不需要进行调整, 他们会动态调整 参考官方文档 : 110: You receive complaints from users regarding the high waiting time for their transactions. On investigation, you find that some users are not committing their transactions though they are not performing any activity for a long time. As a result, SQL statements need to wait for row level locks. Which two actions could you take to prevent this locking problem in the future? (Choose two.) A. Decrease the IDLE_TIME resource limit in the profile assigned to the blocking users. B. Use Database Resource Manager to automatically log out sessions that block others and are idle C. Set the limit in the profile of blocking users to control the number of blocks to be accessed in a session. D. Decrease the maximum number of interested transaction list (ITL) slots for the segments on which the blocking user performs the transaction. 110: 你收到用户关于事务高等待时间的投诉 在调查中, 你发现一些用户没有提交它们的事务尽管他们没有执行任何活动很长一段时间 因此,SQL 语句需要等待行级别的锁 哪两个行动可以阻止这么锁问题出现?( 选择两个 ) A. 减少分配给阻塞用户的 IDLE_TIME 资源在 profile 中 B. 使用 Database Resource Manager 去自动注销阻塞其他用户和空闲的会话 C. 在 profile 中设置限制以用来阻塞用户控制数据块分配在一个会话的数量 D. 减少段上的 ITL 的最大数量, 用于阻止用户执行事务 答案 :AB A 正确, 通过数据库资源管理器提供的空闲时间限制, 来指定哪些阻塞用户的会话的空间时间, 超过该时间后将终止会话 B 正确 C, 设置阻塞用户的档案, 以控制在一个会话中被访问的块的数量的限制 如此一来, 被阻塞的用户如果想再次访问的时候就不能访问了 错误 117

118 和 C 类似, 如果此时空闲的用户想访问以前不感兴趣的事务, 那么就不能访问了 111: A database user SMITH tries to query the V$SESSION view and fails to access it as follows: Which are the two possible solutions to enable SMITH to query the data in V$SESSION? (Choose two.) A. granting SELECT privilege to SMITH on V$SESSION B. granting SELECT privilege to SMITH on V_$SESSION C. asking the user SMITH to run the catalog.sql script D. granting SELECT privilege to SMITH on V$FIXED_TABLES E. setting the O7_DICTIONARY_ACCESSIBILITY parameter to TRUE F. creating a view based on V$SESSION and granting SELECT privilege to SMITH on the view that was created 111: 一个数据库用户 SMITH 尝试查询视图 V$SESSION 但无法访问 : 哪两个可能是使 SMITH 能够查询 V$SESSION 中数据的解决方案? A. 授予 SMITH 在 V$SESSION 上的 SELECT 权限 B. 授予 SMITH 在 V_$SESSION 上的 SELECT 权限 C. 用户 SMITH 运行 catalog.sql 脚本 D. 授予 SMITH 在 V$FIXED_TABLES 上的 SELECT 权限 E. 设置 O7_DICTIONARY_ACCESSIBILITY 参数为 TRUE F. 创建一个视图基于 V$SESSION 并授予 SMITH 权限 SELECT 创建的表 答案 :BF 从题中错误看出,SMITH 用户没有访问数据字典 v$session 的权限, 两种解决方法, 一是给他访问 v$session 的权限, 二是在 v$session 建立视图, 并授权让 SMITH 可以查看 118

119 112: Your database instance is functional for the past one month. The Automatic Workload Repository (AWR) snapshot retention is set to 7 and the STATISTICS_LEVEL initialization parameter is set to TYPICAL. You receive a complaint about the poor performance of the database between 7 PM and 9 PM of the previous day. Choose two actions any of which can be referred to first to diagnose the problem. (Choose two.) A. Use the Active Session History report. B. Use the AWR Compare Periods report. C. Use an ADDM analysis between 7 PM and 9 PM of the previous day. D. Use the AWR Compare Period report between 7 PM and 9 PM of the previous day. 112: 在过去的一个月, 你的数据库实例是功能性的 自动负载知识库 (AWR) 快照保留时间设置为 7 并且 STATISTICS_LEVEL 参数设置为 TYPICAL 你收到一个投诉关于数据库在前一天的 7PM 到 9PM 之间性能下降 选择两个可以第一时间诊断问题的动作?( 选择两个 ) A. 使用 Active Session History 报告 B. 使用 AWR Compare Periods 报告 C. 使用 ADDM 分析前天的 7 点到 9 点 D. 使用前一天 7 点到 9 点的 AWR Compare Period 答案 :BC A 不正确, 因为一般 Active Session History 默认保留时间为 1 小时, 所以无法查前天的信息 D 不正确, 因为应该与正常时段对比来确认问题 113: Which two statements are true about the Automatic Workload Repository (AWR)? (Choose two.) A. All AWR tables belong to the SYSTEM schema B. The AWR contains system wide tracing and logging information C. The snapshots collected by the AWR are accessible through data dictionary views D. The snapshots collected by the AWR are used by self-tuning components in the database 113: 哪两句是正确的关于自动负载知识库 (AWR)?( 选择两个 ) 119

120 A. 所有的 AWR 表属于 SYSTEM 用户 B. AWR 包含系统跟踪信息个登录信息 C. AWR 收集的快照可通过数据字典访问 D. AWR 收集的快照被数据库的自我调优组件使用 答案 :CD A 错误,AWR 属于 sysman 并存储在 sysaux 表空间 B 错误, 这是 ADR 的功能 C 正确,dba_hist_snapshot 就可以查询 D 正确,AWR 是所有自我管理功能的基础 114: View the Exhibit and examine the PL/SQL package and procedure. You made changes to the COMPUTE_TAX function inside the EMP_ADMIN package body. Which statement is 120

121 true after you recompile the EMP_ADMIN package body? A. The USE_P procedure remains valid. B. The USE_P procedure becomes invalid. C. The SHOW_DETAIL procedure becomes invalid. D. The EMP_ADMIN package specification becomes invalid and needs to be recompiled. 114: 查看下表并检查 PL/SQL 包和存储过程 你想改变 EMP_ADMIN 包体中的 COMPUTE_TAX 函数 哪个语句是正确的 在你重新编译 EMP_ADMIN 包体之后? A. 过程 USE_P 仍然有效 B. 过程 USE_P 变得无效 C. 过程 SHOW_DETAIL 变得无效 D. EMP_ADMIN 程序包说明变得无效需要重新编译 答案 :A 程序包体与程序包说明是分开的 因此, 可以更改并重新编译程序包体代码, 此时不会将与程序包说明相关的其它对象 标记为无效 115: View the Exhibit. What would happen if Oracle Home is not empty? 121

122 A. The installation will not be continued until the location is empty. B. The installation will proceed without overwriting the existing files. C. The installation can be continued, but the existing files will be overwritten. D. The installation terminates automatically after showing an error message. 115: 查看下图, 如果 Oracle Home 不为空将会发生什么? A. 安装不会继续直到位置为空 B. 安装会继续不覆盖已有的文件 C. 安装会继续, 但存在的文件会被覆盖 D. 安装会终止在显示一个错误信息之后 答案 :A 如果安装目录不为空会提示所选安装与指定 Oracle 主目录中已安装的软件冲突清空安装目录, 安装得以继续 122

123 116: Identify three situations in which you would NOT be able to drop a tablespace. (Choose three.) A. when the tablespace is online B. when the tablespace has segments with data in it C. when the tablespace is a default permanent tablespace for the database D. when the tablespace contains a table that is currently being used by transactions E. when the tablespace contains undo data that is needed to rollback an uncommitted transaction 116: 哪三种情况你不能删除一个表空间?( 选三个 ) A. 当表空间 online 的时候 B. 当表空间的段包含数据的时候 C. 当表空间是数据库默认的永久表空间时 D. 当表空间包含表正在被事务使用时 E. 当表空间包含 undo 数据需要回滚没提交的事务时 答案 :CDE 删除表空间有选多限制 参考官方文档 : 117: The user SCOTT owns the CUST table that is placed in the SALES tablespace. The user SCOTT opens a session and executes commands as follows: SQL> INSERT INTO cust VALUES(101, 'JACK'); 1 row created. SQL> INSERT INTO cust VALUES(102, 'SMITH'); 1 row created. As a DBA, you execute the following command from another session: 123

124 ALTER TABLESPACE sales READ ONLY; Which statement is true regarding the effect of this command on the transaction in Scott's session? A. The command fails as a transaction is still pending. B. The transaction in Scott's session is rolled back and the tablespace becomes readonly. C. The command waits and the user SCOTT can execute data manipulation language (DML) statements only as part of the current transaction. D. The command hangs until all transactions on the objects in the tablespace commit or rollback, and then the tablespace is placed in readonly mode. 117: 用户 SCOTT 拥有 CUST 表放在 SALES 表空间 用户 SCOTT 打开一个会话并执行下面命令 : SQL> INSERT INTO cust VALUES(101, 'JACK'); 1 row created. SQL> INSERT INTO cust VALUES(102, 'SMITH'); 1 row created. 作为一个 DBA, 你执行下面的命令在另一个会话 : ALTER TABLESPACE sales READ ONLY; 哪些语句是正确的关于这个命令? A. 命令失败因为一个事务仍然挂起 B. Scott 会话的事务回滚且表空间变成 readonly C. 命令等待并且用户 SCOTT 只可以执行 DML 语句作为当前事务的一部分 D. 命令挂起直到所有在表空间上的对象的事务提交或回滚, 然后表空间置于 readonly 模式 答案 :D ALTER TABLESPACE 语句会被挂起, 直到 DML 操作所在的会话提交事务 参考官方文档 : 124

125 118: You plan to configure the new Oracle Database 11g installation by performing these tasks: - Use Automatic Storage Management (ASM) as the storage option. - Use Oracle Enterprise Manager Database Control to manage the database. - Provide the same password for SYS, SYSTEM, SYSMAN, and DBSNMP accounts during the installation. - Configure the database to send notifications. Some tools available to you for installation are: 1: Oracle Universal Installer (OUI) 2: Database Configuration Assistant (DBCA) 3: Database Upgrade Assistant (DBUA) 4: Oracle Net Configuration Assistant Which tools would you use for this installation? A. 2 B. 3 C. 1 and 2 D. 3 and 4 E. 1,2 and 4 118: 你计划配置新的 Oracle Database 11g 安装通过执行这些任务 : - 使用自动存储管理 (ASM) 作为存储选项 - 使用 Oracle 企业管理控制台管理数据库 - 提供 SYS,SYSTEM,SYSMAN 和 DBSNMP 账户相同的密码在安装期间 - 配置数据库发送 通知 一些可以用来安装的工具是 : 1: Oracle Universal Installer (OUI) 2: Database Configuration Assistant (DBCA) 3: Database Upgrade Assistant (DBUA) 125

126 4: Oracle Net Configuration Assistant 哪些工具你将会用来这次安装? A. 2 B. 3 C. 1 and 2 D. 3 and 4 E. 1,2 and 4 答案 :E OUI 用于安装数据库软件 DBCA 用于创建数据库 DBUA 用于升级数据 Oracle Net Configuration Assistant 用于配置监听 选择 ASM 作为存储和设置密码是在 DBCA 期间完成的 配置 OEM 和 是在 OUI 期间完成的, 配置 OEM 需要配置监听, 所以答案选 E 119: Which three descriptions are correct about the effects of the TRUNCATE command on a table? (Choose three.) A. The corresponding indexes for the table are also truncated. B. Delete triggers on the table are fired during the execution of the TRUNCATE command. C. The child table is truncated when the TRUNCATE command is applied on the parent table. D. The highwater mark (HWM) is set to point to the first usable data block in the table segment. E. No undo or very little undo data is generated during the execution of the TRUNCATE command 119: 哪三个描述是正确的关于 TRUNCATE 命令在一个表上的影响?( 选择三个 ) A. 表相应的索引也被删除 B. 表上的删除触发器被解除当执行 TRUNCATE 命令 C. 当 TRUNCATE 命令应用于父表时, 子表也被删除 126

127 D. 高水位 (HWM) 设置为指向表段中第一个可用的数据块 E. 没有 undo 或者很少的 undo 数据产生在执行 TRUNCATE 命令期间 答案 :ADE 参考官方文档 : 120: The tnsnames.ora file has an entry for the service alias ORCL as follows: ORCL = ( DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl.oracle.com) ) ) The TNSPING command executes successfully when tested with ORCL, but you are not able to connect to the database instance with the following command: SQL> CONNECT What could be the reason for this? A. The listener is not running on the database node. B. The TNS_ADMIN environmental variable is set to a wrong value. C. The orcl.oracle.com database service is not registered with the listener. D. The DEFAULT_DOMAIN parameter is set to a wrong value in the sqlnet.ora file. 120: Tnsnames.ora 文件拥有一个服务别名 ORCL 的条目如下所示 : ORCL = 127

128 ( DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl.oracle.com) ) ) TNSPING 命令执行成功当测试使用 ORCL, 但是你不能连接数据库使用下面命令 : SQL> CONNECT 原因可能是什么? A. listener 没有运行在数据库节点上 B. TNS_ADMIN 环境变量设置错误 C. Orcl.oracle.com 数据库服务没有注册到 listener D. DEFAULT_DOMAIN 参数设置成错误的值在 sqlnet.ora 文件 答案 :C 如果 listener 没有启动, 则 tnsping 不会成功, 所以 A 错 TNS_ADMIN 主要应用于一台主机上有多个版本的数据库, 指定文件的路径, 所以 B 错当 SERVICE_NAME 填写不正确时, 你可以 tnsping 通数据库实例, 但是却无法连接到数据库实例, 因为你填写错的 SERVICE_NAME 并没有注册到 LISTENER 当中,C 正确 DEFAULT_DOMAIN 主要是设定客户端解析名字的域,D 错误 121: You suspect unauthorized data manipulation language (DML) operations on a particular table. You want to track users who are performing the transactions and the values used in the transactions. You also plan to transfer these values to another table for analysis. How would you achieve this? A. by using triggers B. by using Data Pump C. by using external tables D. by using anonymous PL/SQL blocks 121: 128

129 你怀疑未授权的数据库操作语言操作 (DML) 在一个特殊的表上 你想追踪正在执行事务和值使用在事务中的用户 你计划转换这些值到其他的表用于分析 你该如何达到这个目的? A. 通过使用触发器 B. 通过使用数据泵 C. 通过使用外部表 D. 通过匿名 PL/SQL 块 答案 :A 触发器是存储在数据库中的 PL/SQL 代码对象, 它们会在某些事件发生时自动运行或 触发 Oracle 数据库允许许多操作充当触发事件, 包括插入到表中 用户登录数据库以及尝试删除表或更改审计设置等操作 有许多事件可用来触发触发器, 这些事件分为三类 DML 事件触发器在通过语句修改数据时触发 DDL 事件触发器在通过语句创建或以某种方式修改对象时触发 数据库事件触发器在数据库中发生特定事件时触发 大多数触发器可指定为在事件发生前或事件发生后触发 对于 DML 事件, 可将触发器设计为在执行某一语句时触发一次, 或者在修改每行时触发一次 122: You execute a command to resize a data file, sales.dbf, of size 200 MB in your database: ALTER DATABASE DATAFILE '/remorse/sales.dbf' RESIZE 150M; Which statement is true about this command? A. The command must be issued in MOUNT state. B. The command succeeds only if the data file is offline. C. The command must be issued when the database is in the archivelog mode. D. The command succeeds if no extent in the tablespace is currently allocated above the 150 MB boundary of the file. 122: 你执行一个命令重置数据文件大小,sales.dbf, 大小为 200M 在你的数据库 : ALTER DATABASE DATAFILE '/remorse/sales.dbf' RESIZE 150M; 哪些语句是正确的关于这个命令? A. 命令必须在 MOUNT 状态下执行 129

130 B. 命令执行成功只有数据文件离线 C. 命令必须执行当数据库处于 archivelog 模式 D. 命令执行成功如果表空间中当前分配的没有大于 150MB 的文件边界的 extent 答案 :D 如果文件包含的数据超过指定减少的尺寸, 这会返回一个错误 参考官方文档 : 123: You executed the following commands to find the location of the alert log file: Where is the alert log file stored? (Choose all that apply.) A. in the BACKGROUND_DUMP_DEST location; in text format B. in the BACKGROUND_DUMP_DEST location; in XML format C. in the BACKGROUND_DUMP_DEST location; in both text and XML format D. in the DIAGNOSTIC_DEST/diag/rdbms/orcl/orcl/alert directory; in text format E. in the DIAGNOSTIC_DEST/diag/rdbms/orcl/orcl/alert directory; in XML format F. in the DIAGNOSTIC_DEST/diag/rdbms/orcl/orcl/alert directory; in both text and XML format 123: 你执行下面的语句寻找 alert 日志文件的位置 : Alert 日志文件存储的位置是?( 选择所有正确的 ) A. 在 BACKGROUND_DUMP_DEST 中 ; 文本格式 B. 在 BACKGROUND_DUMP_DEST 中 ;XML 格式 C. 在 BACKGROUND_DUMP_DEST 中 ; 文本格式和 XML 格式 130

131 D. 在 DIAGNOSTIC_DEST/diag/rdbms/orcl/orcl/alert 目录中 ; 文本格式 E. 在 DIAGNOSTIC_DEST/diag/rdbms/orcl/orcl/alert 目录中 ;XML 格式 F. 在 DIAGNOSTIC_DEST/diag/rdbms/orcl/orcl/alert 目录中 ; 文本格式和 XML 格式 答案 :AE $ORACLE_BASE/diag/rdbms/<db_name>/<SID>/alert 目录中有一个 XML 版本的预警日志 要通过 SQL*Plus 确定预警日志的位置, 请执行以下操作 : 使用 SQL*Plus( 或其它查询工具, 如 SQL Developer) 连接到数据库 查询 V$DIAG_INFO 视图 要查看不带 XML 标记的纯文本预警日志, 请执行以下操作 : 在 V$DIAG_INFO 查询结果中, 记下对应于 Diag Trace 条目的路径 将目录更改至该路径 使用文本编辑器打开 alert_sid.log 文件 要查看 XML 格式的预警日志, 请执行以下操作 : 在 V$DIAG_INFO 查询结果中, 记下对应于 Diag Alert 条目的路径 将目录更改至该路径 使用文本编辑器打开 log.xml 文件 124: You created a profile APP_USER and assigned it to the users. After a month, you decide to drop the profile. Some user sessions are currently connected to the database instance and are using the APP_USER profile. This command is used to drop the profile: SQL> DROP PROFILE app_user; Which statement describes the result? A. The command produces an error. B. The profile is dropped and current user sessions use the DEFAULT profile immediately. C. The profile is dropped and only the subsequent user sessions use the DEFAULT profile. D. The profile is dropped, the sessions are terminated, and the subsequent user sessions use the DEFAULT profile. 124: 你创建一个 profile APP_USER 并分配给用户 一个月后, 你决定删除 profile 一些连接数据库实例的用户会话正在使用 APP_USER profile 这个命令用于删除 profile: 131

132 SQL>DROP PROFILE app_user; 哪句描述的是最终结果? A. 命令产生一个错误 B. Profile 被删除且当前用户会话使用默认的 profile C. Profile 被删除且只有后续的用户会话使用 profile D. Profile 被删除, 会话终止并且后续的会话使用 profile 答案 :A profile 分配给用户后, 必须取消才可以删除 profile 文件 -- 创建 profile SQL> create profile wwww limit failed_login_attempts 7; Profile created. -- 指定 profile SQL> alter user skd profile wwww; User altered. -- 查看 skd 的 profile SQL> select PROFILE from dba_users where username='skd'; PROFILE WWWW -- 测试删除, 删除失败 SQL> drop profile wwww; drop profile wwww * ERROR at line 1: ORA-02382: profile WWWW has users assigned, cannot drop without CASCADE -- 修改为默认的 profile SQL> alter user skd profile default; User altered. -- 测试删除, 删除成功 SQL> drop profile wwww; Profile dropped. 132

133 125: View the Exhibits and examine lock waits. Users HR and SH complain that their transactions on one of the application tables, EMP, are waiting for response. Which action would you take to release the lock and enable users HR and SH to continue with their transactions? A. Kill the session of the user SCOTT with session ID118. B. Issue manual checkpoint using the ALTER SYSTEM command. C. Modify the profile used by user SCOTT to reduce the CONNECT_TIME limit. D. Flush the Shared Pool to remove the SQL statement causing "wait" in memory. 125: 查看表格并检查锁等待 用户 HR 和 SH 抱怨他们的事务在一个应用表 EMP 上, 真等待回应 哪个行动能让你释放锁 并继续 HR 和 SR 用户的事务? A. 杀掉 SCOTT 用户的 ID 为 118 的会话 B. 执行手动检查点使用 ALTER SYSTEM 命令 C. 修改 SCOTT 使用的 profile 减少 CONNECT_TIME 限制 D. 刷新共享池移除内存中导致等待的 SQL 语句 答案 :A 有冲突的锁定请求以分层布局的形式显示, 其中持有锁的会话位于顶部, 下面是排队请求锁的所有会话 由图上可知, SCOTT 是持有锁的会话 HR 和 SH 是排队请求锁的会话 133

134 对于冲突中涉及的每个会话, 会显示用户名 会话 ID 和会话已等待的秒数 选择会话 ID 可查看会话当前正在执行或 请求的实际 SQL 语句 自动数据库诊断监视器 (ADDM) 还会自动检测锁冲突, 并且会就低效的锁定趋势提出建议 为了解决锁冲突, 应该 : 提交或回退持有锁的会话 终止持有锁的会话 ( 在紧急情况下 ) 要解决锁冲突, 持有锁的会话必须释放锁 让会话释放锁的最好方式是与用户联系, 要求用户完成事务处理 紧急情况下, 管理员可以通过单击 Kill Session ( 终止会话 ) 按钮来终止持有锁的会话 ALTER SYSTEM KILL SESSION '118,2597' IMMEDIATE 终止会话后, 当前事务处理中的所有工作都会丢失 ( 回退 ) 会话被终止的用户必须再次登录, 然后重做被终止的会话自上次提交以来所做的所有工作 126: Note the functionalities of various background processes: 1: Perform recovery at instance startup. 2: Free the resources used by a user process when it fails. 3: Cleanup the database buffer cache when a process fails. 4: Dynamically register database services with listeners. 5: Monitor sessions for idle session timeout. 6: Cleanup unused temporary segments. 7: Record the checkpoint information in control file. Which option has the correct functionalities listed for a background process? A. Checkpoint (CKPT): 1, 2, 5 B. System Monitor (SMON): 1, 6 C. Process Monitor (PMON): 4, 6, 7 D. Database Writer (DBWR): 1, 3, 4 134

135 126: 注意各种后台进程的功能 : 1. 执行恢复在实例启动的时候 2. 释放用户进程失败时的资源 3. 清空数据库 buffer cache 当进程失败的时候 4. 动态注册数据库服务器监听 5. 监视空闲会话超时 6. 清楚不用的临时段 7. 记录检查点信息在控制文件 哪个选项是正确的列出后台进程的功能? A. Checkpoint (CKPT): 1, 2, 5 B. System Monitor (SMON): 1, 6 C. Process Monitor (PMON): 4, 6, 7 D. Database Writer (DBWR): 1, 3, 4 答案 :B 一 SMON: 系统监督进程 1. 主要是已经提交的数据但是还没有进行写入数据文件给断电了, 重启的时候,smon 就会进行恢复 a. 执行前滚, 将已经写入重做日志文件但是还没有写入到数据文件中的数据 ( 使用 scn 号码来识别提交记录的 ) b. 打开数据库 c. 回滚没有提交的事务 2. 还可以进行磁盘空间维护工作 a. 回收或者合并数据文件中相连的空闲区 b. 释放临时段二 PMON: 进程监督进程 1. 当某个进程崩溃,PMON 将负责进行如下的清理工作 a. 回滚用户当前事务 b. 释放用户所加的所有表一级和行一级的锁 c. 释放用户所有的其他资源等三 CKPT: 校验 ( 检查 ) 点和检验点进程 1. 提高系统效率和数据库一致性, 引入了校验点的事件,CKPT 是在 DBWR 将高速缓冲中的数据写入到数据文件上的时候产生的, 理论上说它是不需要的可以通过 redo log 和 scn 保证了完全恢复, 引入它是为了提高效率, 因为所有的校验点为止的变化都已经写入到数据文件中了, 在恢复的时候校验点之前的重做日志就不在需要了, 这样实例恢复就加快了,CKPT 会将校验点写入到所有相关的数据文件的文件 135

136 头中, 还要将校验点号码 重做日志序列号 归档日志名称和最低 最高 scn 号都会写入控制文件中, 由于 ckpt 会产生大量的 IO 操作, 因此不能频繁的产生校验点, 最好在 20 分钟以上四 ARCn: 归档日志进程 1. 当一组重做日志文件写满后, 会写另外一组, 当最后一组写满后会在写第一组, 叫做日志切换 2. 如果没有开归档, 那么覆盖后就无法进行恢复了 3. 如果开了归档, 那么就会使用 arch 进程进行写入归档日志文件中,oracle 会确保在一组重做日志的归档操作完成之前不会重新使用该组日志五 DBWn: 数据库写进程 1.11g 之前只可以有 0~9,10 个进程,11g 之后可以有 36 个,0~9 和 a~z, 通过 db_writer_processes 来设置个数的, 如果启动的时候没有说明个数那么是由 cpu 的个数来决定的该参数的 2. 当以下情况发生时,DBWR 会将高速缓冲区中的数据写入到数据文件中 a. 当脏缓冲区的数量超过了所设定的限额 b. 所设定的时间间隔已到 c. 有进程需要高速缓冲区, 但是没有空闲的高速缓冲区空间时候 d. 校验 ( 检查点 ) 发生时 e. 某个表被删除或者截断 (truncate,drop) f. 某个表空间被设置为只读 g. 表空间进行联机备份时 h. 表空间被设置为脱机时六 LGWR: 重做日志写进程 1. 将重做日志缓冲区的记录顺序写入到重做日志文件中, 这里注意它是顺序写入的, 因此 IO 相对要小 2. commit 语句怎样工作, 这里使用了快速提交技术 a. 服务器进程把提交的记录连同产生的 scn 号码一起写入重做日志缓冲区中 b.lgwr 将重做日志缓冲区中的记录写入在重做日志文件中, 这样就可以保证恢复了 c.oracle 通知用户 ( 进程 ) 提交已经完成 e. 服务器进程将修改数据库高速缓冲区中相关数据的状态并释放资源和打开锁 ( 这个时候可能这些数据并没有写入到数据文件中, 他们标记为脏数据, 之后由 DBWR 写入数据文件 ) 3. 以下情况 LGWR 会写入重做日志文件 a. 事务提交 b. 重做日志缓冲区中的记录超过了缓冲区容量的 1/3 c.dbwr 将数据库高速缓冲区中的数据块写入到数据文件之前 d. 每 3 秒 136

137 127: Identify the logical structure that will never have more than one data segment created for it. A. external table B. partitioned table C. partitioned index D. nonclustered table E. global temporary table 127: 确定逻辑结构不会被创建超过一个数据段 A. 外部表 B. 分区表 C. 分区索引 D. 非簇表 E. 全局临时表 答案 :D 非簇表只能使用一个段, 所以选择 D 128: View the Exhibit and examine the command used to create the ZONEDATA table. The table contains a million rows for zonewise analysis in the DSS system. DML operations are performed very rarely on the table. You decide to prepare an index on the ZONE column to enhance the performance of the queries on the ZONE column. Which type of index would you select in this scenario? A. Bitmap index B. Reverse key index 137

138 C. Normal BTree index D. Functionbased index 128: 查看下表并检查用于创建 ZONEDATA 表的命令 表包含百万行用于分析在 DSS 系统中 DML 操作执行的十分稀少在表中 你决定准备一个索引在 ZONE 列去增强查询 ZONE 列的性能 哪种类型的索引你应该选择在这个场景? A. bitmap 索引 B. 反向键值索引 C. 正常的 BTree 索引 D. 基于函数的索引 答案 :A zone 的值只有四个, 基数少, 故用位图索引较好 Bitmap index 的特点 : 1. 对于大数据量的查询,bitmap index 能更有效的减少响应时间 2. 减少 index 的占用空间 129: The user HR owns the EMP table. The user HR grants privileges to the user SCOTT by using this command: Which statement is true after HR issues the REVOKE command? A. The command fails because SCOTT still has privileges. B. The command succeeds and privileges are revoked from JIM. C. The command fails because HR cannot revoke the privileges from JIM. D. The command succeeds and only HR has the privilege to perform the SELECT, INSERT, and UPDATE 138

139 operations on the EMP table. 129: 用户 HR 拥有 EMP 表 用户 HR 授予权限给用户 SCOTT 通过这个命令 : 哪些语句是正确的在 HR 执行 REVOKE 命令之后? A. 命令执行失败, 因为 SCOTT 仍然有权限 B. 命令执行成功, 权限被收回从 JIM C. 命令执行失败, 因为 HR 不能收回权限从 JIM D. 命令执行成功, 只有 HR 用户有权限去执行 SELECT,INSERT 和 UPDATE 操作在 EMP 表上 答案 :C hr 将 DML 操作 emp 表的权限给 scott, 并且 scott 有传递权限,scott 将此权限传递给 jim, 此时 hr 想将 jim 的权限收回, 出错, 因为 hr 没有授予过权限给 jim, 此时 jim 可以 DML 操作 EMP 表, 当 hr 将 scott 的权限收回时,jim 不能再查询等操作 系统权限取消时不级联, 对象权限取消时是级联的 参考官方文档 : 130: Which statement describes the effect on an index, when the indexed column for the rows is updated in the base table? A. An update in a leaf row takes place. B. The index becomes invalid after the update. C. The leaf block containing the row to be updated is marked as invalid. D. A row in the leaf block of the index for the key value is logically deleted and a new leaf row is inserted. 130: 哪些语句描述索引的影响, 当索引列被更新在基础表中? A. 一个叶子行发生更新 B. 索引变得无效在更新后 C. 叶子块包含行被更新标记为无效 D. 叶子块中的一行的索引键值被逻辑删除且新的叶子行被插入 答案 :D 139

140 更新列会导致对其上的索引逻辑删除和插入 PCTFREE 设置对索引没有影响, 但创建时除外 即使索引块的空间少于 PCTFREE 指定的空间, 也可以向索引块添加新条目 131: You are managing an Oracle Database 11g database running in ARCHIVELOG mode. The Flash Recovery Area is specified as the destination for the archived redo log files. You notice this warning in the alert log file: ORA19815: WARNING: db_recovery_file_dest_size of bytes is % used, and has 0 remaining bytes available. What would you do to reclaim the used space in the Flash Recovery Area? (Choose two.) A. Back up the Flash Recovery Area. B. Decrease the retention time for the database backup and flashback log files. C. Manually delete all the archived log files from the Flash Recovery Area by using operating system (OS) commands. D. Manually delete all the expired backup sets from the Flash Recovery Area by using operating system (OS) commands. 131: 你正在管理一个 Oracle Database 11g 数据库处于 ARCHIVELOG 模式 Flash Recovery Area 被指定为归档日志文件的目的地 你注意到下面的警告在 alert 日志中 : ORA19815: WARNING: db_recovery_file_dest_size of bytes is % used, and has 0 remaining bytes available. 你将如何回收 Flash Recovery Area 的空间? A. 备份 Flash Recovery Area B. 减少数据库备份和闪回日志的保留时间 C. 从 FRA 手动删除所有的归档日志通过使用操作系统命令 D. 从 FRA 手动删除所有失效的备份集通过操作系统命令 答案 :AB fra 中的文件时 oracle 自动管理的, 手动删除文件后,oracle 并不会识别, 因此不会释放空间, 所以 CD 是错误的, 如 果想手动删除, 那么需要在操作系统上执行 crosscheck 或者将 expired 的备份删除 140

141 132: Which tablespaces are mandatory in an Oracle database for it to be operational? (Choose all thatapply.) A. Undo tablespace B. USERS tablespace C. SYSAUX tablespace D. SYSTEM tablespace E. Temporary tablespace 132: 哪些表空间是 Oracle 数据库强制进行操作的? A. Undo tablespace B. USERS tablespace C. SYSAUX tablespace D. SYSTEM tablespace E. Temporary tablespace 答案 :CD SYSTEM 和 SYSAUX 表空间是在创建数据库时创建的必需存在的表空间 这些表空间必须联机 SYSTEM 表空间用于核心功能 ( 例如数据字典表 ) 辅助的 SYSAUX 表空间用于附加的数据库组件 ( 如 Oracle Enterprise Manager Repository) 不建议使用 SYSTEM 和 SYSAUX 表空间来存储应用程序的数据 133: View the Exhibit and examine the setting for a table. 141

142 Which statement is true about the PCTFREE setting for the table? A. It sets the minimum percentage of a data block to be reserved to contain chained rows from other blocks. B. It sets the minimum percentage of a data block to be reserved as free space before the server prevents inserts into the block. C. It sets the minimum percentage of a data block to be reserved to contain the bitmap used to maintain the free block information. D. It sets the minimum percentage of a block that can be used for row data plus overhead before new rows are added to the block. 133: 查看下表并检查表的设置 哪些语句是正确的关于表的 PCTFREE 设置? A. 它设置数据块最小的百分比保留从其它数据块包含的行链接 B. 它设置数据块最小的百分比保留为自由空间阻止插入数据块 C. 它设置数据块最小的百分比保留 bitmap 用来维护空闲块的信息 D. 它设置数据块最小的百分比可以用于行数据加新数据添加到块的开销 142

143 答案 :B PCTFREE 指的是为一个块保留的空间百分比, 也就是什么情况下可以 insert, 保留它的目的其实是为了给 update 保留空间, 防止发生行迁移 A: 错误, 不是为了行链接 B: 正确 C: 错误, 不是为了位图 D: 错误参考官方文档 : 134: You executed the following commands in an RMAN session for your database instance that has failures: RMAN> LIST FAILURE; After some time, you executed the following command in the same session: RMAN> ADVISE FAILURE; But there are new failures recorded in the Automatic Diagnostic Repository (ADR) after the execution of the last LIST FAILURE command. Which statement is true for the above ADVISE FAILURE command in this scenario? A. It produces a warning for new failures before advising for CRITICAL and HIGH failures. B. It ignores new failures and considers the failures listed in the last LIST FAILURE command only. C. It produces advice only for new failures and the failures listed in the last LIST FAILURE command are ignored. D. It produces an error with recommendation to run the LIST FAILURE command before the ADVISE FAILURE command. 134: 你执行下面的命令在 RMAN 会话中因为你的数据库实例发生了错误 : RMAN> LIST FAILURE; 143

144 过了一会, 你执行下面的命令在同一个会话 : RMAN> ADVISE FAILURE; 但是有新的故障记录在自动诊断知识库 (ADR), 在你执行 LIST FAILURE 命令之后 哪些语句是正确的关于 ADVISE FAILURE 命令在这个场景中? A. 它会产生一个新故障的警告在建议 CRITICAL 和 HIGH 故障之前 B. 它忽略新的故障, 仅认为故障全部列在之前的 LIST FAILURE 命令下面 C. 它只产生新故障的建议, 之前的 LIST FAILURE 列出的故障被忽略 D. 它产生一个错误, 建议运行 LIST FAILURE 命令在 ADVISE FAILURE 命令之前 答案 :A 参考官方文档 : 135: View the Exhibit and examine the initialization parameter settings. Which three initialization parameters are to be set manually as they are not automatically tuned? (Choose three.) 144

145 A. LOG_BUFFER B. SORT_AREA_SIZE C. JAVA_POOL_SIZE D. STREAMS_POOL_SIZE E. DB_16K_CACHE_SIZE F. DB_KEEP_CACHE_SIZE 135: 查看下图并检查初始化参数设置 哪三个初始化参数设置手动, 因为他们不会自动调整?( 选择三个 ) A. LOG_BUFFER B. SORT_AREA_SIZE C. JAVA_POOL_SIZE D. STREAMS_POOL_SIZE E. DB_16K_CACHE_SIZE F. DB_KEEP_CACHE_SIZE 答案 :AEF 从下我们可以知道哪些组件是可以自动调整的 SQL> select * from v$sgainfo 2 ; NAME BYTES RES Fixed SGA Size Redo Buffers Buffer Cache Size Shared Pool Size Large Pool Size Java Pool Size Streams Pool Size Shared IO Pool Size Granule Size Maximum SGA Size Startup overhead in Shared Pool No No Yes Yes Yes Yes 0 Yes 0 Yes No No No Free SGA Memory Available

146 136: You notice that the performance of the database has degraded because of frequent checkpoints. Which two actions resolve the issue? (Choose two.) A. Disable automatic checkpoint tuning B. Check the size of the redo log file size and increase the size if it is small C. Set the FAST_START_MTTR_TARGET parameter as per the advice given by the MTTR Advisor D. Decrease the number of redo log members if there are more than one redo log members available in each redo log group 136: 你注意到数据库性能下降因为频繁的检查点 哪两个动作解决这个问题?( 选择两个 ) A. 禁用自动检查点调优 B. 检查 redo 日志文件大小并增加 redo 日志大小如果它比较小的话 C. 配置 FAST_START_MTTR_TARGET 参数根据 MTTR Advisor 给出的建议 D. 减少 redo 日志成员的数量如果这里有超过一个 redo 日志成员在每个 redo 日志组中 答案 :BC 如果重做日志文件的 size 太小, 就会频繁切换日志, 即会频繁发生检查点, 故可以增大重做日志文件的 size 而 FAST_START_MTTR_TARGET 如果设置的太小, 根据要控制数据库对单个实例执行崩溃恢复所花费的时间量, 则必须频繁发生检查点, 来确保内存中已修改的数据块能够定期写入到磁盘, 故可以使用 MTTR Advisor 来设置推荐的值 137: Identify the memory component from which memory may be allocated for: 1,Session memory for the shared server 2,Buffers for I/O slaves 3,Oracle Database Recovery Manager (RMAN) backup and restore operations A. Large Pool B. Redo Log Buffer C. Database Buffer Cache D. Program Global Area (PGA) 137: 识别内存组件的内存可以分配给 : 1, 共享服务器的会话内存 2, I/O 总线上的从设备缓冲 3, RMAN 备份和还原操作 146

147 A. Large Pool B. Redo Log Buffer C. Database Buffer Cache D. Program Global Area (PGA) 答案 :A Large Pool: 主要是提高效率, 在大规模的 I/O 及备份和恢复操作时可能使用该区, 可以通过设置 large_pool_size 来 进行设置, 是一个动态参数 参考官方文档 : 138: You executed the following command to create a tablespace called SALES_DATA: SQL> CREATE TABLESPACE sales_data DATAFILE SIZE 100M SEGMENT SPACE MANAGEMENT AUTO; Which two statements are true about the SALES_DATA tablespace? (Choose two) A. The database automatically determines the extent-sizing policy for the tablespace. B. The segments are automatically shrunk when the contents are removed from them. C. The allocation of extents within the tablespace is managed through the dictionary tables. D. The space utilization description of the data blocks in segments is recorded in bitmap blocks. E. The space utilization description of the data blocks in segments is managed through free lists. 138: 你执行下面的命令去创建一个表空间名为 SALES_DATA SQL> CREATE TABLESPACE sales_data DATAFILE SIZE 100M SEGMENT SPACE MANAGEMENT AUTO; 哪两句关于 SALES_DATA 表空间的描述是正确的?( 选择两个 ) A. 数据库的自动管理决定表空间的 extent-size 策略 B. 段会自动缩小当内容被移除时 C. 表空间分配的区是通过字典表管理的 147

148 D. 段中数据块的空间使用率记录在位图块中 E. 段中数据块的空间使用率通过自由链管理 答案 :AD SEGMENT SPACE MANAGEMENT AUTO-- 说明启用了 assm A: 正确,assm B: 错误, 这个应该属于表压缩的功能 C: 错误, 这个说的是数据字典管理的表空间 D: 正确, 参考 145 题, 这里启用了 assm, 因此使用的是位图 E: 错误 139: You want to check the details of few errors that users have reported. You search for the alert log file and execute few commands to find the location of the alert log file.view the Exhibit and check the commands executed. What is the location of the alert_orcl.log file? A. ORACLE_HOME/dbs B. ORACEL_HOME/rdbms C. /u01/app/oracle/admin/orcl/adump 148

149 D. /u01/app/oracle/flash_recovery_area E. ORACLE_BASE/diag/rdbms/orcl/alert F. ORACLE_BASE/diag/rdbms/orcl/orcl/trace 139: 你想检查一些用户报告的错误的详细 你查找 alert 日志文件并执行一些命令寻找 alert 日志文件的位置 查看下图并检查执行的命令 Alert_orcl.log 文件位置在哪儿? A. ORACLE_HOME/dbs B. ORACEL_HOME/rdbms C. /u01/app/oracle/admin/orcl/adump D. /u01/app/oracle/flash_recovery_area E. ORACLE_BASE/diag/rdbms/orcl/alert F. ORACLE_BASE/diag/rdbms/orcl/orcl/trace 答案 :F 要通过 SQL*Plus 确定预警日志的位置, 请执行以下操作 : 使用 SQL*Plus( 或其它查询工具, 如 SQL Developer) 连接到数据库 查询 V$DIAG_INFO 视图 要查看不带 XML 标记的纯文本预警日志, 请执行以下操作 : 在 V$DIAG_INFO 查询结果中, 记下对应于 Diag Trace 条目的路径 将目录更改至该路径 使用文本编辑器打开 alert_sid.log 文件 要查看 XML 格式的预警日志, 请执行以下操作 : 在 V$DIAG_INFO 查询结果中, 记下对应于 Diag Alert 条目的路径 将目录更改至该路径 使用文本编辑器打开 log.xml 文件 140: You want to enable archiving on your database. Presently, the database is running in NOARCHIVELOG mode. Given below are the steps to accomplish the task in random order: 1. Shut down the instance. 2. Execute the ALTER DATABASE ARCHIVELOG command. 3. Start up the instance and mount the database. 149

150 4. Set the DB_RECOVERY_FILE_DEST initialization parameter to $ORACLE_HOME/dest_1. 5. Open the database. Which is the correct sequence of steps for accomplishing the task? A. 4, 1, 3, 2, 5 B. 1, 3, 4, 5, 2 C. 1, 3, 2, 5; 4 not required D. 4, 1, 5, 2; 3 not required E. 1, 3, 4, 5; 2 not required 140: 你想启用归档在你的数据库 目前, 数据库运行在非归档模式 下面是完成这项任务的步骤以随机的顺序 : 1. 关闭实例 2. 执行 ALTER DATABASE ARCHIVELOG 命令 3. 启用实例并挂载数据库 4. 配置 DB_RECOVERY_FILE_DEST 参数为 $ORACLE_HOME/dest_1 5. 打开数据库 哪个是正确的步骤顺序完成这个任务? A. 4, 1, 3, 2, 5 B. 1, 3, 4, 5, 2 C. 1, 3, 2, 5; 4 not required D. 4, 1, 5, 2; 3 not required E. 1, 3, 4, 5; 2 not required 答案 :C Oracle 11g 中系统默认的情况是以 DB_RECOVERY_FILE_DEST 定义的目录来存放归档日志 DB_RECOVERY_FILE_DEST 参数是默认的 flash recovery area 的路径, 里面存放有归档日志 闪回日志以及 rman 的备份文件等文件 LOG_ARCHIVE_DEST: 指定归档文件存放的路径, 该路径只能是本地磁盘, 默认为 LOG_ARCHIVE_DEST_n: 默认值为 Oracle 最多支持把日志文件归档到 10 个地方,n 从 1 到 10 归档地址可以为本地磁盘, 或者网络设备 141: 150

151 See the Exhibit. Which statements are true regarding the USERS tablespace? (Choose all that apply.) A. A bitmap is used to record free extents B. Free extents information is managed within the tablespace C. Free extents information is managed in the SYSAUX tablespace D. The data dictionary tables are updated when extents are allocated or deallocated 141: 查看下表, 哪些语句是正确的关于 USERS 表空间?( 选择所有适用的答案 ) A. 一个 bitmap 用于记录空的 extent B. 空的 extent 信息由表空间管理 C. 空的 extent 信息由 SYSAUX 表空间管理 D. 数据字典表会更新当 extent 被分配或者收回 答案 :AB 分区管理方式有 2 种 : LOCAL: 本地管理, 默认选项, 在数据文件头用位图方式管理文件内分区使用情况. DICTIONARY: 字典管理, 用数据字典表记录文件分区使用情况, 技术落后, 不推荐使用. 151

152 142: In your database instance, the STATISTICS_LEVEL initialization parameter is set to BASIC. What is the impact of this setting? A. Optimizer statistics are collected automatically. B. Only timed operating system (OS) statistics and plan execution statistics are collected. C. The snapshots for the Automatic Workload Repository (AWR) are not generated automatically. D. Snapshots cannot be collected manually by using the DBMS_WORKLOAD_REPOSITORY package. E. The Oracle server dynamically generates the necessary statistics on tables as part of query optimization. 142: 在你的数据库实例,STATISTIC_LEVEL 初始参数设置为 BASIC 这个设置的影响是什么? A. 优化器统计信息自动收集 B. 只有定时的操作系统 (OS) 统计信息和执行计划统计信息被收集 C. 自动负载知识库 (AWR) 不会自动产生快照 D. 快照不能手动通过 DBMS_WORKLOAD_REPOSITORY 包收集 E. Oracle 服务器动态的产生必要的表的统计信息, 做为查询优化的一部分 答案 :C STATISTICS_LEVEL 初始化参数可控制对各种统计信息和各种指导的捕获, 其中包括自动维护任务 自动维护任务包括搜集优化程序统计信息 STATISTICS_LEVEL 参数可设置为以下级别 : BASIC:AWR 统计信息和度量的计算被关闭 自动优化程序统计信息任务被禁用, 所有指导和服务器生成的预警也被禁用 TYPICAL: 收集数据库自我管理所需的主要统计信息 这些统计信息表示监视 OracleDB 行为通常需要的信息 这包括自动搜集统计信息, 以减少由于统计信息过时或无效而导致不正确执行 SQL 语句的可能性 ALL: 捕获所有可能的统计信息 此捕获级别增加了计时操作系统统计信息和计划执行统计信息 多数情况下并不需要这些统计信息, 为了获得最佳性能, 不应启用这些统计信息 ; 有时执行特定的诊断测试时需要这些统计信息 Oracle 建议将 STATISTICS_LEVEL 初始化参数设置为默认值 TYPICAL 如果将该参数的值设置为 BASIC, 则会禁用自动搜集优化程序统计信息功能 参考官方文档 : 152

153 143: You have recently collected statistics on certain objects of a schema in your database. But you observe suboptimal execution plans for the queries on these objects after two days of statistics collection. The optimizer statistics retention period is set to its default value. Which action would help to use the previous set of statistics on the objects? A. Restore statistics from statistics history. B. Reduce the optimizer statistics retention period by 2 days. C. Set the OPTIMIZER_PENDING_STATISTICS parameter to TRUE. D. Reduce the Automatic Workload Repository (AWR) retention period by 2 days. 143: 你最近在你的数据库中收集某个用户的对象 但你观察这些对象的查询执行计划不是最优在收集了两天的统计信息之后 优化器统计信息保留时间设置为默认 哪些行为能帮助你使用之前统计信息的设置在对象上? A. 从统计信息历史中恢复统计信息 B. 减少优化器统计信息保留时间为 2 天 C. 设置 OPTIMIZER_PENDING_STATISTICS 参数为 TRUE D. 减少自动负载知识库 (AWR) 保留时间为 2 天 答案 :A A, 正确, 可以从统计信息的历史信息恢复统计信息 如下面这个储存过程,RESTORE_TABLE_STATS Procedure, 可以帮助你恢复原来的统计信息 参考官方文档 : 144: Which three statements regarding the server parameter file (SPFILE) are true? (Choose three.) A. An SPFILE is a binary file B. An SPFILE cannot reside on a client C. An SPFILE cannot contain static parameters D. An SPFILE can store changes persistently across instance restarts E. An SPFILE can be read by the database server, but it is not written to by the server F. An SPFILE must be created manually, before creating a database, even if you use the Database Configuration Assistant (DBCA) to create the database 144: 153

154 哪三句关于参数文件 (SPFILE) 是正确的?( 选择三个 ) A. SPFIEL 是二进制文件 B. SPFILE 不能保留在客户端 C. SPFILE 不能包含静态参数 D. SPFILE 可以存储实例重启间的持续变化 E. SPFILE 可以被数据库服务器读, 但是不能被写 F. SPFILE 可以手工建, 在创建数据库之前, 如果你使用 DBCA 去创建数据库的话答案 :ABD spfile 是一个二进制文件, 是属于服务器端, 不是客户端 spfile 可以包含有静态参数, 也可以存储实例重新启动的参数的长久的变化,spfile 可以在服务器上读, 也可以通过 alter system 或者 alter session 来写入服务器 spfile 在 DBCA 创建数据库时创建或者使用 create spfile 来创建 145: Your test database is configured to run in NOARCHIVELOG mode. One of the data files in the USERS tablespace is lost due to a media failure. You notice that all the online redo logs have been overwritten since the last backup. What would you do to recover the data file? A. Take the USERS tablespace offline and re-create the lost data file B. Shutdown the instance, restore the data file from the last consistent backup and restart the database instance C. Shutdown the instance, restores all the database files from the last consistent backup and restart the database instance D. Take the USERS tablespace offline, restore all the data files of the USERS tablespace from the last consistent backup and make the tablespace online 145: 你的测试数据库处于 NOARCHIVELOG 模式 USERS 表空间的一个数据文件丢失由于介质故障 你注意到所有的在线 redo 日志都被重写了自从上次备份 你将如何恢复数据文件? A. 离线 USRES 表空间然后重建丢失的数据文件 B. 关闭数据库实例, 恢复数据文件从上次一致性备份中并重启数据库实例 C. 关闭数据库实例, 恢复所有的数据文件从上次一致性备份中并重启数据库实例 D. 离线 USERS 表空间, 恢复所有 USERS 表空间的数据文件从上次一致性备份中, 并 online 表空间 答案 :C 在非归档模式下, 只能使用冷备份来备份所有的文件, 当数据文件丢失, 重做日志被覆盖 则只能恢复到最近一次的一致性备份 不能用重做日志恢复到指定的时间点 数据库处于 NOARCHIVELOG 模式 ( 默认模式 ) 时, 只能恢复到最后一次备份时的状态 在该备份之后执行的所有事务处理都会丢失 154

155 146: Examine the command: SQL>DBMS_STATS.SET_TABLE_PREFS('SH','CUSTOMERS','PUBLISH','false'); Which statement describes the effect of the above command? A. Automatic statistics collection is stopped for the CUSTOMERS table B. Statistics for the CUSTOMERS table are locked and cannot be overwritten C. Existing statistics for the CUSTOMERS table become unusable for the query optimizer D. Subsequently, statistics gathered on the CUSTOMERS table are stored as pending statistics 146: 执行下面命令 : SQL>DBMS_STATS.SET_TABLE_PREFS('SH','CUSTOMERS','PUBLISH','false'); 哪些语句描述了上述命令的影响? A. CUSTOMERS 表的自动统计信息收集停止 B. CUSTOMERS 表的统计信息锁定且不能被覆盖 C. CUSTOMERS 已存在的统计信息变得无用对查询优化器来说 D. 随后,CUSTOMERS 表上的统计信息收集存储为等待信息统计 答案 :D 这里设置 PUBLISH, 意思是决定是否 job 收集完统计信息就马上发布,11.1 以前是马上发布到字典表, 现在用户可以收集后不立即发布, 它容许 dba 在发布前进行测试 参考官方文档 : 155

156 147: The database instance has the following parameter setting: OS_AUTHENT_PREFIX = OPS$ OS_ROLES = FALSE REMOTE_OS_AUTHENT = FALSE REMOTE_OS_ROLES = FALSE TIMED_OS_STATISTICS = 0 You have a local operating system user SKD. You create a database user OPS$SKD, and then assign external authentication. The user OPS$SKD has the CREATE SESSION privilege. What would you achieve by the above process? A. The database user OPS$SKD will be able to administer the database. B. The authentication detail for the database user OPS$SKD is recorded in the password file. C. The local operating system user SKD will be able to access the database instance without specifying the username and password. D. The database user OPS$SKD has to login with the password of the local operating system user SKD to access the database instance. 147: 数据库实例有下面的参数设置 : OS_AUTHENT_PREFIX = OPS$ OS_ROLES = FALSE REMOTE_OS_AUTHENT = FALSE REMOTE_OS_ROLES = FALSE TIMED_OS_STATISTICS = 0 你有一个本地操作系统用户 SKD 你创建一个数据库用户 OPS$$SKD, 并分配外部身份认证 用户 OPS$$SKD 拥有 CREATE SESSION 权限 你将能获得什么通过上面的过程? A. 数据库用户 OPS$$SKD 将能管理数据库 B. 用户 OPS$$SKD 的身份证明的详细讲记录在密码文件中 C. 本地操作系统用户 SKD 将能够访问数据库实例不指定用户名和密码 D. 数据库用户 OPS$$SKD 登录使用本地操作系统用户 SKD 的密码访问数据库实例 答案 :C OS_AUTHENT_PREFIX: 用户前缀, 比如你的前缀是 OPS$, 你的系统用户为 oracle, 那么你的数据库账号就应该是 OPS$ORACLE 156

157 OS_ROLES:TRUE 表示由操作系统管理所有用户的角色分配,FALSE 表示 Oracle 自身验证和管理角色 REMOTE_OS_AUTHENT: 指定是否允许采用外部验证的方式登录数据库 默认为 FLASE REMOTE_OS_ROLES: 指定是否允许远程客户端操作系统的角色 默认为 FLASE TIMED_OS_STATISTICS: 指定 Oracle 收集操作系统统计信息的时间间隔 A 错,OPS$$SKD 用户只有 CREATE SESSION 权限 B 错, 外部操作系统验证不需要密码 D 错, 不需要使用 SKD 用户的密码 148: Your database instance is running with full workload after database creation. You have decided to use a fixedsize undo tablespace. You want to use the undo Advisor to estimate the capacity of the undo tablespace. Which two factors must you consider before using the Undo Advisor to estimate the capacity of the undo tablespace? (Choose two.) A. The retention period to support flashback B. The expected length of the longest-running query C. The number of undo tablespaces in the database D. The size of the Flash Recovery Area for the database instance 148: 你的数据库实例在数据库创建之后满负载运行 你觉得使用一个固定大小的 undo 表空间 你想使用 undo Advisor 去估算 undo 表空间的容量 哪两个因素必须考虑在你使用 Undo Advisor 估算 undo 表空间容量之前?( 选择两个 ) A. 支持闪回的保留时间 B. 预期的最长查询的运行时间 C. 数据库 undo 表空间的数量 D. 数据库实例的快速闪回区的大小 答案 :AB 使用 Undo Advisor, 你首先要考虑两个值 : 预期的最长运行查询的时间你需要闪回操作的最长间隔时间 参考官方文档 : 157

158 149: You have an ORDERS table with the following structure: Name Null? Type OID ODATE CCODE OAMT NUMBER(6) DATE NUMBER(6) NUMBER(10,2) The table has data in the ODATE column for all rows. Many orders are placed in a single day. You need to ensure that the ODATE column must contain data for every order in future. Which method would serve the purpose? A. Modify the column using the ALTER TABLE... MODIFY command. B. Add a UNIQUE constraint to the column using the ALTER TABLE... ADD CONSTRAINT command. C. Add a NOT NULL constraint to the column using the ALTER TABLE... ADD CONSTRAINT command. D. Add a PRIMARY KEY constraint to the column using the ALTER TABLE... ADD CONSTRAINT command. 149: 你有一个 ORDERS 表有下面的结构 : Name Null? Type OID ODATE CCODE OAMT NUMBER(6) DATE NUMBER(6) NUMBER(10,2) 表中 ODATE 列每行都有数据 许多订单发生在一天 你需要确保 ODATE 列必须包含未来每个订单的数据 哪种方法能达到目的? A. 修改列使用 ALTER TABLE MODIFY 命令 B. 添加一个 UNIQUE 约束在列上使用 ALTER TABLE ADD CONSTRAINT 命令 C. 添加一个 NOT NULL 约束在列上使用 ALTER TABLE ADD CONSTRAINT 命令 D. 添加一个主键约束在列上使用 ALTER TABLE ADD CONSTRAINT 命令答案 :A 为保证 ODATE 列必有数据, 可以添加一个 NOT NULL 约束, 添加非空约束使用 alter table modify, 其它的约束使用 alter table add constraint 参考官方文档 : 158

159 150: Identify two situations in which you can use Data Recovery Advisor for recovery. (Choose two.) A. The database files are corrupted when the database is open B. The user has dropped an important table that needs to be recovered C. The archived redo log files are missing for which the backup is not available D. The database is not opening because the required database files are missing 150: 鉴别哪两种情况你可以使用 Data Recovery Advisor 来恢复 ( 选择两个 ) A. 数据库文件损坏当数据库打开的时候 B. 用户删除一个重要的表需要恢复 C. 归档日志文件丢失且备份不可用 D. 数据库打不开因为需要的数据库文件丢失 答案 :AD Data Recovery Advisor 是 oracle 11g 推出且归属于 rman 的一种新特性, 它是 Oracle 11g Database 所推出的一种故障解决工具, 具有自动化得故障检测 故障定位 提出最优解决方案 按照用户的需求执行解决方案等功能 Data Recovery Advisor 可处理以下两种情况 : 一种是因必需的数据库文件缺失 不一致或损坏而无法启动数据库, 另一种是在运行时发现文件损坏 参考官方文档 : 159

160 151: You have two tables with referential integrity enforced between them. You need to insert data to the child table first because it is going to be a long transaction and data for the parent table will be available in a later stage, which can be inserted as part of the same transaction. View the Exhibit to examine the commands used to create tables. Which action would you take to delay the referential integrity checking until the end of the transaction? A. Set the constraint to deferred before starting the transaction B. Alter the constraint to NOVALIDATE state before starting the transaction C. Enable the resumable mode for the session before starting the transaction D. Set the COMMIT_WAIT parameter to FORCE_WAIT for the session before starting the transaction 151: 你有两个表, 在他们之间有参照完整性约束 你首先要插入数据到子表因为它是一个长事务并且父表的数据将是可用的 在接下来的阶段, 可以插入作为相同事务的一部分 查看下表检查创建表使用的命令 哪些行动你将采取推迟参照完整性约束检查直到事务结束? A. 在开始事务之前推迟设置约束 B. 在开始事务之前修改约束为 NOVALIDATE 状态 C. 在开始事务之前启用会话的 resumable 模式 D. 在开始事务之前设置会话的 COMMIT_WAIT 参数为 FORCE_WAIT 答案 :A 你有两个表, 它们之间有参照完整性的约束 在同一个事务中, 你需要先在子表中插入数据, 然后再使父表变为可用 从图上可知,orders 表是子表, 它的 item_code 列参照 items 表的 iitem_code, 但是题中是先在子表中插入数据, 然后再让父表变为可用, 在有外键约束的情况下, 这样是不能插入的, 所以, 可以在执行事务前, 设置约束延迟生效, 即在事务提交时生效, 即可 160

161 152: You have statistics collected for some selected tables. Your requirement is that the statistics for the tables and all dependent indexes must not be overwritten by further statistics collection until a certain point of time. How would you achieve this? A. Lock statistics for the tables. B. Change STALE_PERCENT to zero for the tables. C. Set the TIMED_STATISTICS parameter to TRUE. D. Set the STATISTICS_LEVEL parameter to BASIC. E. Set the OPTIMIZER_USE_PENDING parameter statistics to TRUE. 152: 你已经选择一些表收集统计信息 你的需求是这些表的统计信息和所有依赖的索引不能被未来收集的统计信息覆盖知道 一个确定的时间点 你将如何达到这个目的? A. 锁定表的统计信息 B. 改变表的 STALE_PERCENT 为 0 C. 设置 TIMED_STATISTICS 参数为 TRUE D. 设置 STATISTICS_LEVEL 参数为 BASIC E. 设置 OPTIMIZER_USE_PENDING 参数为 TRUE 答案 :A 如果你不想统计信息改变, 可以锁定统计信息 参考官方文档 : table: 153: View the Exhibit and examine the parameters. User A executes the following command to update the TRANS SQL> UPDATE B.trans SET tr_amt=tr_amt+500 WHERE c_code='c005'; Before user A issues a COMMIT or ROLLBACK command, user B executes the following command on the TRANS table: SQL> ALTER TABLE trans MODIFY (tr_type VARCHAR2(3)); 161

162 What would happen in this scenario? A. The ALTER TABLE command modifies the column successfully B. The DDL operation gets higher priority and transaction for user A is rolled back C. The ALETER TABLE command waits indefinitely until user A ends the transaction D. The ALTER TABLE command fails after waiting for 60 seconds due to the resource being busy 153: 查看下图并检查参数 用户 A 执行下面的命令更新 TRANS 表 : SQL> UPDATE B.trans SET tr_amt=tr_amt+500 WHERE c_code='c005'; 在 A 执行 COMMIT 或 ROLLBACK 命令之前, 用户 B 执行下面的命令在 TRANS 表 : SQL> ALTER TABLE trans MODIFY (tr_type VARCHAR2(3)); 这种场景下会发生什么? A. ALTER TABLE 命令修改列成功 B. DDL 操作有较高的优先级, 用户 A 的事务回滚 C. ALTER TABLE 命令无限期等待知道用户结束事务 D. ALTER TABLE 命令失败在等待 60s 之后由于资源繁忙 答案 :D DDL_LOCK_TIMEOUT: 指定 ddl 语句需要等待一个 dml 锁的时间, 默认为 0 表示不等待, 最大的值为 1,000,000 秒, 表示一直等待 DISTRIBUTED_LOCK_TIMEOUT: 指定分布式事务需要等待锁定资源的时间, 单位是秒 DML_LOCKS: 指定了 dml 锁的最大数量, 这个值应该等于所有用户在表上锁的总数当不断有业务在执行时, 执行 ddl 会报错 在没有 ddl_lock_timeout 参数时, 只能通过 loop, 不停的来执行 ddl 设置 ddl_lock_timeout 后, 可以让 ddl 等待一段时间, 如果在这个期间内 dml 已提交 则 ddl 将执行成功, 否则超时报错 参考官方文档 : 162

163 154: Which two files in the database can be configured for automatic backups by using the autobackup feature in Recovery Manager (RMAN)? (Choose two.) A. Data Files B. Control Files C. Parameter Files D. Online Redo Log Files E. Server Parameter File 154: 哪两个数据库中的文件可以配置为自动备份, 通过 RMAN 的自动备份新特性?( 选择两个 ) A. 数据文件 B. 控制文件 C. 参数文件 D. 在线日志文件 E. SPFILE 答案 :BE 可以在 RMAN 中设置 CONFIGURE CONTROLFILE AUTOBACKUP ON 开启自动备份, 自动备份会备份控制文件和 SPFILE 155: Which two statements are true regarding the usage of the SQL*LOADER utility? (Choose two.) A. You can load data into multiple tables during the same load session B. You can load data from multiple files to a table during the same load session C. You cannot perform selective data loading based on the values available in the records D. You can use an export file generated by the EXPDP utility as an input data file to load the data E. You can load data only if the input file is available on the disk and tape but not a named pipes 155: 哪两句是正确的关于 SQL*LOADER 工具的作用?( 选择两个 ) A. 你可以加载数据到多个表中在同一个加载会话期间 B. 你可以加载数据从多个文件中到一个表在同一个加载会话期间 C. 你不能执行选择数据加载基于记录中的可用值 D. 你可以使用一个 EXPDP 工具导出的文件作为输入数据文件加载数据 E. 你可以加载数据只有输入文件是可用的在磁盘或者磁带上而不是一个命名的管道 163

164 答案 :AB 可以指定一个或多个 into table 块, 所以 A 正确可以指定一个或多个 infile 子句, 所以 B 正确参考官方文档 : 156: Note the following structures in your database server: 1. Extents 2. OS Blocks 3. Tablespace 4. Segments 5. Oracle Data Block Which option has the correct arrangement of these structures from the smallest to the largest? A. 2, 5, 1, 4, 3 B. 1, 2, 3, 4, 5 C. 5, 2, 1, 3, 4 D. 2, 1, 5, 4, 3 156: 注意下面的结构在你的数据库服务器中 : 1. 区 2. 操作系统块 3. 表空间 4. 段 5. Oracle 数据块哪个选项是正确的顺序关于这些结构从最小到最大? A. 2, 5, 1, 4, 3 B. 1, 2, 3, 4, 5 C. 5, 2, 1, 3, 4 D. 2, 1, 5, 4, 3 答案 :A 参考下图 : 164

165 参考官方文档 : 157: Which naming method uses the tnsnames.ora file to store the connect descriptor used by the client while connecting to the database instance from a remote machine? A. Host naming method B. Local naming method C. External naming method D. Directory naming method 157: 哪种命名方法使用 tnsnames.ora 文件存储数据库实例从远程机器连接使用的连接描述? A. Host naming method B. Local naming method C. External naming method D. Directory naming method 答案 :B 参考官方文档 : 165

166 158: Which three operations require undo data? (Choose three.) A. Committing a transaction B. Flashing back a transaction C. Recovering a failed transaction D. Running a read-consistent query E. Changing a tablespace status from READ ONLY to READ WRITE 158: 哪三种操作需要 undo 数据?( 选择三个 ) A. 提交一个事务 B. 闪回一个事务 C. 恢复一个失败的事务 D. 运行一个读一致性查询 E. 改变表空间状态从 READ ONLY 到 READ WRITE 答案 :BCD Undo data 是 : 原始的 修改之前的数据副本 是针对更改数据的每个事务处理所捕获的 至少保留到事务处理结束 用于支持 : 回退操作 读取一致性查询 闪回查询 闪回事务处理和闪回表 从失败的事务处理中进行恢复参考官方文档 : 159: Which two activities are NOT supported by the Data Recovery Advisor (DRA)? (Choose two.) A. Recover from failures in the RAC environment. B. Diagnose and repair a data file corruption online. C. Diagnose and repair a data file corruption offline. D. Diagnose and repair failures on a standby database. 166

167 159: 哪两种活动不支持数据恢复顾问 (DRA)?( 选择两个 ) A. RAC 环境中恢复故障 B. 在线诊断和修复一个数据文件损坏 C. 离线诊断和修复一个数据文件损坏 D. 在备库诊断和修复故障 答案 :AD Data Recovery Advisor 支持的数据库配置 : 单实例 非 RAC 支持故障转移到备用数据库, 但不支持分析和修复备用数据库参考官方文档 : 160: Which two statements are true regarding the SGA_TARGET initialization parameter? (Choose two.) A. It can be increased up to the value of the SGA_MAX_SIZE parameter. B. Increasing the value of the SGA_TARGET parameter distributes the increased memory among all the auto tuned components. C. Reducing the value of the SGA_TARGET parameter deallocates memory from both autotuned and manually sized components. D. Increasing the value of SGA_TARGET up to the value of SGA_MAX_SIZE disables the automatic shared memory management feature. 160: 哪两句关于 SGA_TARGET 参数的描述是正确的?( 选择两个 ) A. 可以增加取决于 SGA_MAX_SIZE 参数 B. 增加 SGA_TARGET 参数值会分配增加的内存值在所有自动调节的组件之间 C. 减少 SGA_TARGET 参数值会收回分配的内存从自动调节和手动调节的组件 D. 禁用自动共享内存管理特性, 增加 SGA_TARGET 参数值取决于 SGA_MAX_SIZE 答案 :AB 除了必须手动分配的 db_keep_cache_size db_recycle_cache_size db_nk_cache_size log_buffer 其余组件均可根据 SGA_TARGET 自动调节参考官方文档 : 167

168 161: Which statement is true about the Manageability Monitor (MMON) background process? A. It transfers statistics from memory to disk at regular intervals. B. It coordinates the rebalance activity for disk groups when ASM is used. C. It communicates with the Automatic Storage Management (ASM) instance on behalf of the database instance. D. It performs dynamic memory management when Automatic Shared Memory Management is enabled for the database instance. 161: 哪些语句是正确的关于 MMON 后台进程 A. 在规律的间隔内将统计信息从内存转移到磁盘上 B. 在使用 ASM 时, 协调平衡活动的磁盘组 C. 它代表数据库实例和自动存储管理 (ASM) 实例通信 D. 它执行动态的内存管理当数据库实例启动自动共享内存管理时 答案 :A 数据库 ( 默认情况下 ) 每 60 分钟从 SGA 中自动捕获一次统计信息, 然后将其以快照形式存储在 AWR 中 这些快照通过一个名为易管理性监视器 (MMON) 的后台进程存储在磁盘上 默认情况下, 快照会保留八天 可以修改快照时间间隔和保留间隔 162: Which two statements are true regarding transactions in an Oracle database? (Choose two.) A. Multiple transactions can use the same undo segment. B. A transaction is assigned an undo segment when it is started. C. More than one transaction cannot share the same extent in the undo tablespace. D. The transactions use system undo segment to store undo data if all the segments in the undo tablespace are used. 162: 哪两句关于 Oracle 数据库事务的描述是正确的?( 选择两个 ) A. 多个事务可以使用相同的 UNDO 段 B. 当事务开始时会分配一个 UNDO 段 C. 多个事务不能共享一个 extent 在 UNDO 表空间 D. 事务使用系统 UNDO 段存储 UNDO 数据, 如果所有 UNDO 表空间的段都被使用 答案 :AB 168

169 每个事务处理只分配给一个还原段 一个还原段可以同时服务多个事务处理 事务处理开始时就会分配还原段 在事务处理的整个过程中, 更改数据时, 原始 ( 更改之前 ) 值会被复制到还原段 通过选中 V$TRANSACTION 动态性能视图, 可以查看哪些事务处理被分配到哪些还原段 还原段是为了支持事务处理, 由实例自动创建的专用段 像所有段一样, 还原段由区组成, 区又由数据块组成 还原段根据需要可自动增长和收缩, 它充当所分配的事务处理的循环存储缓冲区 事务处理会填充其还原段中的区, 直至完成了事务处理或占用了所有空间为止 如果填充完区之后还需要更多的空间, 事务处理则获取段中下一个区的空间 占用了所有区之后, 事务处理会自动转回到第一个区或请求为还原段分配新区 注 : 并行 DML 和 DDL 操作实际上可导致事务处理使用多个还原段 163: You are using flat files as the data source for one of your data warehousing applications. To optimize the application performance, you plan to move the data from the flat files to clustered tables in an Oracle database. While migrating the data, you want to have minimal impact on the database performance and optimize the data load operation. Which method would you use to load data into the Oracle database? A. Use the external table population. B. Use the Oracle Data Pump export and import utility. C. Use the conventional path data load of the SQL*Loader utility. D. Use the INSERT INTO...SELECT command to load the data. 163: 你正在使用平面文件作为你的一个数据仓库应用的源数据 为了优化应用性能, 你计划移动数据从平面文件到数据库的簇表 当移动数据的时候, 你希望最小的影响数据库性能并优化数据加载的操作 哪种方法适合你加载数据到 Oracle 数据库中? A. 使用外部表 B. 使用 Oracle 数据泵工具 C. 使用传统的数据加载工具 SQL*Loader D. 使用 INSERT INTO SELECT 命令加载数据 答案 :C 这里说的 flat files, 是一种包含没有相对关系结构的记录的文件 这个类型通常用来描述文字处理 其他结构字符或标 记被移除了的文本, 也就是比如文本文件, 或者 csv 文件等, 这种类型的文件如果想导入数据库直接用 SQL*Loader 169

170 164: Given below is a list of scenarios: 1. A user terminates his session abnormally. 2. The connection between the server and the client application terminates because of a network failure. 3. A schema is accidentally dropped. 4. The tablespace is accidentally dropped from the database. 5. The hard disk gets corrupted and the data files in the disk are lost. 6. The database instance abnormally shuts down because of power failure. Which scenarios require DBA intervention to perform recovery? A. 1, 3, and 6 B. 4, 5, and 6 C. 3, 4, and 5 D. 1, 2, and 6 164: 给出下列的场景 : 1. 用户异常终止它的会话 2. 因为网络故障, 服务器和客户端应用程序连接终止 3. 意外的删除 schema 4. 意外的删除表空间 5. 硬盘损坏且在磁盘上的数据文件丢失 6. 数据库实例关闭因为断电故障 哪些场景需要 DBA 执行恢复? A. 1, 3, and 6 B. 4, 5, and 6 C. 3, 4, and 5 D. 1, 2, and 6 答案 :C 通常情况下只有用户误操作和介质故障才需要 DBA 人工干预 1 用户异常终止会话, 属于用户进程失败 2 属于网络故障 3 属于用户误操作 4 也属于用户误操作 5 属于介质故障 6 断电属于实例故障 170

171 165: View the Exhibit1, which shows the options that are selected to create the user SL_REP. View the Exhibit2 and examine the contents of DATABASE_PROPERTIES. 171

172 Which two statements are true regarding this user? (Choose two.) A. The user is authenticated by the operating system. B. The objects created by the user are placed in the USERS tablespace. C. The user does not require quota on the TEMP tablespace to perform sort operations. D. The user is forced to change the password at the first login to the database instance. E. The objects created by the user in future are unlocked to be accessed by all the users in the database by default. 165: 查看表 1, 显示创建用户 SL_REP 查看表 2 并检查 DATABASE_PROPERTIES 的内容 哪两句关于这个用户的描述是正确的? A. 用户身份验证通过操作系统 B. 用户创建的对象存储在 USERS 表空间 C. 用户不需要指定配额在 TEMP 表空间执行排序操作 172

173 D. 用户强制更改密码当第一次登陆数据库实例的时候 E. 用户未来创建的对象默认被锁定访问对所有数据库的用户 答案 :BC 从图 1 可以看出是通过 password 进行身份验证,A 错误从图 1 看没指定默认表空间, 图 2 看出默认表空间为 USERS,B 正确从图 2 看出用户的默认临时表空间为 TEMP, 不能在临时表空间上指定配额,C 正确从图 1 看出 Expire Password now 没有勾选, 即口令不会立即失效,D 错误从图 1 看出用户以后创建对象, 必须要授权, 其它用户才能访问,E 错误 166: Which two statements are true regarding B-tree index? (Choose two.) A. The leaf blocks in the index are doubly linked. B. The leaf node stores a bitmap for each key value. C. The rows with NULL value in key columns also have entries in the index. D. The deletion of a row from the table causes a logical deletion in index leaf block and the space becomes available for the new leaf entry. 166: 哪两个语句是正确的关于 B-tree 索引? A. 叶块的索引是双向链接的 B. 叶子节点为每个键值存储一个位图 C. 键列所在行即便是 NULL 值也有索引记录 D. 从表中删除行导致索引叶子块的逻辑删除且空间变得可用对新的叶条目 答案 :AD A, 在索引的叶块是双向链表 正确 叶块在两个方向都是相互关联的, 这便于按键值升序或降序扫描索引 B, 叶节点为每个键值存储一个位图 错误 是 ROWID C, 错误 当某行包含的所有键列为 NULL 时, 该行没有对应的索引条目 因此, 当 WHERE 子句指定了 NULL 时, 始终会导致全表扫描 D, 正确 删除一行只会导致对索引条目进行逻辑删除 在删除块中的所有条目之前, 已删除行占用的空间不可用于新条目 在删除后, 便可用于新条目 173

174 167: In your production database, data manipulation language (DML) operations are executed on the SALES table. You have noticed some dubious values in the SALES table during the last few days. You are able to track users, actions taken, and the time of the action for this particular period but the changes in data are not tracked. You decide to keep track of both the old data and new data in the table long with the user information. What action would you take to achieve this task? A. Apply fine-grained auditing. B. Implement value-based auditing. C. Impose standard database auditing to audit object privileges. D. Impose standard database auditing to audit SQL statements. 167: 在你的生产库, 数据操纵语言 (DML) 操作执行在 SALES 表 你注意到 SALES 表一些可疑的值在最近几天 你能够跟踪用户, 发生的行为和行为发生的时间在这个特定时间段但是数据的改变没有追踪到 你决定保留旧的和新的数据的追踪结果与用户信息 什么行为能达到这个任务目标? A. 应用细粒度审计 B. 使用基于价值的审计 C. 强加标准的数据库审计去审计对象权限 D. 强加标准的数据库审计去审计 SQL 语句 答案 :B 这道题说是发现了 sales 表存在一些有问题的数据, 监控了一些用户和他们的操作, 但是并没有发现任何与这些数据有关的操作现在你要进行跟踪旧的和新的数据审计一 sql 语句审计 (audit SQL statements) 二 系统权限审计三 对象权限审计 (audit object privileges.) 四 基于值得审计 (value-based auditing) 这里可以通过创建触发器, 来讲 :new 和 :old, 进行保存到另外一张新建的表中, 这样就可以保留新的和旧的值五 细粒度审计 (fine-grained auditing) 174

175 168: You are managing an Oracle Database 11g database. The database is open, and you plan to perform Recovery Manager (RMAN) backups. Which three statements are true about these backups? (Choose three.) A. The backups would be consistent. B. The backups would be inconsistent. C. The backups would be possible only if the database is running in ARCHIVELOG mode. D. The backups would be possible only if the database is running in NOARCHIVELOG mode. E. The backups need to be restored and the database has to be recovered in case of a media failure. 168: 你正在管理一个 Oracle Database 11g 数据库 数据库是打开的, 你计划执行 RMAN 备份 哪三个语句是正确的关于备份?( 选择三个 ) A. 备份会是一致的 B. 备份不会是一致的 C. 只有数据库运行在 ARCHIVELOG 模式才能备份 D. 只有数据库运行在 NOARCHIVELOG 模式才能备份 E. 备份需要被还原且数据库不得不恢复假如发生介质故障 答案 :BCE 因为数据是 open 状态, 所以备份不会是一致的,A 错,B 对 RMAN 在非归档模式下只能冷备, 需要关机,D 错误说的是介质有问题了, 备份必须 restore 然后 recovered, 这里说一下 restore 和 recover 的区别 restore: 从备份位置还原一个或者多个数据库文件 recover: 应用归档和联机重做日志文件, 将整个数据库或单独数据库文件前滚到指定的 scn 这就是归档文件的作用, 当执行备份的时候, 只是备份到一个点的数据, 但是在备份之后这段时间执行的数据, 就需要通过 recover 利用归档日志, 来进行前滚实现, 因此需要这两步 175

176 169: You plan to implement the distributed database system in your company. You invoke Database Configuration Assistant (DBCA) to create a database on the server. During the installation, DBCA prompts you to specify the Global Database Name. What must this name be made up of? A. It must be made up of a database name and a domain name. B. It must be made up of the value in ORACLE_SID and HOSTNAME. C. It must be made up of the value that you plan to assign for INSTANCE_NAME and HOSTNAME. D. It must be made up of the value that you plan to assign for ORACLE_SID and SERVICE_NAMES. 169: 你打算在你的公司实现分布式数据库系统 你调用数据库配置助手 (DBCA) 创建一个数据库在服务器上 在安装期间, DBCA 提示你指定 Global Database Name 这个名字必须由什么组成? A. 它必须由数据库名和域名组成 B. 它必须由 ORACLE_SID 和 HOSTNAME 组成 C. 它必须由你打算分配的 INSTANCE_NAME 和 HOSTNAME 组成 D. 它必须由你打算分配的 ORACLE_SID 和 SERVICE_NAMES 组成 答案 :A Global Database Name 是由 DB_NAME 和 DB_DOMAIN 组成的 参考官方文档 : 170: View the Exhibit and examine the output of the query. What do you infer from this? 176

177 A. The SGA_TARGET is a static parameter. B. The instance is started, but the database is not yet open. C. The server parameter file (SPFILE) was used to start the instance. D. The SGA_TARGET parameter does not have any effect on the database instance until the SGA_MAX_SIZE parameter is specified. 170: 查看下表并检查查询的输出结果 你能从中推断出什么? A. SGA_TARGET 是个静态参数 B. 实例已经启动, 但是数据库还没启动 C. 使用 SPFILE 启动实例 D. SGA_TARGET 参数没有任何影响对数据库实例直到指定 SGA_MAX_SIZE 参数 答案 :C V$SPPARAMETER 显示 SPFILE 相关的内容, 如果所有的行都是 FALSE, 则代表没启用 SPFILE 参考官方文档 : 171: View the Exhibit and examine the output. Which two statements are true regarding the LISTENER2 listener? (Choose two.) A. The ORCL instance is registered dynamically with the listener. B. The ORCL instance is registered statically in the listener.ora file. C. The number of current client connections handled by the service handler is two. D. The total number of client connections handled so far by the service handler is two. 171: 查看下表并检查输出结果 哪两句是正确的关于 LISTENER2 监听?( 选择两个 ) A. ORCL 实例动态注册监听 B. ORCL 实例使用 listener.ora 文件静态注册监听 177

178 C. 通过服务器处理器处理的当前客户端连接是两个 D. 通过服务器处理器处理的客户端连接数量目前为止是两个 答案 :BD 状态为 UNKONW 表明为静态注册,established:2 代表到目前建立了两个连接 172: User SCOTT wants to perform a bulk insert operation in the EMP_DEP table. SCOTT receives the following error after the INSERT statement is issued and few rows are inserted: INSERT INTO EMP_DEP (emp_id,name,salary,dep_name,mgr_id) * ERROR at line 1: ORA-01653: unable to extend table SCOTT.EMP_DEP by 128 in tablespace USERS Identify two actions either of which will help you resolve this problem. (Choose two.) A. Grant the RESOURCE role to SCOTT. B. Add data files to the USERS tablespace. C. Grant the CREATE ANY TABLE privilege to SCOTT. D. Increase the space for SCOTT on the USERS tablespace. E. Increase the size of the data file associated with the USERS tablespace. 172: 用户 SCOTT 想执行一个批量插入操作在 EMP_DEP 表 SCOTT 接收下面的报错在 INSERT 语句执行并插入几行之后 : INSERT INTO EMP_DEP (emp_id,name,salary,dep_name,mgr_id) * ERROR at line 1: ORA-01653: unable to extend table SCOTT.EMP_DEP by 128 in tablespace USERS 确定哪两个行动将帮助你解决这个问题?( 选择两个 ) A. 授予 RESOURCE 角色给 SCOTT B. 添加数据文件给 USERS 表空间 C. 授予 CREATE ANY TABLE 权限给 SCOTT D. 为 USERS 表空间的 SCOTT 用户增加空间 E. 增加分配给 USERS 表空间的数据文件大小 答案 :BE 报错是因为没有足够的空间 增大表空间有三种方法 : 1 增加一个文件:ALTER TABLESPACE users ADD DATAFILE '/u02/oracle/data/users02.dbf' SIZE 1M; 178

179 2 改变原来数据文件的大小:ALTER DATABASE DATAFILE '/u02/oracle/rbdb1/users01.dbf' RESIZE 300M; 3 设置自动增长:ALTER TABLESPACE users ADD DATAFILE '/u02/oracle/rbdb1/users01.dbf' SIZE 10M AUTOEXTEND ON NEXT 512K MAXSIZE 250M; 故答案选 BE 173: Some non-dba users in your database have been granted ANY TABLE system privileges and they are able to access data dictionary base tables. You decide to restrict their access to data dictionary objects. Which method would you adopt to achieve this objective? A. Revoke the RESOURCE role from the users. B. Set the value of the OS_ROLES parameter to TRUE. C. Use Database Resource Manager to restrict user access to objects. D. Grant ANY TABLE system privileges again without ADMIN OPTION. E. Set the value of the O7_DICTIONARY_ACCESSIBILITY parameter to FALSE. 173: 一些非 DBA 用户在你的数据库被授予了 ANY TABLE 系统权限, 可以访问数据字典基表 你决定限制他们访问数据字 典对象 哪种方法适合达到这个目标? A. 从用户收回 RESOURCE 角色 B. 设置 OS_ROLES 参数为 TRUE C. 使用 Database Resource Manager 限制用户访问对象 D. 授予 ANY TABLE 系统权限不使用 ADMIN OPTION E. 设置 O7_DICTIONARY_ACCESSIBILITY 参数值为 FALSE 答案 :E 保护数据字典 : 默认情况下,O7_DICTIONARY_ACCESSIBILITY 参数设置为 FALSE, 这会阻止具有 ANY TABLE 系统 权限的用户访问数据字典的基表 174: The database is running in ARCHIVELOG mode. Examine the initialization parameters and their values set to enable archiving on your database server: 179

180 Which statement is true regarding the archived redo log files? A. It will be created on the local file system. B. It will be created only in the Flash Recovery Area. C. It will be created in the location specified by the LOG_ARCHIVE_DEST_1 parameter and the default location $ORACLE_HOME/dbs. D. It will be created in the location specified by the LOG_ARCHIVE_DEST_1 parameter and location specified by the DB_RECOVERY_FILE_DEST parameter. 174: 数据库处于 ARCHIVELOG 模式 检查初始化参数并且他们的值设置为启用归档在你的数据库服务器 : 哪些语句是正确的关于归档日志文件? A. 它将被创建在本地文件系统 B. 它将被创建在 Flash Recovery Area C. 它将被创建在 LOG_ARCHIVE_DEST_1 参数指定的位置并且默认位置为 $ORACLE_HOME/dbs D. 它将被创建在 LOG_ARCHIVE_DEST_1 参数指定的位置和 DB_RECOVERY_FILE_DEST 参数指定的位置 答案 :A LOG_ARCHIVE_FORMAT 参数是用来指定归档日志文件的名称格式 LOG_ARCHIVE_DEST_n: 默认值为 Oracle 最多支持把日志文件归档到 10 个地方,n 从 1 到 10 归档地址可以为本地磁盘, 或者网络设备 DB_RECOVERY_FILE_DEST: 指定闪回恢复区路径 175: In your database, the current status of a PL/SQL procedure has become INVALID. Which action would fix the problem and make the PL/SQL procedure usable? A. Recompile the PL/SQL procedure. B. Modify the procedure to run with a definer's right. C. Modify the procedure to run with an invoker's right. D. Grant the EXECUTE privilege on the PL/SQL procedure to PUBLIC. 175: 在你的数据库,PL/SQL 过程的状态变成 INVALID 哪中行动解决这个问题并使 PL/SQL 过程可用? A. 重新编译 PL/SQL 过程 B. 修改过程运行为 definer C. 修改过程运行为 invoker D. 授予 EXECUTE 权限给 PL/SQL 过程 180

181 答案 :A PL/SQL procedure 变成无效时, 可以自动或手动重新编译, 就可以再次被使用 176: In which situations does the Oracle Data Pump use external tables and not the direct path load while exporting a table? (Choose all that apply.) A. if a table is not in a cluster B. if a table has an active trigger C. if a table has an encrypted column D. if a table has a column of data type LONG defined on it E. if a table has a referential integrity constraint defined on it 176: 在什么情况 Oracle Data Pump 导出一个表时使用外部表而不是直接路径加载?( 选择所有合适的 ) A. 如果表不是在一个簇中 B. 如果表有一个活动的触发器 C. 如果表有一个加密列 D. 如果表有一列数据类型定义为 LONG E. 如果表完整性约束定义 答案 :BCE Situations in Which Direct Path Unload Is Not Used 参考官方文档 : 177: Your database instance is currently configured to support 1,500 connections. The Web application that uses the database allows a large number of users to work with the database simultaneously. Some users of the Web application do not interact with the server all the time. You want to increase the scalability by configuring the database instance to handle more connections. As a DBA, which configuration would you set to support more than 1,500 connections at a time? A. You would configure more listeners for the database. B. You would configure the database in shared server mode to use the connection pooling feature. C. You would increase the value of the PGA_AGGREGATE_TARGET initialization parameter that assigns more 181

182 session memory to users. D. You would decrease the value of the PRIVATE_SGA resource limit in the profiles used by the users to accommodate more session information. 177: 你的数据库实例当前配置支持 1500 个连接 网页应用使用数据库允许大量的用户同时在数据库上工作 一些网页应用的用户不会一直和服务器有交互 你想增加可扩展性通过配置数据库实例处理更多的连接, 作为一个 DBA, 你配置哪些设置支持超过 1500 个连接同时? A. 你会为数据库配置更多的监听 B. 你会配置数据库为共享服务模式使用连接池特性 C. 你会增加 PGA_AGGREGATE_TARGET 参数的值分配更多的会话内存给用户 D. 你会减少 PRIVATE_SGA 的值, 通过用户适应更多的会话信息, 限制资源在 profile 文件中 答案 :B 在专用服务器模式下, 进程和会话是一对一的关系,UGA 被包含在 PGA 中, 在共享服务器模式下, 进程和会话是一对多的关系,UGA 在大池 (Large Pool) 中分配 如果分配失败, 如大型池太小, 或是根本没有设置大型池, 则从共享池 (Shared Pool) 中分配 178: Which two statements describe good practices for an application developer to reduce locking conflicts in Oracle database? (Choose two.) A. Avoid coding unnecessary longrunning transactions. B. Allow the database to handle locks in default locking mode. C. Always explicitly code the locks as per the requirement of the application. D. Allow escalation of row locks to block locks if too many row locks cause problem. 178: 哪两句描述一个应用开发人员减少 Oracle Database 锁定冲突的好的实践方式? A. 避免编写不必要的长时间运行的事务 B. 允许数据库处理锁在默认的锁模式 C. 总是明确的编码锁根据应用的需求 D. 允许行锁扩大阻塞锁, 如果太多的行锁导致问题 答案 :AB 182

183 A 正确, 长时间的事务占据资源, 别的用户无法访问 B 正确, 这样排队机制是自动运行的, 不需要人来干预 C 错误, 如果想修改锁还需要修改程序 D 错误, 应该是解决锁冲突, 而不是升级锁来阻止锁 179: View the Exhibit and note the files available in the $ORACLE_HOME/dbs folder. The ASM instance is already running. You used the following steps to start the database instance and open the database: Which file is used to start the instance in this case? A. init.ora B. spfile.ora C. initorcl.ora D. spfile+asm.ora 179: 183

184 查看下表并注意 $ORACLE_HOME/dbs 文件夹下文件的可用性 ASM 实例已经运行 你使用下面的步骤启动数据库实 例并打开数据库 : 哪些文件被使用启动实例在这种情况下? A. init.ora B. spfile.ora C. initorcl.ora D. spfile+asm.ora 答案 :B 这里考察的是数据库启动时读取配置文件的顺序 : Spfile<sid>.ora => spfile.ora => init<sid>.ora 180: These are points that describe the contents of different memory components: 1: Descriptive information or metadata about schema objects that are queried by using SQL statements 2: The runtime area for data manipulation language (DML) or data definition language (DDL) statements 3: Results of SQL queries and PL/SQL functions 4: Executable forms of SQL cursors, PL/SQL programs, and Java classes 5: The information necessary to reconstruct changes made to the database by a transaction Which of these will be stored in the Shared Pool if the necessary configurations are done? A. 1 and 2 B. 2 and 5 C. 1,3, and 4 D. 3,4 and 5 E. 1,2,3 and 4 180: 这些点描述不同内存组件的内容 : 1. 描述信息或元数据关于用户对象被查询通过 SQL 语句 2. 数据操纵语言 (DML) 和数据定义语言 (DDL) 的运行时间区域 3. SQL 查询和 PL/SQL 函数结果 4. SQL 游标,PL/SQL 程序和 Java 类的可执行形式 5. 通过一个事务重建数据库所做的更改的必要信息 184

185 哪一个将被存储在共享池中如果必要的配置做了? A. 1 and 2 B. 2 and 5 C. 1,3, and 4 D. 3,4 and 5 E. 1,2,3 and 4 答案 :C 可对照下图 181: Examine the commands executed in the following sequence: 1: SQL> CREATE ROLE mgrrole; 2: SQL> GRANT create user,select any table,connect,resource TO mgrrole; 3: SQL> GRANT select,update ON sh.sales TO mgrrole; 4: SQL> CREATE ROLE ceo IDENTIFIED BY boss; 5: SQL> GRANT mgrrole,drop any table,create any directory TO ceo; 6: SQL> GRANT ceo TO mgrrole; Which statement is true about the above commands? A. The commands execute successfully. B. Command 6 produces an error because of circular role grant. 185

186 C. Command 5 produces an error because a role cannot be granted to another role. D. Command 3 produces an error because the MGRROLE role already contains system privileges. E. The table created by HR remains and HR can grant the CREATE TABLE system privilege to other users. 181: 检查下面的命令执行按照下面的顺序 : 哪些语句是正确的关于上面的命令? A. 命令执行成功 B. 命令 6 产生一个错误因为循环角色授予 C. 命令 5 产生一个错误因为一个角色不能被授予给另一个角色 D. 命令 3 产生一个错误因为角色 MGRROLE 已经包含系统权限 E. HR 创建的表保留且 HR 可以授予 CREATE TABLE 系统权限给其他用户 答案 :B SQL> create role mgrole; Role created. SQL> grant create user,select any table,connect,resource to mgrole; Grant succeeded. SQL> grant select,update on sh.sales to mgrole; Grant succeeded. SQL> create role ceo identified by boss; Role created. SQL> grant mgrole,drop any table,create any directory to ceo; Grant succeeded. SQL> grant ceo to mgrole; grant ceo to mgrole * ERROR at line 1: ORA-01934: circular role grant detected 故 B 正确 186

187 182: Which statement is true about loading data using the conventional path of SQL*Loader? A. Redo is not generated while performing conventional path loads B. Only PRIMARY KEY, UNIQUE KEY and NOT NULL constraints are checked C. No exclusive locks are acquired when the conventional path loads are performed D. Instead of performing transactions, SQL*Loader directly writes data blocks to the data files E. INSERT triggers are disabled before the conventional path load and reenabled at the end of the load 182: 哪些语句是正确的关于加载数据使用 SQL*Loader 的常规路径? A. 当执行常规路径加载时不会产生 redo B. 只有 PRIMARY KEY,UNIQUE KEY 和 NOT NULL 约束被检查 C. 当执行常规路径加载的时候没有排他锁获取 D. 代替执行事务,SQL*Loader 直接写数据文件中的数据块 E. INSERT 触发器失效在常规路径加载和加载最后使之重用之前 答案 :C 参照下图可知选择 C 187