常用Oracle管理工具.ppt

上传人:牧羊曲112 文档编号:5763535 上传时间:2023-08-17 格式:PPT 页数:54 大小:436KB
返回 下载 相关 举报
常用Oracle管理工具.ppt_第1页
第1页 / 共54页
常用Oracle管理工具.ppt_第2页
第2页 / 共54页
常用Oracle管理工具.ppt_第3页
第3页 / 共54页
常用Oracle管理工具.ppt_第4页
第4页 / 共54页
常用Oracle管理工具.ppt_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《常用Oracle管理工具.ppt》由会员分享,可在线阅读,更多相关《常用Oracle管理工具.ppt(54页珍藏版)》请在三一办公上搜索。

1、第2章 常用Oracle管理工具,本章内容,SQL*Plus工具及其使用OEM的配置和使用SQL Developer,本章要求,了解SQL*Plus工具的应用掌握SQL*PLUS基本命令操作掌握OEM的配置、启动和停止掌握OEM控制台设置,2.1 Oracle企业管理器,OEM(Oracle Enterprise Manager,Oracle企业管理器)是Oracle数据库的主要管理工具,它以一个HTTP服务器方式为用户提供基于Web界面的管理工具。OEM有两个版本:管理单实例数据库的Database Control(数据库控制)Grid Control(网格控制),2.1.1 配置Datab

2、ase Control,OEM Database Control的配置有两种方法:自动配置和手工配置。使用DBCA创建数据库时,可选择“配置Enterprise Manager”自动配置OEM Database Control。,用EMCA(Enterprise Manager Configuration Assistant,企业管理器配置助手)手工配置Database Control。先设置环境变量ORACLE_SID:set ORACLE_SID=orcl创建EM资料档案库 emca-repos create配置Database Control emca-config dbcontrol

3、db访问Database Control的URL地址被记录在installreadme.txt文件中。,2.1.2 启动和停止Database Control,Database Control配置之后,在操作系统控制面板的服务下添加一项服务:OracleDBConsoleSID。使用控制面板可以启动和停止Database Control使用Oracle实用程序emctlemctl实用程序查看Database Control状态 emctl status dbconsole停止Database Control emctl stop dbconsole启动Database Control emct

4、l start dbconsole,连接Database Control确认:正确配置并启动Database Control目标数据库以及监听正在运行在浏览器地址栏内输入访问OEM的URL地址,格式为:http:/hostname:portnumber/emhostname为主机名或主机IP地址portnumber为OracleDBConsole服务的端口号详细信息可以参阅installreadme.txt中的记录,2.1.3 Database Control功能概述,见教材P47,设置OEM控制台管理员,在默认情况下,只有SYS,SYSTEM和SYSMAN三个数据库用户才能登录和使用OEM控

5、制台。其中,SYSMAN用户是OEM控制台的超级用户,是在安装OEM的过程中创建的,用于执行系统配置、全局配置等任务。通常,需要创建其他普通的OEM控制台管理员,进行OEM控制台的日常管理与维护工作。,注意:1.除SYS以SYSDBA身份登录外,SYSTEM和SYSMAN均以NORMAL身份登录!2.SYSMAN用户信息不能更改!,设置封锁期,概念Oracle封锁期允许OEM控制台管理员挂起对一个或多个目标的监控操作,以便在目标上执行定期维护操作。要封锁某个目标,则至少要对此目标具有“操作者”权限。两种方法:在封锁期列表中选择一个封锁期,然后单击“类似创建”按钮,以此为基础,快速创建。在封锁期

6、界面,选择“创建”按钮,创建一个全新的封锁期。,设置数据库首选身份证明,概念首选身份证明通过将相应目标的登录信息以加密模式存储到OEM资料档案库中,以简化对被管理目标的访问。如果为目标设置了首选身份证明,那么用户通过OEM控制台访问该目标时,不需要进行显式登录。例如,为执行备份和恢复操作而安排作业和任务时,OEM控制台可以自动从OEM资料档案库中获取主机和数据库的首选身份证明,而不需要进行登录操作。首选身份证明是基于每个用户的,因此可以保证被管理的企业环境的安全性。可以设置首选身份证明的目标包括主机、数据库实例、监听程序、代理等。,设置主机首选身份证明,概念在网络环境中,如果要利用OEM控制台

7、启动、关闭数据库,进行数据的导入、导出、备份、恢复等操作,就必须指明数据库所在的主机,并使用该主机操作系统用户登录该主机,即进行主机身份证明。如果设置了主机首选身份证明,那么执行这些数据库操作时就可以简化操作,不需要进行登录主机操作系统的操作。设置主机首选身份证明的步骤:首先进行操作系统用户权限分配;然后设置主机身份证明。,2.2 SQL*Plus,概念SQL*Plus工具是随Oracle 数据库服务器或客户端的安装而自动进行安装的管理与开发工具,Oracle数据库中所有的管理操作都可以通过SQL*Plus工具完成,同时开发人员利用SQL*Plus可以测试、运行SQL语句和PL/SQL程序。S

