0331 ORACLE上机实验.docx
《0331 ORACLE上机实验.docx》由会员分享,可在线阅读,更多相关《0331 ORACLE上机实验.docx(70页珍藏版)》请在冰豆网上搜索。
0331ORACLE上机实验
实验一Oracle数据库管理与工具使用
Oracle数据库管理工具
知识点
☐企业管理器
☐OracleAdministrationAssistant
☐网络配置工具
☐SQL*Plus
一、企业管理器
企业管理器是Oracle的主要控制台,使用它可以实现很多数据库管理的功能。
从Oracle10g开始,Oracle极大的增强了OEM工具,并通过服务器端进行EM工具全面展现。
在10g中,客户端可以不必安装任何Oracle客户端工具,仅凭浏览器就可以调用强大的EM工具。
EnterpriseManager11g
EnterpriseManager11g简称EM,是Oracle11g提供的新的管理工具,是基本的Web管理工具。
☐启动EnterpriseManager10g
☐使用EnterpriseManager
启动EnterpriseManager10g
☐通过命令行方式启动OracleDBConsoleorcl服务:
emctlstartdbconsole
☐设置环境变量ORACLE_SID:
setoracle_sid=orcl
☐服务启动后,可以在Web浏览器中按下面的格式访问EnterpriseManager11g:
http:
//:
/em
启动EnterpriseManager10g
☐在$ORACLE_HOME/install/portlist.ini中找到需要的EM端口号
☐假定Oracle数据库服务器名称为OracleServer,打开EM登录页面:
http:
//oracleserver:
1158/em
1.一般信息
2.主机CPU
3.活动会话数。
显示当前所有的活动会话及其状态信息。
4.SQL响应时间。
执行一组有代表性的SQL语句所需要的平均时间。
5.诊断概要。
可以查看数据库运行的概要信息,扫描预警日志,显示ORA错误信息。
6.空间概要。
可以查看数据库空间的概要信息,包括数据库大小、有问题的表空间等。
7.
高可用性。
显示与可用性相关的信息,包括实例恢复时间、上次备份时间、可用快速恢复区百分比和闪回事件记录等。
OracleEnterpriseManager
☐
OracleEnterpriseManager的主要功能
OEM是一个JAVA图形界面的管理工具,只有安装了Oracle客户端才能够使用OEM。
EnterpriseManager登录窗
EnterpriseManager
☐编辑本地首选身份证明
二、OracleAdministrationAssistant
☐启动OracleAdministrationAssistant
☐设置默认实例和注册表变量
☐设置操作系统数据库管理员和操作员
☐OracleAdministrationAssistantforwindows是一种图形用户界面工具,利用它可以轻松配置由windows操作系统验证的oracle数据库管理员、操作员、用户和角色,还可以启动和配置oracle数据库服务。
启动OracleAdministrationAssistant
OracleAdministrationAssistant窗口
设置默认实例和注册表变量
OraDb11g_home1属性窗口
Oracle注册表参数信息
设置操作系统数据库管理员和操作员
“编辑OS数据库管理员”对话框
Oracle数据库管理
管理Oracle数据库实例连接到数据库
数据库的用户和角色项目
设置Oracle实例的启动/关闭选项
设置OracleNT服务的启动选项
三、网络配置工具
☐OracleNet简介
☐NetManager
☐NetConfigurationAssistant
OracleNet简介
☐Orclenet是Orclenetservice的一个组件,它支持客户端应用程序到oracle数据库服务器的网络会话。
☐网络会话是通过监听程序建立的。
监听程序是驻留在数据库服务器上的单独进程。
☐定义一个名为ORCL_ORACLESERVER的网络服务名,代码如下:
☐ORCL_ORACLESERVER=
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=OracleServer)(PORT=1521)))(CONNECT_DATA=(SID=orcl)(SERVER=DEDICATED)))
NetManager
☐OracleNetManager可以对下列OracleNet特性和组件进行配置和管理:
1.概要文件确定客户端如何连接到Oracle网络的参数集合。
使用概要文件可以配置命名方法、事件记录、跟踪、外部命名参数以及OracleAdvancedSecurity的客户端参数。
2.服务命名创建或修改数据库服务器的网络说明。
3.监听程序创建或修改监听程序。
4.OracleNamesServer创建、修改OracleNamesServer的配置,设置或控制OracleNamesServer。
OracleNetManager窗口
Netmanager工具上的3个配置结点:
分别
对应于$oracle_home/network/admin下的文件:
☐概要文件:
sqlnet.ora描述关于连接的参数
☐服务命名:
tnsnames.ora用于解析本地服务命名
☐监听程序:
listener.ora用来设置listener的配置信息。
☐如果需要访问远端的数据库,就需要首先对其进行标识。
Oracle使用服务命名来标识远端数据库。
☐服务命名也称为本地命名,是oraclenet的一种命名方法。
它用于将网络服务名解析为连接描述符,客户机使用此连接描述符连接数据库或服务。
配置服务命名
NetConfigurationAssistant
NetConfigurationAssistant配置:
☐监听程序配置。
☐命名方法配置。
☐本地Net服务名配置。
☐目录使用配置。
配置本地Net服务名
网络服务名配置窗口
选择协议窗口
TCP协议设置窗口
设置网络协议名窗口
四、SQL*Plus
可以使用SQL语句访问oracle数据库,实现查询、插入、修改和删除等操作。
Oracle10g提供了两个执行SQL语句的工具。
☐使用SQL*Plus
SQL*Plus是用户和服务器之间的一种接口,用户可以通过它使用SQL语句交互地访问数据库。
实验内容
一、实验目的
掌握Oracle的启动、关闭、连接和管理初始化参数
熟悉em和SQL*Plus的使用
了解用户和模式的概念,并查询hr模式表的数据
二、实验环境
一台PC机,安装widowsxp操作系统,oracle10g或11g数据库软件。
三、实验内容
启动和关闭window操作系统的Oracle服务
使用SQL*Plus与Oracle数据库建立连接
使用SQL*Plus启动和关闭Oracle数据库
使用em和SQL*Plus显示和设置初始化参数文件
使用em和SQL*Plus解锁hr模式,并使用SQL*Plus编写查询该模式中表的SQL
四、实验步骤
使用安装好的Oracle11g
在安装过程中,OUI会在\install下创建两个文件:
readme.txt:
记录各种Oracle应用程序的URL与端口。
Portlist.ini:
记录Oracle应用程序所使用的端口。
(1)登录EnterpriseManager11gDatabaseControl
与以前的版本不同,Oracle企业管理器只有B/S模式。
在浏览器中输入下列URL:
http:
//:
1158/em
例如:
http:
//localhost:
1158/em
进入EnterpriseManager11g登录窗口。
以SYSDBA身份登录Oracle数据库。
(2)使用iSQL*Pls登录Oracle数据库(在11G版本中取消了该功能)
iSQL*Plus是B/S模式的客户端工具。
在Mydb浏览器中输入下列URL:
http:
//:
5560/isqlplus
例如:
http:
//localhost:
5560/isqlplus
进入iSQL*Plus登录窗口。
用system帐户登录Oracle数据库。
(3)使用SQL*Pls登录Oracle数据库
SQL*Plus是C/S模式的客户端工具程序。
单击“开始”>“所有程序”>“Oracle–Oracle11g_home”>“ApplicationDevelopment”>“SQL*Plus”
在登录窗口中输入system帐号与口令
(4)使用命令行SQL*Pls登录Oracle数据库
传统的SQL*Plus是一个命令行客户端程序。
在命令窗口中输入命令进行测试。
例:
sqlplussys/orcl(用户名/密码)assysdba
步骤
1)进入windowsxp操作系统控制面板-》管理工具-》服务(默认自动启动该类服务)
启动以下几个服务:
OracleService(数据库名)
OracleOraDb11g_home1TNSListener
OracleOraDb11g_home1iSQL*Plus
OracleDBConsoleorcl(启动em需要的服务)
2)使用管理工具连接数据库
3)使用SQL*Plus连接Oracle数据库
进入windowsxp操作系统Oracle-OraDb10g_home1-》应用程序开发-》SQLPlus
输入:
用户名:
sys/orclassysdba按确定。
输入Select*fromhr.employees;按回车可以查询该表数据
4)使用SQL*Plus用sys用户关闭Oracle数据库
输入并执行如下SQL语句:
shutdownimmediate
输入Select*fromhr.employees;按回车无法查询该表数据
注:
shutdownnormal
Shutdowntransactional
Shutdownimmediate
Shutdownabort
5)创建并启动与数据库对应的实例
startupnomount按回车
注:
startupmount
Startupnomount
Startupopen
Startuprestrict
Startuppfile
6)为未加载数据库的实例加载数据库
alterdatabasemount;按回车
7)将处于未打开状态的数据库设置为打开状态
alterdatabaseopen;按回车
8)解锁hr用户(也可在EM中为用户解锁)
使用em用system登录,通过方案-》用户-》编辑hr用户为解锁,同时修改密码。
使用sqlplus用system登录
alteruserhraccountunlock;
alteruserhridentifiedbyhr;
9)使用hr用户连接sqlplus,
Connecthr/rh;
Selecttable_namefromuser_tables;
Select*fromemployees
10)删除数据库
先以管理员身份登录数据库,再删除
Dropdatabase
Oracle上机练习二
一、ORACLE登录
oracle11g只有B/S模式,要使用必须先登录。
有两种常用方式登录数据库:
EM和SQL*PLUS;
1、EM方式登录
打开浏览器,在地址栏中输入http:
//:
1158/em
例如:
http:
//localhost:
1158/em
进入EnterpriseManager11g登录窗口。
以SYSDBA身份登录Oracle数据库。
2、SQL*PLUS方式登录
单击“开始”>“所有程序”>“Oracle–Oracle11g_home”>“应用程序”>“SQL*Plus”
在登录窗口中输入system帐号与口令
二、使用数据库
ORACLE数据库在使用之前,必须启动数据库;启动数据库的用户必须具有SYSDBA系统权限。
启动过程分为三个阶段:
实例的启动,数据库的加载,数据库的打开。
1、启动数据库
Startup:
Startupnomount根据初始化参数文件中的参数值,启动数据库实例。
Starupmount将实例与数据库物理文件相关联,根据参数文件中control_files参数所记录的控制文件名称和路径,找到并打开所有的控制文件,只要有一个控制文件格式错误或无法打开就不能进入安装阶段。
Startupopen:
正常启动方式。
打开控制文件中记录的所有数据文件和联机重做日志文件,只要有一个文件无法打开,就不能进入该阶段。
Startupforce:
强制启动方式。
数据库正常启动无法完成时使用该方式。
Startuprestrict:
限制启动方式。
此时数据库只供那些拥有RESTRICTEDSESSION权限的用户访问,其他用户暂时无法访问。
Startuppfile:
带初始化参数的启动方式,此方式首先读取参数文件,然后按照参数文件中的设置启动数据库。
2、为未加载数据库的实例加载数据库
alterdatabasemount;按回车
3、将处于未打开状态的数据库设置为打开状态
alterdatabaseopen;按回车
4、关闭数据库
Shutdownnormal默认关闭方式,等待当前活动的所有用户断开数据库连接后才能关闭数据库
Shutdowntransactional在完成当前事务处理后断开所有用户连接,关闭数据库
Shutdownimmediate当前活动的任何未提交的事务处理被退回,并断开所有用户的活动连接
Shutdownabort立即断开所有用户的连接,终止执行当前正在运行的任何SQL语句,关闭数据库
三、以其他用户的身份登录
1、以管理员的身份登录
Connect用户名/密码assysdba
2、以管理员身份解锁其他用户
alteruser用户名accountunlock;
3、以管理员身份为其他用户更换密码
alteruser用户名identifiedby新密码;
4、以其他用户身份登录
Connect用户名/密码
四、oracleEM的管理
设置实例名命令
ORACLE_SID=ORCL(orcl实例名,也是服务名)
创建一个EM资料库
emca-reposcreate
重建一个EM资料库
emca-reposrecreate
删除一个EM资料库
emca-reposdrop
配置数据库的DatabaseControl
emca-configdbcontroldb
删除数据库的DatabaseControl配置
emca-deconfigdbcontroldb
重新配置dbcontrol的端口,默认端口在1158
emca-reconfigports
emca-reconfigports-dbcontrol_http_port1160
emca-reconfigports-agent_port3940
先设置ORACLE_SID环境变量后,启动EMconsole服务
emctlstartdbconsole
先设置ORACLE_SID环境变量后,停止EMconsole服务
emctlstopdbconsole
先设置ORACLE_SID环境变量后,查看EMconsole服务的状态
emctlstatusdbconsole
配置dbconsole的步骤
emca-reposcreate
emca-configdbcontroldb
emctlstartdbconsole
重新配置dbconsole的步骤
emca-reposdrop
emca-reposcreate
emca-configdbcontroldb
emctlstartdbconsole
五、SQL*PLUS命令大致可以分为交互式命令、编辑命令和报表命令。
1、常用的交互式命令:
命令缩写
说明
ACCEPT(ACC)
读取整行数据并存储在一个给定的变量中
CLEAR(CL)
重置或清除当前值某些特定选项,如清除缓冲区或屏幕内容等
CONNECT(CONN)
连接到数据库
DISCONNECT(DISC)
断开到数据库的连接
DESCRIBE(DESC)
列出表、视图或同义词的列信息以及函数和过程的定义信息
EDIT(ED)
打开文本编辑器
HOST(HOS)
在SQL*PLUS环境中执行主机命令
PAUSE(PAU)
输出一行信息,并等待用户按ENTER键
PROMPT(PRO)
输出提示信息或空行
SQLPLUS
在命令提示符下启动SQL*PLUS工具
SET
修改SQL*PLUS工具的系统变量值和环境变量值
SHOW(SHO)
显示SQL*PLUS工具的系统变量或当前环境参数值
STARTUP
启动ORACLE数据库命令
SPOOL
将查询结果存储到一个文件中
SHUTDOWN
关闭数据库
EXIT或QUIT
退出SQL*PLUS
2、常用的编辑命令
命令缩写
说明
APPEND(A)
在缓冲区当前行的后面添加文本
CHANGE(C)
用新文本代替旧文本
DEL
删除缓冲区的一行或多行SQL语句
GET
调用SQL文件,载入缓冲区
LIST(L)
列出缓冲区的SQL命令
RUN(R)
执行当前缓冲区的命令
SAVE(SAV)
把缓冲区的内容保存为SQL脚本文件
@<脚本名>
载入SQL脚本并执行
START
执行PL/SQL过程和程序包
EXECUTE
3、常用的报表命令
命令缩写
说明
COLUMN(COL)
设置查询结果中列的输出格式
REPHEADER(REPH)
设置报表的标题
REPFOOTER(REPF)
设置报表的页尾格式
TTITLE(TTI)
设置页的标题格式
BTITLE(BTI)
设置页的页尾格式
六、实验步骤
1、更换为HR用户的身份登录,在SQL*PLUS中建一个BOOK表。
编号书名作者出版社出版日期价格
10000001oracle数据库系统管理李代平等冶金工业出版社2003/1/138.00
10000002oracle中文版入门与提高赵松涛人民邮电出版社2002/7/135.00
10000003oracle开发指南JohnCasteel清华大学出版社2004/4/349.00
注:
日期输入用函数to_date(‘2003-01-01’,’yyyy/mm/dd’)格式输入
2、缓冲区操作
select*frombook;
saved:
\book.sql保存至缓冲区中
del删除缓冲区中的内容
r执行缓冲区中的内容
getd:
\book.sql
r
3、格式化输出命令
(1)Coltitleformata30heading‘书名’justifyright;
Colauthorformata20heading‘作者’justifyleft;
Selecttitleauthorfrombook;
(2)rephcenter‘图书信息表’
Rephright‘制表人:
XX”
SELECTtitle,author,publishfrombook;
(3)ttitlecenter‘雇员表信息’;
Btitleright‘每页页尾’;
Selectfirst_name,last_namefromhr.employees;
4、事务控制命令
(1)提交事务
Setautocommiton自动提交
Commit;显示提交
(2)设置保留点
保留点是设置在事务中的标记,把一个较长的事务划分为若干个短事务。
在事务需要回滚操作时,通过设置保留点的方法将事务只回滚到某个保留点。
语法格式为:
SAVEPOINT保留点名
例:
Insertintoscott.emp(empno,ename,job)values(7878,’john’,’programee’)
Savepointsp1;
Select*fromscott.emp;
Savepointsp2;
Deletefromscott.empwhereename=’BUTTON’;
Commit;
(3)回滚事务
格式:
rollback;
例:
Insertintoscott.emp(empno,ename,job)values(7879,’XXX’,’programee’)
Savepointsp1;
Select*fromscott.emp;
Savepointsp2;
Deletefromscott.empwhereename=’XXX’;
ROLLBACKTOSP2;
5、授权命令
(1)、创建一个用户TEMPUSER
CREATEUSERTEMPUSER
IDENTIFIEDBYORACLE
(2)向用户授予连接数据库系统权限
GRANTCREATESESSIONTOTEMPUSER;
(3)向用户授予对对象“HR.BOOK”的SELECT权限,并以用户TEMPUSER连接到数据库,
GRANTSELECTONHR.BOOKTOTEMPUSER;
CONNECTTEMPUSER/ORACLE;
SELECT*FROMHR.BOOK;
(4)撤销向用户TEMPUSER授予的系统权限,
REVOKESELECTONHR.BOOKFROMTEMPUSER;
ORACLE上机实验三
管理数据库
一、数据文件
在数据库创建阶段,至少创建两个数据文件。
其中一个用于SYSTEM表空间,存放数据字典数据;另一个用于SYSAUX表空间,存放数据字典的辅助数据。
用户可以从dba_data_files和v$datafile等数据字典中了解到数据文件的有关信息。
例:
SQL>