巢湖学院
实验三 Oracle 11g体系结构
实验学时:2
实验类型:验证型
一、实验目的与要求
1、熟悉Oracle数据库的物理结构 2、熟悉Oracle数据库的逻辑结构 3、理解Oracle的工作机制 4、理解Oracle的服务器结构
二、实验设备及条件
在局域网环境下,有一台服务器和若干台客户机。服务器成功安装Oracle 11g数据库服务器(企业版),客户机成功安装Oracle 11g客户端软件,网络服务配置正确,数据库和客户端正常工作。
三、实验内容与步骤 1、实验准备
以系统管理员身份登入到数据库。
2、物理存储结构
(1)数据文件
数据文件的详细信息记载在控制文件中,可以通过如下方式查看数据文件。 SQL>select name from v$datafile; 给出运行结果截图:
练习:用desc命令查看V$datafile视图的结构,并试着查询更详细的信息。 (2)日志文件
通过如下方式查看重做日志文件相关信息:
给出运行结果截图:
16
巢湖学院
练习:用desc命令查看V$log视图的结构,并试着查询控制文件更详细的信息。 (3)控制文件
通过如下方式查看控制文件相关信息:
给出运行结果截图:
练习:用desc命令查看V$controlfile视图的结构,并试着查询更详细的信息。 (4)参数文件
①通过如下方式查看参数文件相关信息: a、show parameter显示服务器参数
b、查询试图v$Parameter,可以利用该动态性能视图来确定参数的默认值是否被修改,以及是否可以用alter system和alter session命令修改
阅读结果并理解各数据项的含义。
②修改服务器参数
a、通过企业管理器(OEM)修改
b、使用 alter system修改服务器参数。格式如下:
Alter system set parameter =value
Eg:alter system set db_block_size=4096;
练习:在%oracle_home%(如D:\\app\\Administrator\\product\\11.2.0\\dbhome_1\\database或者D:\\app\\Administrator\\product\\11.2.0\\dbhome_1\\srvm\\admin)找到名为SPFileSID.ora(如:SPfileorcl.ora)和init.ora的文件,此文件即为参数文件,用记事本或者写字板打开它们,阅读其内容并理解各数据项的作用。
3、Oracle逻辑存储结构
(1)查看表空间的名称及大小
执行以下语句,并给出运行结果。
17
巢湖学院
(2)查看表空间物理文件的名称及大小
执行以下语句,并给出运行结果。
(3)查看回滚段名称及大小
执行以下语句,并给出运行结果。
(4)查看所有表空间对应的数据文件名:
SQL>select distinct file_name,tablespace_name,AUTOEXTENSIBLE
from dba_data_files;
(5)查看表空间的使用情况:
SQL>select sum(bytes)/(1024*1024) as free_space,tablespace_name
from dba_free_space group by tablespace_name;
(6)查看回滚段的使用情况,哪个用户正在使用回滚段的资源:
SQL>select s.username, u.name
from v$transaction t,v$rollstat r,v$rollname u,v$session s
where s.taddr=t.addr and t.xidusn=r.usn and r.usn=u.usn order by s.username;
4、Oracle内存与进程结构
(1)查看sga情况:
SQL>SELECT NAME, BYTES
FROM SYS.V_$SGASTAT ORDER BY NAME ASC;
(2)数据库共享池性能检查:
SQL>Select namespace,gets,gethitratio,pins,pinhitratio,reloads,Invalidations
from v$librarycache
where namespace in ('SQLAREA','TABLE/PROCEDURE','BODY','TRIGGER');
(3)检查共享内存的剩余情况:
SQL>select request_misses, request_failures
from v$shared_pool_reserved;
(4)数据高速缓冲区性能检查:
SQL>select 1-p.value/(b.value+c.value) \
from v$sysstat p,v$sysstat b,v$sysstat c
Where p.name='physical reads' and b.name='db block gets' and c.name='consistent gets';
(5)查看排序段的性能:
18
巢湖学院
SQL>SELECT name, value
FROM v$sysstat
WHERE name IN ('sorts (memory)', 'sorts (disk)');
(6)查看数据库中某用户,正在运行什么SQL语句
SQL>SELECT SQL_TEXT
FROM V$SQLTEXT T, V$SESSION S WHERE T.ADDRESS=S.SQL_ADDRESS
AND T.HASH_value=S.SQL_HASH_value AND S.MACHINE='XXXXX' OR USERNAME='WACOS';
4、其他
(1)查看数据库库对象:
SQL>select owner, object_type, status, count(*) count# from all_objects
group by owner, object_type, status;
(2)查看数据库的创建日期和归档方式:
SQL>Select Created, Log_Mode From V$Database;
5、作业与思考练习题
1、现有控制文件的位置及其名称是什么?
提示:查询动态性能视图V$CONTROLFILE。注:您还可以使用 V$PARAMETER,或者执行 SHOW PARAMETER命令以显示控制文件的名称和位置。 2、控制文件中数据文件部分的初始大小是多少?
提示:查询动态性能视图V$CONTROLFILE_RECORD_SECTION。 WHERE OWNER ='SCOTT' AND OBJECT_NAME='EMP';
19
巢湖学院
实验四: Oracle 数据库的查询与更新
实验学时:4
实验类型:设计型
一.实验目的及要求
1.熟悉Oracle的基本知识及SCOTT模式。 2.熟悉并掌握oracle常用的查询语句。 3.熟悉并掌握oracle常用的更新语句 4.熟悉并掌握oracle常用的事务语句
二、实验主要内容
1、Oracle查询语句。 2、Oracle 更新语句。 3、Oracle事务处理。
三、实验仪器设备
在局域网环境下,有一台服务器和若干台客户机。服务器成功安装Oracle 11g数据库服务器(企业版),客户机成功安装Oracle 11g客户端软件,网络服务配置正确,数据库和客户端正常工作。
四、实验步骤
(一)oracle常用的查询语句
1、选择列
1)显示所有员工的姓名及工龄,并分别用别名表示姓名和工龄。 2)在检索emp表中的sal列,并把其值调整为原来到1.2倍 3)显示每个雇员的年薪(sal+comm)*13 4)检索emp表中有奖金员工不同工种(job),即要求显示的“job”记录不重复 2、选择行
1)查询工作是CLERK的所有职工的姓名,职工号和部门号 2)查询奖金高于工资20%的员工信息。
3)查询emp表中工资(sal)大于1500且部门编号为10的数据记录 4)查询工资同时不等于3000、950、800的员工记录。 5)查询工资不在2000到3000之间的员工信息。
6)查询职务为”PRESIDENT“、”MANAGER“、”ANALYST“任意一种员工的信息 7)查询以字母‘J’开头,以?S ?结尾,中间任意长度为名的员工记录 8)把职工名字和部门编号中间用‘WORKS IN DEPARTMENT’连接起来 9)查询emp中comm为空的员工信息
10)查询工资高于500或是岗位为manager的雇员,同时还要满足他们的姓名首写字母为大写的”J“
20