8、QL*Plus是一个命令行界面的查询工具,拥有自己的命令和环境。,可执行以下操作:执行SQL*Plus命令;执行SQL语句和PL/SQL语句块;格式化和保存查询结果;检查表和对象定义;开发和运行批脚本;管理数据库;执行操作系统命令。,2.2.1 SQL*Plus的启动和关闭,启动SQL*Plus在命令行上直接输入sqlplus从Oracle程序组的“应用程序开发”中选择SQL Plus启动语法格式为:sqlplus logon 其中:option部分的主要选项为-Help:显示SQL*Plus程序的使用帮助信息;-Version:显示SQL*Plus版本号;-Silent:要求以哑模式启动和运

9、行SQL*Plus。,适合在其他应用程序中调用SQL*Plus的情况!,logon参数指出登录相关信息,其格式为:用户名/口令|/连接标识符 AS SYSOPER|SYSDBA|/NOLOGstart参数指出SQL*Plus启动后立即执行的脚本文件名称及其参数,其语法格式为:url地址|脚本文件名.扩展名 参数.例如,启动SQL*Plus时以system用户登录。,注意:如果以系统用户名(如sys)登录,则必须输入登录连接的身份!,数据库认证,操作系统认证,只输入用户名,并指定要连接的数据库,输入口令,注意:为了保证口令安全,可以先不输入,等提示“输入口令”时,再输入!,关闭SQL*Plus关

10、闭SQL*Plus可以采用以下两种方法:异常关闭:直接关闭SQL*Plus窗口,或者由于其他原因导致SQL*Plus与Oracle数据库服务器之间的连接异常中断。未完成的事务被Oracle实例回滚正常关闭:执行SQL*Plus命令exit关闭。未完成事务的结束方式由SQL*Plus环境参数EXITCOMMIT的值决定:值为ON(默认值),提交事务;值为OFF,回滚。,2.2.2 SQL*Plus变量与参数配置,在SQL*Plus下可以定义变量、设置参数,参数改变当前会话的环境设置等。变量分为SQL*Plus预定义变量和用户变量。定义SQL*Plus变量define命令查看预定义变量例如,启动S

11、QL*Plus以scott用户连接数据库,查看预定义变量:SCOTTorcl SQL define,define命令定义用户变量语法:DEFINE variable_name=value例如:SCOTTorcl SQL define dept_no=10查看变量:SCOTTorcl SQL define dept_noDEFINE DEPT_NO=10(CHAR),注意:使用DEFINE定义替换变量时,1.变量只能是CHAR类型的;2.定义的同时要进行赋值。,替换变量,使用undefine命令释放变量例如:释放dept_no变量SCOTTorcl SQL undefine dept_no设置S

12、QL*Plus环境参数SQL*Plus参数也称作系统变量,它由set命令设置,用于改变SQL*Plus当前会话的环境设置。常用的参数如下:,说明:SET AUTOTRACE ON|OFF|TRACEONLYEXPLAINSTATISTICS,例如,修改SQL*Plus默认提示符:SQL SET SQLPROMPT _USER_CONNECT_IDENTIFIER SCOTTorcl_dbs 使用不同的连接字符串重新连接,SCOTTorcl_dbs conn 已连接。SCOTTdbs:1525/显示环境参数SQL SHOW ALLSQL SHOW variable_name,设置SQL*Plus

13、配置文件DBA或用户可以使用配置文件设置SQL*Plus环境,这样每次建立连接后自动运行配置文件,即可得到相同的环境设置。SQL*Plus配置文件包括两类:站点配置文件由DBA在Oracle数据库服务器上建立,文件名为glogin.sql,存储在ORACLE_HOME下的sqlplusadmin子目录内。影响连接该数据库(站点)的所有用户。用户配置文件由用户在客户端创建,文件名为login.sql,它存储于当前目录或者SQLPATH注册项所指定的目录(Windows下为%ORACLE_HOME%dbs)内。只影响当前用户。,注意:如果站点配置文件和用户配置文件对同一个参数进行设置,由于用 户配

14、置文件执行在后,所以其设置将覆盖站点配置文件中的设置。,例如,在glogin.sql内添加以下设置,使每个用户在连接后修改SQL提示符和输出的行、页数据长度。SET SQLPROMPT _USER_CONNECT_IDENTIFIER _DATE SET LINESIZE 120SET PAGESIZE 24,2.2.3 编辑执行命令,在SQL*Plus中可以编辑执行的内容分为3类:SQL*Plus命令SQL语句PL/SQL语句块SQL语句和PL/SQL语句块会暂时存放到SQL缓冲区中。编辑执行SQL语句结束编辑状态,可以执行以下任意操作:在新行的开始直接输入句点(.):只结束编辑状态,而不执

