【ORACLE 如何查询被锁定表及如何解锁释放session】教程文章相关的互联网学习教程文章

oracle session 相关优化

导读:同学们是不是都用遇到过这种情况,一个业务系统开发期业务并发量只是估算一个值,而系统上线后这个并发量可能会出现溢出或是不够的 情况。在这种情况下我们DBA怎么给出合理的性能优化建议呢?本文就是利用数据给出session并发量的合理值。 目的:利用数据给出ORACLE性能优化session的合理值。 环境:OS: 6.1 AIXOracle: 11.2.0.4 rac on 2 nodes 1.实例启动后用户最大并发session?select SESSIONS_CURRENT,SESSIONS_HIGHWA...

oracle修改process和session数

第一步:连接服务器,输入sqlplus第二步:以sysdba身份登陆第三步:查看和修改processes和sessions参数1. 查看processes和sessions参数 select * from v$resource_limit; //查看process和sessions,更方便[c-sharp] view plaincopySQL> show parameter processes NAME TYPE VALUE db_writer_processes integer 1 gcs_server_processes integer...

oracle 获取当前session的trace文件名【代码】

获取默认文件名SQL如下:--第1种 SELECT u_Dump.Value || ‘/‘ || Lower(Db_Name.Value) || ‘_ora_‘ || V$process.Spid || Nvl2(V$process.Traceid, ‘_‘ || V$process.Traceid, NULL) || ‘.trc‘ "Trace File" FROM V$parameter u_Dump CROSS JOIN V$parameter Db_Name CROSS JOIN V$process JOIN V$session ON V$process.Addr = V$session.Paddr WHERE u_Dump.Name = ‘user_dump_dest‘ AND D...

使用Oracle基于session的临时表要注意的问题

在Oracle中有两种临时表,一种是基于session,就是当出现commit之后,数据就会被清空;一种是基于session,当session断开后,数据会被清空。--基于事务的临时表create global temporary table test ( ID number ) on commit delete rows;--基于session的临时表 create global temporary table test ( ID number )on commit preserve rows; 如果你的系统架构是三次架构,有连接池概念的,如 weblogic+oracle这种架构,其实...

ORACLE 如何查询被锁定表及如何解锁释放session

ORACLE EBS操作某一个FORM界面,或者后台数据库操作某一个表时发现一直出于"假死"状态,可能是该表被某一用户锁定,导致其他用户无法继续操作 复制代码 代码如下:--锁表查询SQLSELECT object_name, machine, s.sid, s.serial# FROM gv$locked_object l, dba_objects o, gv$session s WHERE l.object_id = o.object_id AND l.session_id = s.sid; 找到被锁定的表,解锁 复制代码 代码如下:--释放SESSION SQL: --alter system kill ...

read by other session导致oracle性能低

