ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Toad 使用入门(转载简化)

Toad 使用入门(转载简化)

原创 Linux操作系统 作者:yxg0313 时间:2008-04-10 11:32:02 0 删除 编辑

Toad 使用入门(转载简化)

一、 Toad功能综述

Oracle 应用程序的开发过程中,访问数据库对象和编写SQL程序是一件乏味且耗费时间的工作,对数据库进行日常管理也是需要很多SQL脚本才能完成的。Quest Software为此提供了高效的Oracle应用开发工具-ToadTools of Oracle Application Developers)。在Toad的新版本中,还加入了DBA模块,可以帮助DBA完成许多日常管理工作。它最大的特点就是简单易用,访问速度快。使用 Toad,我们可以通过一个图形化的用户界面快速访问数据库,完成复杂的SQLPL/SQL代码编辑和测试工作。ToadOracle开发专家专门为开发人员而设计,是一个功能强大、结构紧凑的专业化PL/SQL开发环境。

Toad 主要具有如下特点:

1、  模式浏览:

模式浏览功能可以让我们快速访问数据字典,浏览数据库中的表、索引、存储过程。Toad 提供对数据库的快速访问,使用极为方便,用户界面简洁,结构安排合理。当我们点击一个单独的数据库对象,Toad立即显示此对象的详细信息。例如,当我们点一个数据库的表,所有和此表相关的索引、约束、存储过程、SQL语句以及和其他表的相互引用关系都在同一界面显示出来。为了简化操作,用户可以在浏览窗口操作数据库对象。

2、  SQL 编辑器:

SQL 编辑器的主要功能是编辑、运行和调整SQL语句。TOAD 的高级编辑窗口包括众多的特性来提高开发人员编写SQL语句的产品化程度。例如,简单地生成代码模板,在编写SQL前自动发现包的内容和列的名字等等。
    SQL
编辑器包括一个编辑窗口和运行结果窗口,允许开发人员在编辑的过程中测试运行结果。SQL编辑器中不仅包括标准的编辑命令,也包括一些增强的功能,如快速查询表中的字段、将SQL语句的内容格式化等等。这个窗口可以处理大到4GB 的内容,对大的开发项目来说非常有用。便捷的书签可以让开发人员非常容易地找到相关位置。在运行结果窗口可提供用户定义的配置功能,支持LONG LONG RAW列,可以将数据卸出到磁盘、打印数据、编辑数据等等。

3、  存储过程编辑器:

存储过程编辑器的主要功能是编辑、编译、测试、调试存储过程和触发器。TOAD提供语法标识、错误标识和其他很多易于使用的功能,如在弹出窗口显示表名、列名和Oracle函数。和其他的 PL/SQL 编辑工具不同,TOAD 允许在一个文件中操作多个数据库对象,可以编译一个对象、编译多个对象、编译到当前光标、从光标开始编译。在运行出现错误时,存储过程停止到有问题的语句。用户可以使用快捷方式或模板来快速编写PL/SQL,也可以根据需要生成自己的模板。使用Toad可以非常方便地进行编辑工作,可如设置书签、取消注释、格式化SQL语句等等。

4PL/SQL Debugger选项:

Toad 提供简单易用的PL/SQL 调试功能,可以节省开发人员在大型项目中用于开发和测试的宝贵时间,提高应用开发的质量。在存储过程开发的过程中,Toad可以逐行编辑、调试和运行代码。运行时可以根据需要输入参数,观察相关参数的变化来检查存储过程的正确性。在调式过程中,Toad 可以通过窗口显示所有的断点、参数, 调用堆栈和输出参数。使用Toad,非常容易检测到存储过程的错误,开发人员可以一步一步运行PL/SQL语句来识别问题。调试会话可以和其他程序会话同时进行。

5、  SQLab Xpert Option

帮助开发人员优化SQL,为他们提供各种优化模式下SQL执行计划,并且能够给出优化的建议,能够比较各种模式下实际的SQL运行结果,帮助开发人员真正高速地开发高效地代码。