15、行SQL语句。在空行上直接按回车键:结束编辑,但不执行SQL语句。,输入分号(;):结束编辑状态并执行已输入SQL语句。在一行上输入斜杠(/):结束编辑并执行已输入的SQL语句。编辑执行PL/SQL语句块结束PL/SQL块的编辑状态:在新行的开始直接输入句点(.):只结束编辑状态,但不执行编辑的PL/SQL语句块;在新行上输入斜杠(/):结束编辑并执行已输入的PL/SQL语句块。,编辑执行SQL*Plus命令输入SQL*Plus命令后按回车键,即可结束编辑状态,并立即执行。在输入SQL*Plus命令时,可以使用缩写。常用SQL*Plus命令见教材P38表2-1。连接命令CONNECT:进行用户

16、切换或连接到新的数据库。语法:CONNECT username/passwordhoststringDISCONNECT:断开与数据库的连接。,注意:DISC命令作用仅仅是断开与数据库的连接,不退出SQL*Plus环境!,编辑命令对SQL缓冲区中的语句进行编辑显示缓冲区 LIST编辑缓冲区 APPEND将指定的文本追加到缓冲区内当前行的末尾;CHANGE修改缓冲区中当前行的文本;DEL删除缓冲区中当前行的文本;N用数值定位缓冲区中的当前行;INPUT在缓冲区当前行的后面新增加一行文本;EDIT以文本编辑器方式打开缓冲区,进行编辑。,注意:使用EDIT命令时,缓冲区中必须存在信息。,执行缓冲区

17、RUN/清除缓冲区 CLEAR BUFFER,例:在SQL*PLUS中编辑SQL缓冲区中的SQL语句。显示结果:,SQL SELECT deptno,dname 2 FROM dept;,DEPTNO DNAME-10 ACCOUNTING 20 RESEARCH 30 SALES 40 OPERATIONS,SQL L 1 1*deptno,dnameSQLA,loc 1*deptno,dname,loc,问题:增加一列查询信息,不重新输入SQL语句,如何实现?,显示结果:,SQL L 1 SELECT deptno,dname,loc 2*FROM deptSQL/,DEPTNO DNAM

18、E LOC-10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON,文件操作命令对磁盘中的脚本文件进行操作通常,将经常执行的SQL*Plus命令、SQL语句和PL/SQL程序存储到SQL脚本文件(以.sql为后缀)中,然后执行SQL脚本文件。使用脚本文件的好处:可以降低命令输入量;可以避免输入错误。脚本文件的创建 SAVE filename CREATE|REPLACE|APPEND 将SQL缓冲区内容保存到一个SQL脚本文件中脚本文件的装载与编辑 GET filename LIST|NOL

