oracle数据库综合训练项目答案Word格式文档下载.docx
《oracle数据库综合训练项目答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《oracle数据库综合训练项目答案Word格式文档下载.docx(26页珍藏版)》请在冰豆网上搜索。
5)检查初始化参数open_cursors的值。
SHOWPARAMETEROPEN_CURSOR,
显示结果值应为200。
6)关闭数据库,重新用spfile启动数据库。
SHUTDOWN,STARTUP
7)动态修改参数open_cursors=300,但重新启动后参数原值保持不变。
ALTERSYSTEMSETOPEN_CURSORS=300SCOPE=MEMORY
2.验证只读方式。
1)关闭数据库并且以只读方式打开。
STARTUPOPENREADONLY;
2)以SCOTT用户连接到数据库,插入一条记录到EMP表。
解释发生的现象和原因。
CONNSCOTT/TIGER
INSERTINTOemp(empno,ename)VALUES(8001,'
test'
);
插入失败,因为数据库处于只读状态。
3)将数据库改为可读可写状态。
SHUTDOWN,STARTUP
3.验证关闭方式。
1)打开一个SQL*Plus,以SCOTT用户连接,修改EMP表SCOTT的工资为9000,但不提交。
SQLPLUS/NOLOG
SQL>
UPDATEEMPSETSAL=9000WHEREEMPNO=7788;
2)在以SYS账户登录的会话中。
并且执行事务关闭,能否关闭,解释原因。
SHUTDOWNTRANSACTIONAL
处于等待,等待所有事务的完成后关闭。
3)在SCOTT会话中执行回滚操作,并退出(Exit),解释发生的现象和原因。
ROLLBACK;
SYS会话开始执行关闭操作。
4.验证受限状态。
1)打开一个SQL*Plus,以SYS用户连接,打开数据库到OPEN状态。
2)重新启动一个SQL*Plus,并以SCOTT用户连接。
3)在SYS会话中,将数据库切换至受限状态。
ALTERSYSTEMENABLERESTRICTEDSESSION;
4)在SCOTT会话中,查询EMP表中的记录,能否成功,解释原因。
SELECT*FROMEMP;
成功,启动受限状态,不影响已登录的会话。
5)退出SCOTT会话,重新连接,能否成功,解释原因。
登录失败,数据库系统处于限制状态,SCOTT无权登录。
6)在SYS会话中,将数据库退出受限状态,切换至正常状态。
ALTERSYSTEMDISABLERESTRICTEDSESSION;
7)重新连接到SCOTT用户,能否成功,解释原因。
成功
第5章练习参考答案
1.C2.D3.B4.A5.C
6.B7.C
第6章综合训练项目参考答案
1.以sysdba身份连接到数据库,查看控制文件位置和名称。
SELECT*FROMV$CONTROLFILE;
2.查询控制文件中可记载的最大数据文件个数是多少。
SELECT*FROMV$CONTROLFILE_RECORD_SECTION;
查看DTATAFILE记录RECORDS_TOTAL字段
3.通过服务器端初始化参数建立改静态初始化参数,并修静态初始化参数文件,去掉一个控制文件。
参看第4章,修改control_files参数。
4.指定用静态初始化参数启动数据库,运行一段时间。
STARTUPPFILE=…
5.使用show命令显示控制文件的名称和位置。
SHOWPARAMETERcontrol_files
6.重新用服务器端初始化参数启动数据库,说明出错的现象和原因。
STARTUP
装载失败,原因是重新启动,初始化参数中,仍然指定3个控制文件,其中的一个控制文件已经失效
7.描述采取的对策,维护控制文件,直到数据库能够正常打开。
方法1:
修改服务器端初始化参数,去掉失效的控制文件。
方法2:
用好的初始化参数文件覆盖失效的初始化参数文件
第6章练习参考答案
1.B2.D3.C4.C5.D
第7章综合训练项目参考答案
1.列出现有日志文件的位置和名称;
显示数据库所拥有的重做日志文件组号、成员的数量和日志文件的大小。
SELECTmemberFROMv$logfile;
SELECTgroup#,members,bytesFROMv$log;
2.查询数据库的归档模式;
查询是否启用了自动归档。
ARCHIVELOGLIST;
3.说明当前日志组号,和最大日志序列号。
进行手工日志切换,重新说明当前日志组号,和最大日志序列号。
SELECTgroup#,sequence#FROMv$logwherestatus='
CURRENT'
其中:
查看group#和sequence#,group#代表日志组号,sequence#表日志序列号。
CURRENT代表当前日志状态,当前日志的日志序列号总是最大的。
ALTERSYSTEMSWITCHLOGFILE;
4.在E:
\盘增加新的日志组,里面有两个成员,大小为1M。
ALTERDATABASEADDLOGFILEGROUP4
('
E:
\4a'
'
\'
)SIZE1M;
5.向新增的日志组增加第三个成员,大小为1M。
ALTERDATABASEADDLOGFILEMEMBER
'
\4c'
toGROUP4;
6.删除新组的第一个成员。
ALTERDATABASEDROPLOGFILEMEMBER'
7.将新增加的组移动到同其它日志组相同的目录下。
SHUTDOWN;
COPY重做日志文件到新位置
STARTUPMOUNT;
ALTERDATABASERENAMEFILE'
\'
TO'
d:
\oracle\oradata\db01\'
\4c'
\oracle\oradata\db01\4c'
ALTERDATABASEOPEN;
8.删除新增加的日志组。
ALTERDATABASEDROPLOGFILEGROUP4;
9.将数据库置于归档模式的手工归档状态下,进行多次日志切换,直到进入等待状态,尝试解除等待状态。
先设置归档模式
CONN/ASSYSDBA;
SHUTDOWN;
STARTUPMOUNT;
ALTERDATABASEARCHIVELOG;
ALTERDATABASEOPEN;
确保自动归档停止,然后切换日志
ALTERSYSTEMARCHIVELOGSTOP;
出现等待状态后,启动另外的会话,使用如下命令进行手工归档,就可以暂时解除等待状态
ALTERSYSTEMARCHIVELOGALL;
10.取消自动归档,取消归档模式,删除所有的归档文件。
ALTERDATABASENOARCHIVELOG;
然后找到所的归档文件用操作系统命令删除。
第7章练习参考答案
1.A2.D3.A4.C5.B
6.A7.B8.B
第8章综合训练项目参考答案
1.查看SYSTEM表空间的大小是多少,对应的数据文件的路径和名称是什么
SELECTbytes,file_nameFROMdba_data_files
WHEREtablespace_name='
SYSTEM'
2.创建本地管理表空间DATA01,包含大小1M的一个数据文件,数据文件位于E:
\,每个区的大小为64K。
CREATETABLESPACEdata01
DATAFILE'
e:
SIZE1M
EXTENTMANAGEMENTLOCALAUTOALLOCATE;
3.向该表空间插入一个新表TAB1,并插入一行数据。
CREATETABLEtab1
(novarchar2(20))
TABLESPACEdata01;
INSERTINTOtab1VALUES('
aa'
COMMIT;
4.通过改变数据文件的大小,将表空间DATA01大小增加为2M。
ALTERDATABASE
RESIZE2M;
5.将数据文件改为空间自动增长,允许每次自动扩展500KB,最大大小为5MB。
AUTOEXTENDON
NEXT500KMAXSIZE5M;
6.将表空间DATA01的数据文件从E:
\移动到数据文件默认路径下,运行查询验证。
CONNECT/ASSYSDBA
ALTERTABLESPACEdata01OFFLINE;
使用操作系统命令移动或复制数据文件
ALTERTABLESPACEdata01
RENAMEDATAFILE'
TO'
ALTERTABLESPACEdata01ONLINE;
SELECTFILE_NAMEFROMDBA_DATA_FILES
WHERETABLESPACE_NAME='
DATA01'
7.为表空间DATA01增加一个新的数据文件,运行查询验证。
ALTERTABLESPACEdata01
ADDDATAFILE'
SIZE1M;
8.创建新的临时表空间TEMP01,大小10M,并设置成当前系统默认临时表空间。
CREATETEMPORARYTABLESPACEtemp01
TEMPFILE'
\oracle\oradata\db01\01a'
SIZE10M
EXTENTMANAGEMENTLOCALUNIFORMSIZE128K;
ALTERDATABASEDEFAULTTEMPORARYTABLESPACEtemp01;
9.改变DATA01表空间为只读表空间,删除创建的第一个表TAB1,结果如何
ALTERTABLESPACEdata01READONLY;
DROPTABLEtab1;
表可以删除
ALTERTABLESPACEdata01READWRITE;
10.关闭数据库,将DATA01表空间的数据文件改名,模拟数据文件故障,重新启动数据库,说明现象,在这种情况下如何打开数据库
数据文件改名为
STARTUP;
数据库启动失败,停止在装载状态。
将故障数据文件脱机,即可启动数据库。
ALTERDATABASEDATAFILE'
OFFLINE;
11.删除表空间DATA01和数据文件。
DROPTABLESPACEdata01INCLUDINGCONTENTSANDDATAFILES;
第8章练习参考答案
1.D2.B3.D4.D5.D
6.B
第9章综合训练项目参考答案
1.以用户SYS的身份进行连接,查看当前的UNDO数据管理方式和UNDO表空间的名称。
SHOWPARAMETERUNDO_MANAGEMENT;
SHOWPARAMETERUNDO_TABLESPACE;
2.查询SYSTEM表空间的UNDO段的名称。
SELECTsegment_name,owner,tablespace_name,status
FROMdba_rollback_segs
3.设置UNDO_RETENSION为30分钟。
ALTERSYSTEMSETUNDO_RETENTION=900SCOPE=BOTH;
4.创建新的UNDO表空间UNDOTEMP,大小为15MB。
CREATEUNDOTABLESPACEUNDOTEMP
SIZE15M;
5.切换到新的UNDO表空间UNDOTEMP。
ALTERSYSTEMSETUNDO_TABLESPACE=UNDOTEMP;
6.启动新的SQL*Plus并以用户SCOTT的身份进行连接,然后向表DEPT中插入行。
不要提交、回退或退出该会话。
CONNSCOTT/TIGER;
INSERTINTODEPTVALUES(50,'
COMPUTER'
'
HENZHEN'
7.在以SYS身份连接的会话中,切换到原来的UNDO表空间。
CONN/ASSYSDBA;
ALTERSYSTEMSETUNDO_TABLESPACE=UNDOTBS1;
8.在以SYS身份连接的会话中,试删除UNDO表空间UNDOTEMP,说明发生的现象和原因。
DROPTABLESPACEUNDOTEMPINCLUDINGCONTENTSANDDATAFILES;
系统提示不能删除该UNDO表空间,因为表空间中有活动的回滚段信息。
9.以SYS身份发出下列命令:
ALTERSYSTEMSETUNDO_retention=0SCOPE=memory;
现在删除UNDO表空间UNDOTEMP,结果如何
过一段时间才就可以删除该表空间,因为UNDO_retention设为0.
第9章练习参考答案
1.B2.B3.A4.D5.D
第10章综合训练项目参考答案
1.查看USERS表空间的剩余空间
SELECTtablespace_name,sum(blocks)*8/1024"
TOTAL"
FROMdba_free_space
USERS'
GROUPBYtablespace_name;
假定数据块大小为8K,结果转换成M字节。
2.查看USERS表空间区的管理方式和区的参数
SELECTextent_management,initial_extent,
next_extent,min_extents,max_extents,pct_increase
FROMdba_tablespaces
3.查看HR账户EMPLOYEES表所在的表空间,以及区的个数和大小
SELECTtablespace_name,extents,blocks,bytes
FROMdba_segments
WHEREowner='
HR'
ANDsegment_name='
EMPLOYEES'
4.查看HR账户EMPLOYEES表的区的管理参数,块的参数
SELECTpct_free,pct_used,ini_trans,max_trans
initial_extent,next_extent,min_extents,max_extents,pct_increase
FROMdba_tables;
5.查看HR账户的哪个表占有空间最大,最大空间是多少
SELECTtable_name,blocks
FROMdba_tables
6.创建本地管理表空间USERTBS,大小1M,区大小为128K,块空间自动管理。
CREATETABLESPACEusertbs
/oracle/oradata/db01/'
EXTENTMANAGEMENTLOCALUNIFORMSIZE128K
SEGMENTSPACEMANAGEMENTAUTO;
7.创建16K非标准块表空间MYTBS16K,并验证。
ALTERSYSTEMSETDB_16k_CACHE_SIZE=16MSCOPE=SPFILE;
CREATETABLESPACEmytbs16k
BLOCKSIZE16K;
8.删除新建的表空间USERTBS和MYTBS16K。
DROPTABLESPACEUSERTBS;
DROPTABLESPACEMYTBS16K;
第10章练习参考答案
1.A2.A3.A4.A5.A
第11章综合训练项目参考答案
1.以用户SCOTT的身份登录数据库,创建表CUSTOMERS,使用表空间USERS和缺省的存储设置。
插入若干行数据。
表和列定义如下:
CUST_CODEVARCHAR2(3)
NAMEVARCHAR2(50)
REGIONVARCHAR2(5)
创建表ORDERS,使用表空间USERS,存储参数INITIAL设置为100K。
ORD_IDNUMBER(3)
ORD_DATEDATE
CUST_CODEVARCHAR2(3)
DATE_OF_DELYDATE
CREATETABLECUSTOMERS
(CUST_CODEVARCHAR2(3),NAMEVARCHAR2(50),REGIONVARCHAR2(5))
TABLESPACEUSERS;
CREATETABLEORDERS
(ORD_IDNUMBER(3),ORD_DATEDATE,CUST_CODEVARCHAR2(3),DATE_OF_DELYDATE)
TABLESPACEUSERS
STORAGE(INITIAL100K);
2.检查CUSTOMERS表的创建时间。
SELECTcreatedFROMuser_objectsWHEREobject_name='
CUSTOMERS'
3.检查ORDERS表使用的区数
SQL>
SELECTextentsFROMdba_segments
WHEREowner='
SCOTT'
ANDsegm