Toad 还可以外挂一些别的产品,比如PL/Formatter, RevealNet Knowledge Base , SQL Impact等,这些都能够和Toad紧密集成,共同提供了一个完美的集成开发环境。新版本还新增加了DBA模块,更加拓广了Toad这个产品的适用范围。

二、系统要求

1、完整安装的SQL*Net 2.0或者Net8

2 Oracle 7.3 或者更高,在任何硬件平台上。

3、需要一个DBA用户帐号

三.安装

1TOAD and Personal Configuration Files to PC

默认安装选择,完成一个完整的Client端的安装,把所有需要的文件拷贝到本地Toad目录。

2Personal Config Files to PC, read TOAD from Network Server

从网络服务器读取Toad程序,在本地计算机安装一些自定义的文件,并且创建到服务器文件的快捷方式,一般不推荐使用这个方式,而且要求网络服务器已经配置。

3TOAD to Network Server

Toad安装到网络服务器上,以便这样别的用户能够进行Personal Config Files to PC, read TOAD from Network Server这种方式的安装。

根据需要使用到的特性,需要运行一些脚本(都在Toad\temps目录下)

1、如果需要用Toad来查看执行计划,必须运行脚本PrepToad.sql或者notoad.sql

2、如果希望专门建立一个Toad 用户来存放Toad需要使用的对象的话,就运行preptoad.sql

3、如果希望在当前连接用户模式下建立toad需要使用的对象的话,就运行notoad.sql

4、注意,如果是选择了专门建立toad这个用户的话,需要先修改一下脚本,指定用户的默认表空间和临时表空间。

5、需要使用Oracle8i Profile analyzer,必须运行ToadProfiler.sql

6、需要加强Toad的安全性,必须运行ToadSecurity.sql

四、Toad使用快速入门

1 Schema Browser

Schema browserToad的极为有特色的模块。在schema browser的帮助下,可以方便的浏览数据库内部的各类数据库对象,比如表,索引,序列,存储过程等,而且可以方便的倒出DDL语句和进行各种修改,重建工作。定位到某一类对象上,这列对象允许的操作都会自动列出来。

特色:

支持Oracle数据库里面所有对象的新建、查看、修改,集成了几乎对所有数据库对象的管理所需要的功能:

表:a\完备的建表向导,不用输入冗长的语法,更加全面地替你考虑。

b\可以修改表的各种逻辑和物理属性,修改列的属性,增加列,删除列(Oracle8i里面),修改表的物理存储属性,TruncateDrop等。

c\可以生成建表的完整的DDl语句,包括存储信息,权限信息,约束,索引和触发器等,而这些手工很难做到。

d\ 可以方便的对表进行分析,查看表地所有信息,可以有条件的倒出表里面的数据,并且保存为sql语句。

e\可以方便的对表进行重组,可以完成exp/imp作不到的事情,而且更少地人工参与,更加安全。

视图\存储过程:

a\可以保存建立视图、存储过程的语句为文本。

b\重新编译失效的视图,存储过程,修改视图的定义语句等。方便的查看存储过程的代码,相互依赖关系,权限信息等保存为文本等。

回滚段:

a\简洁明了的onlineoffline状态,方便地online/offline操作

b\详细的回滚段物理信息和当前状态。

c\可以方便的修改物理存储属性

表空间:

  a\Tablespace Map;直观的显示数据物理的在表空间上的分布

b\直观的查看各个表空间的利用率、剩余空间、破碎情况等信息

c\可以进行各种alter操作:online, offline, 增加数据文件,改变数据文件大小,改变物理存储属性等

2 SQL Editor:

 a\允许同时打开多个编辑窗口,同时编辑多个SQL语句

b\支持同时连接到多个数据库,同时对多个数据库进行操作

c\允许编辑SQLPLSQLJAVAHTML和文本

