试题1 用SQL语句实现对Oracle数据库性能监控1. 1.操作条件
(1)Oracle 9i中文版。
(2)MS Word中文版。
(3)素材。
2.操作内容
根据素材给定数据库,按要求完成数据库的性能监控任务:
(1)登录数据库。
(2)使用SQL语句实现对Oracle数据库性能监控。
(3)按要求完成对Oracle数据库性能监控的3项任务,主要涉及:数据库对象信息监控;表、索引信息监控;数据库运行状态监控(如SGA相关命中率监控、文件系统监控、表空间I/O、回滚段、事例、字典缓冲区、运行语句情况等)。
3.操作要求
(1)考生按要求在指定位置建立考生文件夹。
(2)在考生文件夹内建立Word文档。
(3)将上述各执行操作对应的SQL脚本语句依次保存至该文件夹。
4.素材内容
已建数据库“DEMO321”,登录名:sys,密码:sysad min。
5.具体要求
(1)登录到“DEMO321”数据库,使用SQL语句实现以下3个数据库性能监控任务:
1)使用SQL命令实现“监控事例的等待”。
2)使用SQL命令实现“监控当前数据库谁在运行什么”。
3)使用SQL命令实现监控当前数据库谁在运行什么SQL语句。
(2)操作要求
1)考生按要求在指定位置建立考生文件夹。
2)在考生文件夹内建立Word文档“2.1.1.doc”。
3)将上述操作对应的SQL脚本语句依次拷贝至文档“2.1.1.doc”并保存。
试题评分表:
编号 |
评价要素 |
配分 |
分值 |
评分标准 |
实际得分 |
1 |
任务1 |
10 |
2 |
写出正确的表名,部分正确1分,全部正确2 分 |
|
4 |
写出正确的内容列,部分正确1分,基本正确 2分,全部正确4分 |
|
4 |
写出正确的条件(包括分组、排序),部分正 确2分,全部正确4分 |
|
2 |
任务2 |
10 |
2 |
写出正确的表名,部分正确1分,全部正确2 分 |
|
4 |
写出正确的内容列,部分正确1分,基本正确 2分,全部正确4分 |
|
4 |
写出正确的条件(包括分组、排序),部分正 确2分,全部正确4分 |
|
3 |
任务3 |
10 |
2 |
写出正确的表名,部分正确1分,全部正确2 分 |
|
4 |
写出正确的内容列,部分正确1分,基本正确 2分,全部正确4分 |
|
4 |
写出正确的条件(包括分组、排序),部分正 确2分,全部正确4分 |
|
合计配分 |
30 |
合计得分 |
|
参考答案:
操作内容<1>
select event,sum(decode(wait_Time,0,0,1))"Prev",
sum(decode(wait_Time,0,1,0))"Curr",count(*)"Tot"
from v$session_Wait
group by event;
操作内容<2>
select osuser,username,sql_text from v$session a,v$sqltext b
where a. sql_address+b. address order by address,piece;
操作内容<3>
select osuser,username,sql_text from v$session a,v$sqltext b
where a. sql_address=b. address order by address,piece;
试题2 在Windows环境下的Oracle数据库备份计划1. 1.操作条件
(1)Oracle 9i中文版。
(2)MS、Word中文版,Windows自带画图程序。
(3)素材。
2.操作内容
(1)登录数据库。
(2)生成数据库备份脚本文件(使用Orack恢复管理器实现备份)。
1)按指定备份技术实施备份:采用多通道技术、配置rman备份的优化备份设置启用、配置rman备份冗余度等。
2)按指定备份要求实施备份:如数据库全备份(包括所有的数据和只读表空间)和归档日志、零级备份、一级备份、二级备份等。
3)备份文件存放在指定目录。
(3)在Windows环境下生成一个调用数据库备份脚本文件的执行文件。
(4)在Windows环境下正确运行调用数据库备份脚本文件的执行文件(执行结果生成备份文件在指定目录)。
(5)将执行文件加入调度,定时对数据库进行备份;并截取调度任务配置的最终页面(请截“任务计划向导”按[完成]前的页面,包含任务名称和运行时间)。
3.操作要求
(1)考生按要求在指定位置建立考生文件夹。
(2)将备份脚本文件、执行文件、执行结果生产备份文件及调度任务配置的最终页面截屏文件均保存至考生文件夹。
4.素材内容
已建数据库“local01”,登录名sys,密码:sysad min。
5.具体要求
(1)登录到“local01”数据库。
(2)在Windows环境下,对数据库“local01”进行备份计划(使用Oracle恢复管理器),请生成脚本文件,名为backup01.rcv。
1)备份文件存放在考生文件夹。
2)采用双通道技术。
3)实现指定数据库全备份(包括所有的数据和只读表空间及归档日志)。
(3)在Windows环境下生成一执行文件,名为backup_archve01.bat。
(4)在Windows环境下执行backup_archive01.bat(生成备份文件在考生文件夹)。
(5)把backup_archive01.bat加入调度,每月1号凌晨0点对数据库进行备份。并截取调度任务配置的最终页面(请截取“任务计划向导”按[完成]前的页面,包含任务名称和运行时间,任务名称取为backup_archve01)。
(6)操作要求
1)考生按要求在指定位置建立考生文件夹。
2)将backup01.rcv和backup_archive01.bat文件和调度任务配置的最终页面截屏保存为2.2.1.jpg,并保存至考生文件夹。
试题评分表:
编号 |
评价要素 |
配分 |
分值 |
评分标准 |
实际得分 |
1 |
脚本文件 |
25 |
4 |
写出connect target部分 |
|
1 |
写出run{}框架 |
|
5 |
采用指定技术语句正确 |
|
7 |
backup database要点全部正确7分,主体命令 正确但缺要点4分 |
|
1 |
备份日志前执行 Sql'alter system archive log current' |
|
3 |
backup archivelog正确 |
|
1 |
写出arehivelog all delete all input |
|
3 |
数据备份路径正确 |
|
2 |
执行文件 |
2 |
2 |
完全正确2分 |
|
3 |
执行结果 |
5 |
5 |
完全正确5分,部分正确2分 |
|
4 |
调度 |
3 |
1 |
截图为任务计划向导对应页面 |
|
1 |
调度任务设置正确 |
|
1 |
计划日期、时间正确 |
|
合计配分 |
35 |
合计得分 |
|
参考答案:
操作内容<1>
backup01.rcv脚本
connect target sys/sysad min@local01
run{
allocate channel ch1 type disk;
allocate channel ch2 type disk;
backup full
format'带盘符考生文件夹\database_%d_%s_%p_%t'
database include current controlfile;
sql'alter system archive log current';
backup
format'带盘符考生文件夹\arch%d_%s_%p_%t'
archivelog all delete all input;
release channel ch1;
release channel ch2;
}
操作内容<2>
backup_archive01.bat内容:
rman cmdfile=backup01.rcv
操作内容<3>
database和arch文件存在并正确(文件个数和大小)
操作内容(4)
注:名称应为:backup_archive01。
试题3 实施函数和过程1. 1.操作条件
(1)Oracle 9i中文版。
(2)MS Word中文版。
(3)素材(已建数据库、已建数据表)。
2.操作内容
针对给定素材完成以下操作,并将所有SQL脚本语句保存至指定Word文档。
(1)编写过程完成指定功能。
(2)编写函数完成指定功能。
(3)定义游标,并通过使用游标FOR循环,按指定格式内容完成输出。
3.操作要求
(1)考生按要求在指定位置建立考生文件夹。
(2)在考生文件夹内建立Word文档。
(3)将上述操作内容所有SQL脚本语句依次保存至该文档。
4.素材内容
(1)已建数据库“DEMO322”,登录名sys,密码:sysad min。
(2)数据库“DEMO322”中建有表:EMP01,表结构如下:
表名 | 字段名 | 字段说明 | 数据类型 | 是否为空 |
EMP01(员工表) | id | 雇员号 | NUMBER(6) | NOT NULL |
name | 姓名 | VARCHAR2(20) | — |
hiredate | 雇佣日期 | DATE | NOT NULL |
job | 岗位 | VARCHAR2(10) | NOT NULL |
sal | 薪资 | NUMBER(8,2) | — |
mgr | 管理者编号 | NMUBER(6) | — |
deptno | 部门号 | NUMBER(4) | — |
5.具体要求 完成以下所有操作,并将对应的SQL脚本依次保存至“3.1.1.doc”文件。 针对表EMP01,完成以下操作内容: (1)建立过程ADD_EMP,输入雇员号、姓名、岗位、工作日期、工资、管理者编号、部门号,为EMP01表插入数据。 (2)建立函数GET_SAL,根据输入的雇员号返回雇员名和工资。调用函数VALID_ENO确定雇员是否存在,不存在则显示消息“ORA-20010:该雇员不存在” (EMP01表)。 (3)定义游标emp_cur。通过使用游标FOR循环,逐个显示某部门员工的姓名和雇佣日期,并在每名员工姓名前加上序号。
(4)操作要求
1)考生按要求在指定位置建立考生文件夹。
2)在考生文件夹内建立Word文档“3.1.1.doc”
3)将上述操作内容对应的SQL脚本语句依次拷贝至文档“3.1.1.doc”。
试题评分表:
编号 |
评价要素 |
配分 |
分值 |
评分标准 |
实际得分 |
1 |
实施过程 |
10 |
2 |
写对过程主体框架语句CREATE OR RE- PLACE PROCEDURE,IS,BEGIN,END |
|
1 |
写对过程名 |
|
3 |
正确写出参数 |
|
4 |
过程体正确(写对INSERT语句) |
|
2 |
实施函数 |
13 |
3 |
写对函数主体框架语句CREATE OR RE- PLACE FUNCTION,RETURN,BEGIN, END |
|
2 |
写对函数名和参数 |
|
2 |
写对返回值及类型RETURN NUMBER IS salary emp01.sal%TYPE |
|
4 |
函数体正确,返回正确结果功能实现 |
|
2 |
调用值无效处理正确,显示错误信息 |
|
3 |
定义游标 |
12 |
3 |
写对定义游标主体框架语句DECLARE CUR- SOR IS |
|
1 |
写对游标名 |
|
3 |
写对游标内容SELECT语句 |
|
2 |
写对FOR循环语句 |
|
3 |
实现指定格式内容完成输出 |
|
合计配分 |
35 |
合计得分 |
|
参考答案:
操作内容<1>
CREATE OR REPLACE PROCEDURE add_emp
(id NUMBER,name VARCHAR2,hiredate DATE,job VARCHAR2,
Sal NUMBER,mgr NUMBER,deptno NUMBER)
IS
BEGIN
INSERT INTO emp01 VALUES
(id,name,hiredate,job,sal,mgr,deptno);
END;
/
操作内容<2>
CREATE OR REPLACE FUNCTION get_sal(eno NUMBER)
RETURN NUMBER IS
salary emp01.sal%TYPE;
BEGIN
IF VALID_ENO(eno)THEN
SELECT sal INTO salary FROM emp01 WHERE id=eno;
RETURN salary;
ELSE
DBMS_OUTPUT.PUT_LINE(—20010,'该雇员不存在');
END IF;
END;
/
操作内容<3>
DECLARE
v_specialty EMP01.deptno%TYPE;
CURSOR emp_cur
IS
SELECT name,hiredate
FROM EMP01
WHERE deptno=v_specialty;
BEGIN
v_specialty:=&specialty;
DBMS_OUTPUT.PUT_LINE('序号员工姓名雇佣日期');
FOR emp_record IN emp_cur LOOP
DBMS_OUTPUT.PUT_LINE(emp_cur%ROWCOUNT||"
|| emp_record.name ||"|| emp_record.hiredate);
END LOOP;
END;