十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
用以下的sql可以查询出当前session中正在运行的sql信息:
创新互联建站专注于成县企业网站建设,成都响应式网站建设公司,商城建设。成县网站建设公司,为成县等地区提供建站服务。全流程按需定制设计,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务
select
s.module,
sql_text,
sn.osuser,
sn.machine,
s.executions
from
sys.v_$sql
s,
sys.all_users
u,
v$session
sn
where
s.parsing_user_id
=
u.user_id
and
upper(u.username)
in
('username')
and
(upper(s.module)
=
'app.exe')
and
sn.sql_hash_value
=
s.hash_value
and
sn.sql_address
=
s.address
order
by
s.last_load_time
找出正在执行的JOB编号及其会话编号 SELECT SID,JOB FROM DBA_JOBS_RUNNING; 停止该JOB的执行 SELECT SID,SERIAL# FROM V$SESSION WHERE SID='SID'; ALTER SYSTEM KILL SESSION 'SID,SERIAL'; EXEC DBMS_JOB.BROKEN(JOB,TRUE);实例分析:1,查询正在运行的Job,通过查询有两个,和进程占用较多的是两个ORACLE进程符合。SQL SELECT SID,JOB FROM DBA_JOBS_RUNNING; SID JOB\x0d\x0a---------- ----------12 11616 1172,查询正在运行的job的信息SQL SELECT SID,SERIAL# FROM V$SESSION WHERE SID='12'; SID SERIAL#\x0d\x0a---------- ----------\x0d\x0a12 4SQL SELECT SID,SERIAL# FROM V$SESSION WHERE SID='16'; SID SERIAL#\x0d\x0a---------- ----------\x0d\x0a16 13,利用查询出来的job信息将job结束掉SQL ALTER SYSTEM KILL SESSION '12,4';System altered.SQL ALTER SYSTEM KILL SESSION '16,1';System altered.\x0d\x0a4,如果不希望运行上述job的话,可以将job设置为broken.EXEC DBMS_JOB.BROKEN(116,TRUE);EXEC DBMS_JOB.BROKEN(117,TRUE);
1. 在V$ACCESS视图中找到要停止进程的SID:
SELECT SID FROM V$ACCESS WHERE NAME='存储过程名称';
2. 在V$SESSION视图中查找到查出SID和SERIAL#
SELECT SID,SERIAL#,FROM V$SESSION WHERE SID='刚才查到的SID'。
3.杀掉查找出来的进程
alter system kill session 'SID,SERIAL#' immediate;
解释:进程都有唯一的进程id(SID)和序列号(SERIAL#),之后通过kill命令即可强制停止进程。
如果想正常关闭,那么最好是:先手动断开所有数据库连接(外部链接,比如访问等),关闭监听(防止再次产生外部链接),然后杀掉所有正在执行的数据库进程(数据库内部的一些,比如正在执行的执行计划等,主进程别杀啊),然后关闭外围服务,最后再用immediate关闭数据库。这样能快一些,而且相对而言数据库会正常,不会因为断开外部链接,等待进程结束等问题等待时间超长。,当然也只是快一些而已,如果数据库很大,那么还是会很慢。
其他的shutdown abort,也是一个关闭数据库的方法,不过oracle本身也不推荐,因为每次abort后数据库可能会有这样那样的问题。
再baoli一些的,就是直接关机器,关电源了。
退出循环:EXIT/RETURN
RETURN表示退出整个过程,也就是过程执行到此处结束执行,程序退出;
EXIT表示退出当前循环,继续向下执行,如果是有两层循环的话,EXIT则是退出内层循环,外层循环继续执行。
GOTO用法:
1,先设置标签 《wait_goto》
2,goto wait_goto;程序返回至wait_goto处继续执行。
启动oracle数据库步骤:首先使用oracle用户登录Linux,然后在shell命令行中执行下面的命令:第一步:打开Oracle监听$ lsnrctl start第二步:进入sqlplus$ sqlplus /nologSQL第三步:使用sysdab角色登录sqlplusSQL conn /as sysdba第四步:启动数据库SQL startup经过上面的四个步骤,oracle数据库就可以启动了。关闭数据库用 shutdown 是要等待事物结束才关闭,强制关闭用 shutdown abort。