d\使用书签功能,可以在大量SQL语句里,快速定位某个语句所在位置

e\SQL Editor本身具有强大的编辑功能,非常方便编辑SQL语句

f\强大的快捷键支持和工具栏快速按钮的支持,更加高效编写(很多快捷键可以自己定义,在View ->options ->SQL Editor里面)

g \能够根据前面的条件,智能推测需要输入的代码,可以做到某种程度的代码智能填充

h\把鼠标定位到表/视图/存储过程名称之上,按F4,可以打开对象描述窗口,方便的查看表和视图的定义,存储过程的源代码

i\非常容易对SQL语句的分析其执行计划:单击工具栏上的 按钮就可以看到Explain Plan的结果

j\支持部分SQL*Plus命令,可以方便的执行大量的为SQL*Plus编写的数据库脚本

k\可以通过SQLab xpert来对当前SQL语句进行全面的分析,给出各种合理的调优意见,只需要单击工具栏上的Tuning按钮

l\可以方便的保存,打开和运行SQL脚本

m\支持对查询结果进行修改

n\可以把查询结果以多种格式保存起来,可以保存为HTML,纯文本,XLS等多种格式

o\很容易的得到SQL函数的列表和用法描述(Show SQL help Window 按钮)

p\可以查看SQL语句的执行情况:通过下方的AutoTrace窗口,看到SQL语句的实际执行结果和执行效率

q\支持历史SQL(F8)  :可以方便的查询以前执行过的SQL,不用反复重新输入

r\可以执行匿名块,存储过程,从下方的窗口看到DBMS_OUTPUT的结果

3 Stored Procedure Editor:

a) 打开存储过程编写器的几个途径:

a\强大的自定义设置:从保留字的显示方式,到自动替换,到各种快捷键的定义等,用得越熟越顺手。

b\自动用不同颜色显示SQLPL/SQL关键字,语法清晰明了,可根据自己的习惯来具体定制各类关键字的具体显示方式。可以自定义存储过程得模板,在新建存储过程的时候,自动生成程序的框架可以方便的调用Schema Browser,把鼠标定位于某个对象上,F4Schema Browser打开该对象的详细描述,帮助顺利快速开发程序。支持代码自动更正,如输入ndf,自动替换成NO_DATA_FOUND,输入the自动替换成the,类似的自动替换还可以自己修改和添加。

c\方便的左边行号显示,单击左边行号就可以实现调试断点的增加/删除

d\对各种快捷键的支持,不但包括常见的编辑操作,还可以有自己定义的PLSQL块的支持(自己定义快捷方式)。如可以定义CTRL+SHIFT+D:弹出所有PLSQL Block的类型,可以自己选择

e\可以在一个集成开发环境里面,一边编码,一边调试,不用多处切换

f\方便的同时打开多个存储过程,通过页面快速切换

g\快速编译存储过程,快速定位错误所在,自己选择是否同时编译依赖的存储过程

h\内置对PL/Formatter,可以用PL/Formatter对存储过程进行格式化,并且可以提供存储过程的概要分析和修改建议

i\PL/Formatter可以对现有的存储过程进行高速的格式化,使所有的存储过程都符合同样的编写标准,这样既有利于提高程序的可读性,避免不同人写的模块的风格上的很差异。PL/Formatter 还有助于提高程序的模块化,增强程序的结构清晰度,增强SQL的共用性。PL/Formatter 还可以帮助完成PL/SQLOracle版本之间的管理。

    j\内置RevealNet Knowledge Base,单击鼠标右键就可以打开,快速得到技术上的支持,解决难题

k\PL/SQL:包含整个开发过程中可能遇到问题的答案

l\Code Library:大量的严谨的PL/SQL代码例子和现成过程,完全源代码提供各种错误处理模块可供参考,各类字符日期函数包含1400多个主题
m\Admin
:解答DBA日常工作中80%的常见问题,覆盖2400多个主题,从网络到性能优化,从备份恢复到Error message
eg:如何对存储过程进行Debug