问题背景:客户反应oracle库很慢很慢 (read by other session可以结合db file sequential read等待事件一块优化) 1检查等待事件: set linesize 200 col username for a15 col event for a35 col program for a20col cpu_p for 99.99 select ta.*, round(ta.cpu_time / tb.total_cpu * 100, 1) cpu_usage from (select s.username, s.program, s.event, s.sql_id, sum(trunc(m.cpu)) cpu_time, count(*) sum from v$sessmetric...

oracle dblink造成远程数据库session过多【代码】

查看v$session中的session最多是哪个machine发起的,发现是省公司的数据库发起的session,找开发梳理了下业务,省公司同步dblink操作网公司表,且是通过weblogic的连接池。 哦,有点明白了,是dblink引起的,weblogic连接池是一直存在的,所以在网公司端session是不释放的,如果省公司把应用都停掉,那在网公司端的session都会释放。要验证想法,做个试验: 目标:数据库A上建dblink,修改数据库B上的表。 环境准备: 1...

ORACLE 如何查询被锁定表及如何解锁释放session

ORACLE EBS操作某一个FORM界面,或者后台数据库操作某一个表时发现一直出于"假死"状态,可能是该表被某一用户锁定,导致其他用户无法继续操作 --锁表查询SQLSELECT object_name, machine, s.sid, s.serial# FROM gv$locked_object l, dba_objects o, gv$session s WHERE l.object_id = o.object_id AND l.session_id = s.sid; 找到被锁定的表,解锁 --释放SESSION SQL: --alter system kill session ‘sid, serial#‘; ALTER sy...

oracle dblink造成远程数据库session过多【图】

查看v$session中的session最多是哪个machine发起的。发现是省公司的数据库发起的session,找开发梳理了下业务,省公司同步dblink操作网公司表,且是通过weblogic的连接池。 哦,有点明确了,是dblink引起的。weblogic连接池是一直存在的,所以在网公司端session是不释放的。假设省公司把应用都停掉,那在网公司端的session都会释放。要验证想法。做个试验: 目标:数据库A上建dblink,改动数据库B上的表。 环境准备: 1...

ORA-00031: session marked for kill 处理Oracle中杀不掉的锁

一些ORACLE中的进程被杀掉后,状态被置为"killed",但是锁定的资源很长时间不释放,有时实在没办法,只好重启数据库。现在提供一种方法解决这种问题,那就是在ORACLE中杀不掉的,在OS一级再杀。1.下面的语句用来查询哪些对象被锁:select object_name,machine,s.sid,s.serial# from v$locked_object l,dba_objects o ,v$session swhere l.object_id = o.object_id and l.session_id=s.sid; 2.下面的语句用来杀死一个进程:alter ...

oracle创建用户ORA-01045:user lacks CREATE SESSION privilege;

当你试图输入了用户名:sys 密码:通用 之后,你发现连接不上; 而输入 用户名:system 密码:通用 或者 用户名:scott 密码:tiger 的时候都可以连接,所以你认为 sys的权限没有system高; 其实正是因为sys的权限高,所以你必须以 dba的身份来登陆:sys/通用 as sysdba //可以使用数据字典user_users来查看当前用户管理的用户: select * from user_users; 而dba_users可以查...

ORACLE 如何查询被锁定表及如何解锁释放session【代码】

锁表查询SQL SELECT object_name, machine, s.sid, s.serial# FROM gv$locked_object l, dba_objects o, gv$session s WHERE l.object_id = o.object_id AND l.session_id = s.sid; 找到被锁定的表,解锁 --释放SESSION SQL: --alter system kill session ‘sid, serial#‘; ALTER system kill session ‘23, 1647‘; ORACLE 如何查询被锁定表及如何解锁释放session标签:本文系统来源:http://www.cnblogs.com/xingxing0521...

【转】查询oracle比较慢的session和sql

-查询最慢的sql select * from ( select parsing_user_id,executions,sorts command_type,disk_reads,sql_text from v$sqlarea order by disk_reads desc )where rownum<10 --查询对应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...

oracle中session的查询与删除【代码】【图】

sid,serial#,username,program,machine,status from v$session查询的结果如下,可以根据机器和登录的账号定位: 2. 杀死存在的session--这里的sid,serial根据查询的结果修改为对应的值 alter system kill session ‘sid, serial#‘ oracle中session的查询与删除标签:本文系统来源:http://www.cnblogs.com/30go/p/5878075.html

Oracle11gR2设置连接数process与会话session值【代码】

9月 28 08:59:24,486 ERROR - msg:打开数据库出错. 经查询发现需要更改数据库的连接进程数,修改方法如下: 1、以管理员身份登录sqlplus win+R,输入cmd,然后回车。 在命令行中输入:sqlplus / as sysdba 2、查看连接进程数量设置值 命令:show parameter processes; 3、查看会话数量设置值 命令:show parameter sessions; 4、修改连接进程数量设置值 命令:alter system set processes=5000 scope=spfile; 操作记录: C:\Us...