`
jhyimu2005
  • 浏览: 181648 次
  • 性别: Icon_minigender_2
  • 来自: 苏州
社区版块
存档分类
最新评论

PLSQL执行sql的几种方法

 
阅读更多
plsql很方便我们执行sql。下面就简单介绍我常用的几种(当然每次svn的分支也可以ant脚本自动执行某个文件下的所以sql文件)

首先打开plsq的命令窗口

1)执行sql文件(可以把需要执行的sql放一个文件中)

输入 @'' 

在单引号中输入sql文件的路径既可,比如D:\db下的jbpm.oracle.sql文件,见下图(sql文件内容是select * from system_menu r where r.menu_name='销售订单' ;)
2)导入dmp文件。导入dmp文件前先删除对应的user(下面以test_user为例)

drop user test_user cascade;
$ impdp system/test123@SYSTEM directory=data_pump_dir schemas=test_user dumpfile=date.DMP REMAP_SCHEMA=test_user:test_userTABLE_EXISTS_ACTION=replace logfile=imp.log;
alter user test_user identified by 123456;





3)当需要重新从正式版数据库到数据到测试版时,我们需要重启测试版服务器或者kill掉应用程序服务器(比如tomcat)的session连接

v$session 这张表可以查找到连接 oracle 数据库的应用程序基本信息。因此可以通过该表来kill掉相应程序的session

如果你想kill到连接到用户 test_user ,可以执行下面的sql: select * from v$session r where r.USERNAME=‘test_user’ ;

然后kill对应的session'就行了,参考下面的截图:





比如你要kill 第一条;就执行下面的sql :  alter system kill session '21,77' ;   //因为sid, serial#.这2列很唯一的。





下面补充一些连接oracle的应用程序信息和oracle 操作 session 情况。      

1.查找到连接 oracle 数据库的应用程序基本信息。



select sid, serial#, 
username, --连接用户名 
program, --应用程序名
machine, --机器名
osuser, --操作系统用户
logon_time --登录时间
from v$session;

   2.如何查看session级的等待事件?

当我们对数据库的性能进行调整时,一个最重要的参考指标就是系统等待事 件。$system_event,v$session_event,v$session_wait这三个视图里记录的就是系统级和session级的等待 事件,通过查询这些视图你可以发现数据库的一些操作到底在等待什么?是磁盘I/O,缓冲区忙,还是插锁等等。

通过如下sql你可以查询你的每个应用程序到底在等待什么,从而针对这些信息对数据库的性能进行调整。
Select s.username,s.program,s.status,se.event,se.total_waits,se.total_timeouts,se.time_waited,se.average_wait
from v$session s, v$session_event se
Where s.sid=se.sid And se.event not like 'SQl*Net%' And s.status ='ACTIVE'And s.username is not null



3.oracle中查询被锁的表并释放session
SELECT A.OWNER,A.OBJECT_NAME,B.XIDUSN,B.XIDSLOT,B.XIDSQN,B.SESSION_ID,B.ORACLE_USERNAME, B.OS_USER_NAME,B.PROCESS, B.LOCKED_MODE, C.MACHINE,C.STATUS,C.SERVER,C.SID,C.SERIAL#,C.PROGRAM
FROM ALL_OBJECTS A,V$LOCKED_OBJECT B,SYS.GV_$SESSION C
WHERE ( A.OBJECT_ID = B.OBJECT_ID ) AND (B.PROCESS = C.PROCESS ) ORDER BY 1,2

释放session Sql:
alter system killsession'sid,serial#'
alter systemkillsession'379,21132'
alter systemkillsession'374,6938'

4.查看占用系统io较大的session
SELECT se.sid,se.serial#,pr.SPID,se.username,se.status,se.terminal,se.program,se.MODULE,se.sql_address,st.event,st.p1text,si.physical_reads,si.block_changes
FROM v$session se, v$session_wait st,v$sess_io si,v$process pr
WHERE st.sid=se.sid  AND st.sid=si.sid AND se.PADDR=pr.ADDR AND se.sid>6 AND st.wait_time=0 AND st.event NOT LIKE '%SQL%' ORDER BY physical_reads DESC

5.找出耗cpu较多的session
select a.sid,spid,status,substr(a.program,1,40) prog,a.terminal,osuser,value/60/100 value
from v$session a,v$process b,v$sesstat c
where c.statistic#=12 and c.sid=a.sid and a.paddr=b.addr order by value desc
      6.另外oracle是否运行可以用sql语句查出:

select   status   from  v$instance;
其中,status可能返回三种值:open(数据库打开),mount(数据库已经加载,但还没有打开),started(数据库进程已经启动,但是还没有加载),这个数据字典可以在数据库没有打开的情况下查询,但是需要用sys用户执行。
反应时间,请求数需要具体说明到底是那个参数。你可以参考字典;v$status,v$session(看当前有多少个连
分享到:
评论

相关推荐

    使用plsql查看执行计划

    Oracle在执行一个SQL之前,首先需要看一下SQL的执行计划,然后在按照执行计划执行SQL,分析执行计划的工作是由优化器来执行的,在不同的条件下,一个SQL可能存在多条执行计划,但是在某个特定的时间点,特定的环境下...

    plsql导出数据到excel的三种方法

    plsql导出数据到excel常用的三种方法,(1)直接导出;(2)转换导出方式;(3)导出后转换格式;

    PL/SQL Developer

     工具——PL/SQL Developer为简化日常开发专门提供了几种工具。使用这些工具,您可以重新编译全部不合法对象、查找数据库源中文本、导入或导出表格、生成测试数据、导出文本文件、监控dbms_alert和dbms_pipe事件、...

    Oracle_PLSQL语言基础

    PL/SQL是ORACLE对标准数据库语言的扩展,ORACLE公司已经将PL/SQL整合到ORACLE 服务器和其他工具中了,近几年中更多的开发人员和DBA开始使用PL/SQL,本文将讲述PL/SQL基础语法,结构和组件、以及如何设计并执行一个PL...

    自动生成Insert,Update,Delete等SQL,批量操作字符,实用小工具

    2. 可执行SQL,跟Microsoft SQL Server Management Studio执行SQL功能一样; 3. 根据查询出来的表格,选择行之后可任意生成Insert,Update,Delete等SQL,生成SQL可直接运行; 4. 生成Insert,Update,Delete等SQL的...

    PLSQLDeveloper下载

    工具——PL/SQL Developer为简化日常开发专门提供了几种工具。使用这些工具,您可以重新编译全部不合法对象、查找数据库源中文本、导入或导出表格、生成测试数据、导出文本文件、监控dbms_alert和dbms_pipe事件、...

    PLSQL Developer 13(instantclient_11_2).rar

    PLSQL Developer 13(instantclient_...随着时间的推移,这些文档已经有了几种格式。到目前为止,已经有了 MS 帮助文件、Oracle 书籍文件、Adobe PDF 文件和 HTML 文件。在将来,Oracle 也许还会选择使用另外一种格式。

    PLSQL Developer 10.0.4.1708〖附中文补丁和注册机〗

     工具——PL/SQL Developer为简化日常开发专门提供了几种工具。使用这些工具,您可以重新编译全部不合法对象、查找数据库源中文本、导入或导出表格、生成测试数据、导出文本文件、监控dbms_alert和dbms_pipe事件、...

    PLSQL Developer 13 (便携版本64 bit).rar

    PL/SQL Developer 13是一个集成开发...随着时间的推移,这些文档已经有了几种格式。到目前为止,已经有了 MS 帮助文件、Oracle 书籍文件、Adobe PDF 文件和 HTML 文件。在将来,Oracle 也许还会选择使用另外一种格式。

    PLSQL Developer 10.0.5.1710〖附中文补丁和注册机〗

     工具——PL/SQL Developer为简化日常开发专门提供了几种工具。使用这些工具,您可以重新编译全部不合法对象、查找数据库源中文本、导入或导出表格、生成测试数据、导出文本文件、监控dbms_alert和dbms_pipe事件、...

    PLSQL Developer(免安装、汉化版,很好用的) 8.0.3.1510.rar

     工具——PL/SQL Developer为简化日常开发专门提供了几种工具。使用这些工具,您可以重新编译全部不合法对象、查找数据库源中文本、导入或导出表格、生成测试数据、导出文本文件、监控dbms_alert和dbms_pipe事件、...

    PLSQL基础word

    PL/SQL是ORACLE对标准数据库语言的扩展,ORACLE公司已经将PL/SQL整合到ORACLE 服务器和其他工具中了,近几年中更多的开发人员和DBA开始使用PL/SQL,本文将讲述PL/SQL基础语法,结构和组件、以及如何设计并执行一个PL...

    PLSQL Developer10.0.0.1963.zip

    PL/SQL Developer是一个集成开发环境...随着时间的推移,这些文档已经有了几种格式。到目前为止,已经有了 MS 帮助文件、Oracle 书籍文件、Adobe PDF 文件和 HTML 文件。在将来,Oracle 也许还会选择使用另外一种格式。

    PLSQL Developer 7.1.5

     工具——PL/SQL Developer为简化日常开发专门提供了几种工具。使用这些工具,您可以重新编译全部不合法对象、查找数据库源中文本、导入或导出表格、生成测试数据、导出文本文件、监控dbms_alert和dbms_pipe事件、...

    PL/SQL Developer8.04官网程序_keygen_汉化

     PL/SQL Developer为简化日常开发专门提供了几种工具。使用这些工具,您可以重新编译全部不合法对象、查找数据库源中文本、导入或导出表格、生成测试数据、导出文本文件、监控dbms_alert和dbms_pipe事件、浏览会话...

    PL_SQLDeveloper11 64位.zip

    PL/SQL Developer 11是一个集成开发...随着时间的推移,这些文档已经有了几种格式。到目前为止,已经有了 MS 帮助文件、Oracle 书籍文件、Adobe PDF 文件和 HTML 文件。在将来,Oracle 也许还会选择使用另外一种格式。

    SQL必知必会(第3版)--详细书签版

    他具有计算机行业20多年工作经验,多年来撰写了十几本技术图书,其中不少是世界畅销书,已被翻译为十几种文字。除本书外,他撰写的《正则表达式必知必会》也即将由人民邮电出版社出版。读者可以通过他的个人网站...

    Toad 使用快速入门

    可以查看SQL语句的执行情况:通过下方的AutoTrace窗口 ,看到SQL语句的实际执行结果和执行效率。 支持历史SQL(F8) :可以方便的查询以前执行过的SQL,不用反复重新输入。  可以执行匿名块,存储过程,从...

    orcale常用命令

    Oracle数据库有哪几种启动方式 说明: 有以下几种启动方式: 1、startup nomount 非安装启动,这种方式启动下可执行:重建控制文件、重建数据库 读取init.ora文件,启动instance,即启动SGA和后台进程,这种启动...

    Oracle数据库学习指南

    19.Delphi 3_0中连接数据库的三种方式 20.远程数据库的访问 21.监控数据库性能的SQL 22.简单实现数据库表空间的备份或迁移 23.简析REDO LOGFILE 24.理解和使用Oracle 8i分析工具-LogMiner 25.哪些初始...

Global site tag (gtag.js) - Google Analytics