zoukankan      html  css  js  c++  java
  • Oracle 脚本停止进阶

    一、DBMS_JOBS

    1、查看正在运行的job;


    SELECT * FROM USER_SCHEDULER_RUNNING_JOBS 


    2、根据sid查出对应的session;


    select SID,SERIAL# from V$Session where SID='SESSION_ID';


    3、kill对应的session;


    alter system kill session '&SID,&SERIAL';


    接着把JOB删掉就可以了

    有些JOBS在被kill对应session,虽然状态已经被设置Wiekilled,但是由于还无法马上释放资源,JOBS还会继续运行。这时候如果要马上结束脚本运行,可以再进一步杀死系统进程。

    1、通过上面的命令来杀死进程,进程的状态会被置为"killed",但是锁定的资源没有被释放,那么可以在os一级再杀死相应的进程(线程),首先执行下面的语句获得进程(线程)号:

    select spid,osuser,s.program

    from v$session s,v$process p

    where s.paddr = p.addr and s.sid = 'SID'

    注:这里的就是第一段语句查出来的SID,

    执行上述语句,得出来的SPID

    2、在OS 上通关cmd命令来杀死这个进程(线程)

    1)第一种,在UNIX OS 上,用ROOT 身份执行下面的命令:

    #kill -9 728 (728 1中的语句查询出来的SPID)

    2)第二种,在WINDOWS,用orakill杀死线程,

    语法为:orakill sid thread

    注:SID,这里的SID 为你杀死该进程的数据库的实例名

    THREAD,指的是你要杀掉该进程的线程号,为1中查询出来的SPID

    例子如下:

    C:Documents and SettingsAdministrator>orakill zghx 728

    Kill of thread id 728 in instance zghx successfully signalled.

  • 相关阅读:
    PUTTY与SecureCRT的比较
    java中volatile关键字的含义
    java中引用的原理
    Java陷阱之assert关键字
    脏读 幻读 不可重复读
    JAVA 的wait(), notify()与synchronized同步机制
    线程状态转换图
    并行、并发、同步和互斥
    B-树学习笔记
    平衡二叉树及其应用场景
  • 原文地址:https://www.cnblogs.com/Nouno/p/5731624.html
Copyright © 2011-2022 走看看