1. 点击菜单栏的第三个按钮: ,打开Procedure Editor

2. 点击Procedure Editor的菜单栏的 按钮,调出需要调试的存储过程

3. 单击工具栏上的按钮 ,输入需要传入的参数,如果不需要传入参数,可以直接单击工具栏上的按钮: ,直接开始调试,如下图输入传入参数:

4. 单击菜单栏的按钮: ,可以单步跟踪,也可以定义一个断点,直接运行到断点在单步执行,在存储过程运行的过程中,当前语句会高亮度显示,并且把鼠标指针定位到变量上,Toad自动显示该变量的当前值。

5. 可以随时中止程序的执行,只要点Debug ->Halt Execution,或者菜单栏上的按钮,就可以中止程序的执行

6  当碰到一个存储过程调用另外一个存储过程的时候,可以选择跳过(Step Over)  ,这样就直接运行那个被调用的存储过程,返回调用结果,继续这个存储过程的调试,也可以选择Trace Into ,这样就打开被调用的存储过程,进一步深入调试那个被调用的子存储过程。如果需要保持Debug信息,在编译的时候应该选择Compile Dependencies with Debug Information,就是Procedure Editor工具栏最右边的那个按钮 。

7. 支持对变量实时追踪:使用Watch:可以在运行前,或者运行过程中对某个变量进行实时跟踪:Add Watch,把鼠标定位到该变量上,然后点击Debug ->Add  Watch At Cursor,该变量就会出现在Debug状态窗口上,而且实时反应该变量的当前值。如上图中的变量v_empname。可以运行时刻修改8. 断点支持:

单击存储过程需要加断点的地方的行号,该行颜色变红,输入参数,单击执行按钮 ,可以直接运行到断点处,可以不必逐行追踪,更加高效率的进行调试。Debug Option还支持条件断点,只有当满足条件的时候才会在那个地方停止,否则就好像不存在这个断点一样继续运行。

注意DBMS_OUTPUT.PUT_LINE的结果只有当程序执行完成以后才会出现,在程序执行过程中是没有结果的。

5SQL Modeler

 SQL Modeler可以帮助开发人员很容易的写出各种复杂的SQL语句,只需通过简单的拖动鼠标,就能够写出复杂的SQL语句来。

eg

1. 选出表emp, dep, manager

2. 用鼠标拖住empemp_nameemp_no, depname,managername

3. 双击criteria窗口的emp_no condition列,弹出窗口,输入查询条件,比如emp_no=3

4. 由于结果里面不希望emp_no出现,双击emp_no列的visible,设置为false

5. 这样就出来了需要的查询,现在可以运行查询得到结果,对查询SQL进行分析,或者在SQL Editor里面打开这个SQL,或者保存为SQL Model文件,或者再进一步处理,比如加排序, 汇总等。

6DBA方面的功能:

 ToadDBA日常管理方面的能力是非常强大的,可以帮助DBA安全快速地完成许多日常工作,还有Toad特有的一些小工具能完成一些普通方法很难做到的功能。

a) Database Monitor

提供直观的Oracle数据库运行状况,包括下面这些详细信息:可以看到逻辑IO,物理IO,各个状态的session数目,SGA的利用率,共享池的使用状况,各类事件的等待状况,以及各类事件随着时间的变化情况

b) Instance Monitor:可以用来检查本地tnsnames.ora文件里面定义的所有节点、Listener和数据库的运行状态和版本等相关信息。可以远程启动、关闭数据库(如果设置了password验证方式)。

c) Unix Monitor:可以监控Unix机器的运行状况比如详细的机器启动时间,CPU利用率,主要的进程以及这些进程占用的资源,主要的磁盘IO等。

