第一步:连接服务器,输入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...
获取默认文件名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,就是当出现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 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 ...
问题背景:客户反应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...
查看v$session中的session最多是哪个machine发起的,发现是省公司的数据库发起的session,找开发梳理了下业务,省公司同步dblink操作网公司表,且是通过weblogic的连接池。
哦,有点明白了,是dblink引起的,weblogic连接池是一直存在的,所以在网公司端session是不释放的,如果省公司把应用都停掉,那在网公司端的session都会释放。要验证想法,做个试验:
目标:数据库A上建dblink,修改数据库B上的表。
环境准备:
1...
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...
查看v$session中的session最多是哪个machine发起的。发现是省公司的数据库发起的session,找开发梳理了下业务,省公司同步dblink操作网公司表,且是通过weblogic的连接池。
哦,有点明确了,是dblink引起的。weblogic连接池是一直存在的,所以在网公司端session是不释放的。假设省公司把应用都停掉,那在网公司端的session都会释放。要验证想法。做个试验:
目标:数据库A上建dblink,改动数据库B上的表。
环境准备:
1...
一些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 ...
当你试图输入了用户名:sys
密码:通用
之后,你发现连接不上;
而输入 用户名:system
密码:通用
或者 用户名:scott
密码:tiger
的时候都可以连接,所以你认为
sys的权限没有system高;
其实正是因为sys的权限高,所以你必须以
dba的身份来登陆:sys/通用 as sysdba
//可以使用数据字典user_users来查看当前用户管理的用户:
select * from user_users;
而dba_users可以查...
锁表查询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...
-查询最慢的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...
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
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...
v$session中Command的数字含义。
1CREATE TABLE2INSERT3SELECT4CREATE CLUSTER5ALTER CLUSTER6UPDATE7DELETE8DROP CLUSTER9CREATE INDEX10DROP INDEX11ALTER INDEX12DROP TABLE13CREATE SEQUENCE14ALTER SEQUENCE15ALTER TABLE16DROP SEQUENCE17GRANT OBJECT18REVOKE OBJECT19CREATE SYNONYM20DROP SYNONYM21CREATE VIEW22DROP VIEW23VALIDATE INDEX24CREATE PROCEDURE25ALTER PROCEDURE26LOCK27NO-OP28RENAME29COMMENT30AUDIT OB...