19、IST 将SQL脚本文件调入SQL缓冲区,默认路径是BIN,脚本文件的执行 START filename filename脚本文件的注释 REMARK:单行注释,放在一行语句的头部,表示该行为注释。-:单行注释。/*/:多行注释。,例:,SQL SELECT empno,ename,sal 2 FROM emp 3 WHERE empno=7844SQLSAV d:ora_codesqlscript.sql已创建file d:ora_codesqlscript.sql,SQL CLEAR BUFFERbuffer已清除SQLINPUT 1 COLUMN sal HEADING salary 2

20、 SELECT empno,ename,sal 3 FROM emp 4 WHERE empno=7844 5SQLSAV d:ora_codeiscript.sql已创建file d:ora_codeiscript.sql,把SQL*Plus命令送入缓冲区,SQLGET d:ora_codesqlscript.sqlSQL d:ora_codesqlscript.sql,RUN or/,?,注意:包含了SQL*Plus命令的缓冲 区内容无法执行,只能通过 脚本文件的执行命令来执行!,例:,SPO d:ora_codeoutputfile.txtSELECT empno,ename,salFR

21、OM empWHERE sal=1500;SPO OFF,SPO d:ora_codeoutputfile.txt APPENDSELECT empno,ename,salFROM empWHERE sal=3000;SPO OFF,注意:只有SPO OFF后,才会把屏幕输出 内容写入文件!,交互式命令替换变量使用替换变量&variable_name例:注意:替换变量为数值类型时,可以直接引用;如果为字符型或日期型,则需将替换变量用单引号引起来。不希望每次执行时都为替换变量赋值,可以使用两个“&”。例:,SQLSELECT empno,ename 2 FROM emp 3 WHERE dept

22、no=,SQLSELECT empno,ename 2 FROM emp 3 WHERE deptno=,注意:此时,只需赋值一次,可 在当前SQL*Plus环境中一直 使用!,定义替换变量,ACCEPT命令定义替换变量可以自定义提示信息,以提示用户为替换变量输入值。语法:ACCEPT variable datatype FORMAT format PROMPT text HIDE说明:PROMPT选项指定提示值,用HIDE选项隐藏输入,以便于用户输入替换变量的值。例:是否显示用值替换替代变量前后的命令文本:SET VERIFY ON|OFF,SQL ACCEPT deno NUMBER PR

23、OMPT 请输入部门编号:SQL SELECT empno 2 FROM emp 3 WHERE deptno=,绑定变量定义:指在SQL*Plus中定义,在PL/SQL程序中使用的变量。语法:VARIABLE variable_name TYPE说明:在PL/SQL中引用::variable_name赋值:EXECUTE:variable_name:=value显示:PRINT variable_name例:,SQL VARIABLE v_sal NUMBERSQL EXECUTE:v_sal:=10PL/SQL 过程已成功完成。SQL BEGIN 2:v_sal:=20;3 END;4/P

24、L/SQL 过程已成功完成。SQL PRINT v_sal V_SAL-20,-定义绑定变量v_sal,-给绑定变量v_sal赋值,-引用绑定变量v_sal,-显示绑定变量v_sal的值,格式化命令对SQL语句或PL/SQL程序执行结果的显式格式进行设置。遵循以下规则:格式化命令设置之后,将会一直起作用,直到会话结束或下一个格式化命令的设置;每一次报表结束时,应该重新设置SQL*Plus为默认值;如果为某个列指定了别名,必须使用该别名,不能使用列名。,COLUMN:控制列的输出显示格式。其中,option的选项有:CLEAR:清除所有列的显示格式FORMAT format:使用格式模型改变列的

25、显示HEADING text:设置列标题 JUSTIFY align:调整列标题的位置居左(left)、居中(center)还是居右(right)NOPRINT:显式隐藏列标题NULL:在指定位置将空值位置显示为textTRUNCATED:删除第一行的字符串WRAPPED:换行,COLUMN column|alias option,格式模型:,结果123401234$1234¥1234 1234.001,234,举例A15999999 099999$9999 L99999999.999,999,元素An90$L.,描述设置显示宽度为 n个字符每个9表是一位数字,不显示前导零表示前导零美元符号本

26、地货币符号小数点的位置千位分割符,例:显示某列的当前设置:清除某列的当前设置:TTITLE和BTITLE:设置报表的页眉和页脚。其中,text为标题的内容,用单引号引起来。可以使用Oracle系统变量:,COL ename HEADING Employee|Name FORMAT A15COL sal JUSTIFY LEFT FORMAT$99,999.99COL mgr FORMAT 999999999 NULL No manager,COLUMN ename,COLUMN ename CLEAR,TTITLE/BTITLE CENTER|RIGHT|LEFT text|OFF|ON,分两

27、行显示,SQL.LNO当前的行号SQL.PNO当前的页号SQL.RELEASE当前Oracle的版本号SQL.USER当前登录的用户名称SQL.SQLCODE 当前错误代码例:,SQL TTI CENTER Salary Report SKIP 2 LEFT 制表人:SQL.USER RIGHT 页码:SQL.PNO,SQL BTI Confidential,BREAK命令:用于去掉重复的行以及断点处跳跃指定的行数。其中:page 表示遇到断点时产生新的一页skip n 表示遇到断点时跳跃n行duplicate 显示重复值清除所有BREAK设置使用CLEAR 命令:,BREAK on colu

28、mn|alias|rowskip n|dup|page on.on report,CLEAR BREAK,例:控制记录显示分组顺序,BREAK ON deptno,SELECT deptno,enameFROM empORDER BY deptno;,DEPTNO ENAME-10 CLARK KING MILLER 20 SMITH ADAMS,注意:每次只有一个BREAK命令起作用,但一次可以在多个列上使用BREAK命令,即 BREAK ON 列名1 ON 列名2,其它常用命令显示数据库对象结构:DESCRIBE清除屏幕内容 CLEAR SCREENShift+Delete帮助命令:HEL

29、P 修改用户口令:PASSWORD 注意:任何用户都可以修改自己的口令,只有DBA身份登录的用户才可修改其他用户的口令。保存环境变量STORE SET filename CREATE|REPLACE|APPEND,说明:默认路径为BIN,执行操作系统命令在SQL*Plus命令行上调用HOST命令可以执行外部操作系统命令,这使得我们不必退出SQL*Plus就可以执行操作系统下的可执行文件。例如,下面两条语句分别查看监听状态和列出当前路径下的.sql文件。SCOTTorcl_dbs host lsnrctl status listernerSCOTTorcl_dbs host dir*.sql,总结,SQL*PLUS作用SQL*PLUS常用命令OEM的启动与登录OEM的配置,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号