d) Trace/Kill session:方便的查看所有的连接用户相关信息:比如终端,程序,连接时间等;对某个用户进行跟踪,查看用户执行的SQL语句,查看语句的执行计划;方便的查阅系统的Lock对象,有没有什么等待别的事务释放锁的情况,并能够轻易查出等待什么用户的什么事件结束,那个用户执行的是什么SQL;查看回滚段的使用状态,什么用户,什么语句,使用的什么回滚段,多少读写量等。

e) Oracle Parameter:可以方便的查看Oracle系统的参数:是否默认值,参数作用的简要描述,是否可以用alter session/alter system来动态改变,对于那些可以动态改变的参数,可以双击鼠标来进行修改

f) NLS_PARAMETER:方便的查看sessioninstancedatabase一级的NLS参数值,可以动态修改sessionNLS参数值。

g) Extents:可以查看某个用户下的表和索引的详细的存储情况;发现那些占用大量空间的表和索引,可以考虑使用相应的对策,比如分区;发现那些即将达到max_extents的表和索引并可以及时纠正;发现那些索引和表处于同一个表空间的情况,并可以及时纠正。

h) Tablespace:直观的查看每个表空间的利用率,总空间,已使用空间,剩余可是用空间以及默认存储参数,和表空间是否需要整理等信息;查看每个表空间的状态,组成的数据文件,以及每个数据文件的详细信息;查看每个表空间里面存在的对象和这些对象的详细存储特性。

i) Tablespace Map: 图形化的显示表空间里面各个表/索引所占用的空间,各个segment的大小,segment是否连续等信息,非常直观。

j)Server Statistics:可以非常直观的看到系统总体运行情况,迅速定位系统瓶颈所在;可以查看系统范围内各类等待事件的状况,查看每个连接会话的状况。

k) Pinned Code:我们知道,频繁执行的大的存储过程最好Pin起来,这样可以避免被Oracle在内存不足的情况下换出内存,避免动态加载,也避免flush shared pool的时候被清出内存。根据每个模块的大小,执行次数,决定是否要把某个存储过程PIN起来。

l) Control Files:可以查看当前系统有哪几个控制文件,以及控制文件内部记录的详细信息。(实际上就是V$CONTROLFILE, V$CONTROLFILE_RECORD_SECTION

m) Redo Log Manager: 可以方便的查看LOG的组,当前日志,每个组里面的成员名字,大小,方便的增加、删除log组,切换当前日志,对日志归档进行具体的控制。可以在这个界面里完成几乎所有的对redo log的操作。

n) Repair chained rows: Chained rows影响系统性能,处于系统性能的考虑,需要把chained rows修复成普通的表的行。使用repaie chained rows,就可以比较容易的做到这一点。选择需要分析的表,然后分析一下,看有没有chained rows,如果有,点击repairToad就帮你把那些chained rows给修复了。

o) Identify Space Deficits:如果系统出现1659,1653错误,就是一个不合格的DBA。但是要即时预见这些错误,还是有一定的难度的。有了Toad的这个小工具之后,一点某个表空间,就知道这个表空间里面的剩余自由空间是否允许任何表能够扩展到下一个extent。并能够在发现问题之后,直接改正问题。

p) Estimate Table/Index Size:数据库的物理规划中,表/索引的存储子句的定义是非常重要的,影响系统。但是没有什么工具的话,要为表定义合理的存储子句也不容易。在Toad里面,专门有工具帮助你合理定义表/索引的存储情况。

q) Analyze All Tables:基于CBOSQL需要CBO提供最优化的执行路径来提高程序的执行效率,但是假如对表进行大量的DML操作之后,不及时更新表的统计数据,这时候CBO就不能选择最为有效的执行路径,导致程序执行效率低。用ToadAnalyze Alltables这个工具,可以一次分析整个模式下面的所有表,有丰富的控制选项,包括是采用估计还是完全,是否同时分析索引,估计的话,采用多大的百分比等。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10756358/viewspace-232343/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-03-06

  • 博文量
    34
  • 访问量
    44995