- 浏览: 291431 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
bglmmz:
zhangmingming_zmm001 写道我改成这个样子了 ...
mybatis 插入时返回刚插入记录的主键值 -
Bll:
怎么刷新了项目之后,搜索还是出现这个错误……
全局搜索的时候报错problems encountered during text search -
三市白衣:
Select Substring(@S1,CHARINDEX( ...
oracle substr、instr -
vem:
thanks,原来这么简单就可以。。。。
全局搜索的时候报错problems encountered during text search -
tianbrave:
谢谢!
myeclipse 中相同变量,高亮显示
DECLARE TYPE my_session_t IS TABLE OF v$SESSION%ROWTYPE; lock_others_session my_session_t; be_locked_session my_session_t; ls_output varchar2(255) :=''; TYPE lock_others_t IS TABLE OF v$lock%ROWTYPE; lock_others lock_others_t; be_locked lock_others_t; BEGIN SELECT * BULK COLLECT INTO lock_others FROM v$lock WHERE block=1; IF lock_others.COUNT<1 THEN DBMS_OUTPUT.PUT_LINE('目前数据库中没有被其他进程锁住的进程!'); ELSE DBMS_OUTPUT.PUT_LINE('目前数据库中共有' || TO_CHAR( lock_others.COUNT) || '个进程锁住别的进程!'); DBMS_OUTPUT.PUT_LINE(''); FOR i IN 1 .. lock_others.COUNT LOOP SELECT * BULK COLLECT INTO lock_others_session FROM v$session WHERE sid=lock_others(i).sid; DBMS_OUTPUT.PUT_LINE('-----------------------------------------------------------------------------------------------------------------'); DBMS_OUTPUT.PUT_LINE('第' || i || '个锁的进程信息:'); ls_output := 'SID为' || lock_others_session(1).sid; ls_output := ls_output || ' ,登陆ORACLE帐号为 ' || lock_others_session(1).username; ls_output := ls_output || ' ,登陆操作系统帐号为 ' || lock_others_session(1).osuser; ls_output := ls_output || ' ,计算机名为 ' || lock_others_session(1).machine || ' ,'; DBMS_OUTPUT.PUT_LINE( ls_output); ls_output := ' 正在进行的操作为 ' || TO_NCHAR(lock_others_session(1).action); --使用TO_NCHAR来防止出现ORA-29275异常 ls_output := ls_output || ' 正在运行的模块为 ' || lock_others_session(1).module; DBMS_OUTPUT.PUT_LINE( ls_output); BEGIN SELECT sql_text INTO ls_output FROM v$sqltext WHERE hashvalue=lock_others_session(1).sql_hash_value and piece=0; ls_output := '准备执行的SQL语句为 ' || ls_output; --使用TO_NCHAR来防止出现ORA-29275异常 DBMS_OUTPUT.PUT_LINE( ls_output); EXCEPTION WHEN OTHERS THEN NULL; END; DBMS_OUTPUT.PUT_LINE('如果要杀掉该锁,请执行语句: ALTER SYSTEM KILL SESSION ''' || lock_others_session(1).sid || ',' || lock_others_session(1).serial# || ''';'); SELECT * BULK COLLECT INTO be_locked FROM v$lock WHERE id1=lock_others(i).id1 and id2= lock_others(i).id2 and request > 0; DBMS_OUTPUT.PUT_LINE(''); DBMS_OUTPUT.PUT_LINE('锁住了如下' || TO_CHAR(be_locked.COUNT) || '个进程:'); FOR j IN 1 .. be_locked.COUNT LOOP SELECT * BULK COLLECT INTO be_locked_session FROM v$session WHERE sid=be_locked(j).sid; DBMS_OUTPUT.PUT_LINE('***********************************************'); DBMS_OUTPUT.PUT_LINE('第' || j || '个被锁住的进程信息:'); ls_output := 'SID为' || be_locked_session(1).sid; ls_output := ls_output || ' ,登陆ORACLE帐号为 ' || be_locked_session(1).username; ls_output := ls_output || ' ,登陆操作系统帐号为 ' || be_locked_session(1).osuser; ls_output := ls_output || ' ,计算机名为 ' || be_locked_session(1).machine || ' ,'; DBMS_OUTPUT.PUT_LINE( ls_output); ls_output := ' 正在进行的操作为 ' || TO_NCHAR(be_locked_session(1).action) || ' ,'; --使用TO_NCHAR来防止出现ORA-29275异常 ls_output := ls_output || ' 正在运行的模块为 ' || be_locked_session(1).module || ' ,'; DBMS_OUTPUT.PUT_LINE( ls_output); BEGIN SELECT sql_text INTO ls_output FROM v$sqltext WHERE hashvalue=be_locked_session(1).sql_hash_value and piece=0; ls_output := '正在执行的SQL语句为 ' || ls_output; --使用TO_NCHAR来防止出现ORA-29275异常 DBMS_OUTPUT.PUT_LINE( ls_output); EXCEPTION WHEN OTHERS THEN NULL; END; END LOOP; DBMS_OUTPUT.PUT_LINE('-----------------------------------------------------------------------------------------------------------------'); DBMS_OUTPUT.PUT_LINE(''); END LOOP; END IF; EXCEPTION WHEN OTHERS THEN --通用显示错误信息 DBMS_OUTPUT.PUT_LINE(SQLERRM ((-1) * SQLCODE)); END;
感谢原创。。。。
发表评论
-
oracle 的两个替换函数 REPLACE、 TRANSLATE .
2011-12-07 22:08 21001replace就是一般意义上的字符串替换 repla ... -
oracle substr、instr
2011-12-07 22:04 3008substr Oracle中的截 ... -
Oracle DECODE函数
2011-11-28 14:54 1027Oracle DECODE函数功能很强 ... -
oracle中nvl()函数
2011-11-28 14:09 1254oracle的nvl函数的用法 ... -
oracle case when else 语法和用法
2011-11-28 14:05 1352case when else 基本结构: case n ... -
常用的命令及语句
2011-11-14 21:46 769insert /*+ append */ into 表1 no ... -
查询oracle分区表存在多少个分区
2011-11-01 16:52 1391SELECT * FROM useR_TAB_PARTITIO ... -
oracle IMP-00008 错误
2011-11-01 16:49 1683IMP-00008错误 可以通过在imp指令中指定buffe ... -
oracle在删除表空间之前删除了文件,造成不能删除用户
2011-10-28 17:55 1595oracle在删除表空间之前删除了文件,造成不能删除用户 ... -
启动/关闭linux下的oracle
2011-10-28 09:48 785启动 lsnrctl start su - oracle s ... -
修改sequence
2011-10-27 09:55 817alter sequence test_SEQ increme ... -
oracle把一个用户的权限赋给另一个用户
2011-10-27 09:42 9477在plsql中的command window下输入ed,输入以 ... -
修改 oracle xe 默认中文字符集成为:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
2011-10-24 09:37 14674修改 oracle xe 默认中文 ... -
Invalid number format for port number
2011-09-28 16:28 4517java.sql.SQLException: Io 异常: I ... -
oracle OracleDBConsoleorcl 服务
2011-09-18 14:10 1168oracle 的OracleDBConsoleorcl 服务经 ... -
查看oracle所有的表空间
2011-09-16 10:50 920select dbf.tablespace_name,dbf. ... -
Oracle的一些基本命令
2011-09-15 21:49 774用户sys/123qwe,system/qwe123QWE,s ... -
oracle 数据库锁相关查询及操作
2011-09-08 23:00 970select a.object_name||'|'||b.se ... -
分区表的一些操作
2011-09-06 21:22 935一、创建表空间 create tablespace diny ... -
数据库操作的一些命令
2011-09-06 20:42 7801、删除用户 drop user username casca ...
相关推荐
Oracle数据库是全球最广泛使用的商业关系型数据库管理系统之一,它由甲骨文公司(Oracle Corporation)开发和维护。本详细课件将引导你逐步了解Oracle数据库的基础知识,为你的入门之旅提供全面指导。 1. **Oracle...
### Oracle数据库调优配置:两种方案详解 在企业级应用中,Oracle数据库因其稳定性和高效性而被广泛采用。然而,随着数据量的急剧增长和业务需求的不断变化,优化Oracle数据库性能成为确保系统高效运行的关键。本文...
《Oracle数据库维护手册》是为相关技术人员提供的一份详尽指南,涵盖了Oracle数据库日常运行维护的各个方面。手册的目的是帮助运维人员高效、准确地管理Oracle数据库系统,确保其稳定、安全运行。 2.1 数据库启动与...
- **实例(Instance)**:实例是由SGA和一组后台进程组成的,是Oracle数据库运行的基础。启动Oracle数据库前必须先启动实例,实例可以比喻为汽车的引擎,驱动数据库的运行。 - **后台进程**:Oracle包含多个后台...
### Oracle数据库中的锁机制 #### 引言 在Oracle数据库中,锁机制是确保数据一致性和并发控制的关键组件。本文将深入探讨Oracle数据库中的锁如何工作,以及它们在多用户环境中如何防止数据冲突,保障事务的正确...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其在企业级应用中占据着重要的地位。这份"oracle数据库使用经验word"文档集成了作者在Oracle数据库使用过程中的学习和实践经验,涵盖了Oracle的基础知识、...
"从一条select语句看oracle数据库查询原理" Oracle数据库查询原理是Oracle数据库的核心机制之一,从一条select语句我们可以了解到Oracle数据库的查询过程,从客户端到服务器端的整个过程。这篇文章将一步步地解释...
在Oracle数据库管理中,了解如何检测对象被锁的情况至关重要,因为锁定可能会导致数据一致性问题,影响系统的正常运行。本文将详细介绍如何使用提供的脚本`ckobject_lock.sh`和`ckobject_lock.sql`来监控和检测...
LOCK 表明该进程锁住了某个资源,而 WAIT 表明该进程正在等待某个资源。 四、释放锁资源 当诊断出锁的状态后,可以根据情况选择释放锁资源的方法。如果发现该阻塞其他用户进程的进程是正常操作中,可以通知该用户...
### Oracle数据库常见维护问题手册-精典 #### 数据库基础 **数据库启动方式** Oracle数据库启动通常通过`SQL*Plus`工具来进行。首先确保已经安装并配置了正确的Oracle客户端环境,然后通过以下命令来启动数据库:...
在Oracle数据库管理中,了解如何检查被锁定的对象是至关重要的,因为这直接影响到数据库的性能和可用性。本文将深入探讨两个SQL查询语句,它们分别用于检查数据库表和pkg包是否被锁定,以及如何通过这些查询来识别并...
,其中 sid 和 serial# 是查询数据库引发的锁相关信息的结果。例如,使用以下命令查询锁相关信息: select username,object_name,machine,s.sid,s.serial#,logon_time from v$locked_object l,dba_objects o ,v$...
Oracle数据库管理员教程是一个针对初学者的基础教程,旨在帮助学习者掌握Oracle数据库系统的基本管理和维护技能。Oracle数据库是全球广泛使用的数据库管理系统,尤其在企业级应用中占据重要地位。本教程将涵盖以下几...
在这个专题中,我们主要探讨的是Oracle数据库中的闩锁(Latch)和锁定(Lock)机制,这两种机制都是为了实现并发操作的串行化,防止数据的破坏。 首先,串行化是数据库管理系统中确保数据安全的重要原则,即使在多...
闩锁是一种机制,用于保护Oracle数据库的核心内存结构,防止多个进程同时访问核心内存引起的冲突和死锁。 在Oracle数据库中,闩锁是通过LATCH(Latch)来实现的。LATCH是一种轻量级的锁机制,用于保护Oracle数据库...
本课程主要介绍了ORACLE数据库的基本概念和结构,包括ORACLE数据库的体系结构、内存结构、实例、会话、事务、后台进程、SQL语句执行过程等。 一、Oracle 体系结构 ORACLE数据库的体系结构主要包括物理结构和逻辑...
以上是Oracle数据库期末考试中的部分题目及其解析,这些问题涵盖了Oracle数据库的基本概念和技术,包括内存结构、数据字典、表空间管理、监听服务、SQL语言特性以及锁和并发控制等内容,是理解和掌握Oracle数据库的重要...
Oracle 杀死死锁进程是数据库管理员经常遇到的问题,本文将介绍解决 Oracle 杀死死锁进程的方法。 在 Oracle 中,死锁是指两个或多个会话在等待对方释放资源,从而导致互相阻塞的情况。死锁可能会导致数据库性能...