[Q]怎么快速查找锁与锁等待
[A]数据库的锁是比较耗费资源的,特别是发生锁等待的时候,我们必须找到发生等待的锁,有可能的话,杀掉该进程。
这个语句将查找到数据库中所有的DML语句产生的锁,还可以发现,任何DML语句其实产生了两个锁,一个是表锁,一个是行锁。
可以通过alter system kill session ‘sid,serial#’来杀掉会话
SELECT /*+ rule */ s.username,
decode(l.type,'TM','TABLE LOCK',
'TX','ROW LOCK',
NULL) LOCK_LEVEL,
o.owner,o.object_name,o.object_type,
s.sid,s.serial#,s.terminal,s.machine,s.program,s.osuser
FROM v$session s,v$lock l,dba_objects o
WHERE l.sid = s.sid
AND l.id1 = o.object_id(+)
AND s.username is NOT NULL
如果发生了锁等待,我们可能更想知道是谁锁了表而引起谁的等待
以下的语句可以查询到谁锁了表,而谁在等待。
SELECT /*+ rule */ lpad(' ',decode(l.xidusn ,0,3,0))||l.oracle_username User_name,
o.owner,o.object_name,o.object_type,s.sid,s.serial#
FROM v$locked_object l,dba_objects o,v$session s
WHERE l.object_id=o.object_id
AND l.session_id=s.sid
ORDER BY o.object_id,xidusn DESC
以上查询结果是一个树状结构,如果有子节点,则表示有等待发生。如果想知道锁用了哪个回滚段,还可以关联到V$rollname,其中xidusn就是回滚段的USN
[Q] 如何有效的删除一个大表(extent数很多的表)
[A] 一个有很多(100k)extent的表,如果只是简单地用drop table的话,会很大量消耗CPU(Oracle要对fet$、uet$数据字典进行操作),可能会用上几天的时间,较好的方法是分多次删除extent,以减轻这种消耗:
1. truncate table big-table reuse storage;
2. alter table big-table deallocate unused keep 2000m ( 原来大小的n-1/n);
3. alter table big-table deallocate unused keep 1500m ;
....
4. drop table big-table;
分享到:
相关推荐
本资源包包含了23个PDF文档,总计36.4M,内容全面覆盖了数据库系统的理论基础以及SQL(Structured Query Language)的实用技巧。 数据库系统是一个组织和存储数据的软件系统,它允许用户高效地查询、更新和管理数据...
1. **基础语法**:文档开头提到的SQL21(V1.0)1..14..16.16SQL17SQL.17.1721SQL23SQL24SQL.27——SELECT,表明文档可能是从基础的SELECT语句开始介绍的,这是SQL中最常用的查询语句,用于从数据库中检索数据。...
解决oracle sqldeveloper无法连接mysql、SQLServer问题,sqlDeveloper是ORACLE数据库开发工具,自带的是无法连接MS SQL Server以及mysql的,想连接的话需要第三方工具。 使用方法: 解压出来后将2个jar放入jlib...
23.SQL Server 2014COUNT和SUM()函数.mp4 24.SQL Server 2014 LEN()函数.mp4 25.SQL Server 2014随机数的产生.mp4 26.SQL Server 2014 GETDATE() GETUTCDATE().mp4 27.SQL Server 2014 CONVERT函数.mp4 28.SQL...
第23章 使用大对象 第24章 读写os文件 第25章 开发多媒体应用 第26章 开发web应用 第27章 dbms_sq动态sql 第28章 管理统计 第29章 使用数据库资源管理器 第30章 数据加密和解密 第31章 使用调度...
**Oracle SQL Developer 详解** Oracle SQL Developer 是一款强大的、免费的可视化数据库管理工具,由 Oracle 公司提供,主要用于管理 Oracle 数据库系统。版本号 "23.1.0.097.1607-x64" 表明这是一款针对 64 位...
第23章 使用大对象 第24章 读写os文件 第25章 开发多媒体应用 第26章 开发web应用 第27章 dbms_sq动态sql 第28章 管理统计 第29章 使用数据库资源管理器 第30章 数据加密和解密 第31章 使用调度...
压缩包内清单: SQL.Prompt.Keygen.exe SQLPrompt_7.0.0.40.exe ... SQLPrompt_9.5.23.12091.exe SQLPrompt 10.10.exe SQLPrompt_10.10.4.26165.exe SQLPrompt_10.11.9.27382.exe 激活说明.txt
根据给定的信息,我们可以整理出一系列关于SQL命令的详细知识点,包括常见的数据操作语言(DML)、数据定义语言(DDL)、数据控制语言(DCL)以及其他实用的SQL语句。 ### 数据操作语言 (DML) #### SELECT - **...
23、Select查询语句3 ? 24、Select查询语句—逻辑或运算符 ? 25、Select查询语句—不等于运算符 ? 26、 Select查询语句—不等于运算符2 ? 27、 Select查询语句—不等于运算符3 ? 28、 T-SQL语句中的运算符...
第23章使用大对象 第24章读写OS文件 第25章开发多媒体应用 第26章开发Web应用 第27章DBMS_SQ动态SQL 第28章管理统计 第29章使用数据库资源管理器 第30章数据加密和解密 第31章使用调度程序 第32...
23.SQL Server 2014COUNT和SUM()函数.mp4 24.SQL Server 2014 LEN()函数.mp4 25.SQL Server 2014随机数的产生.mp4 26.SQL Server 2014 GETDATE() GETUTCDATE().mp4 27.SQL Server 2014 CONVERT函数.mp4 28.SQL...
1.4.2 习题训练 23 第2章 风驰电掣——有效缩短SQL优化过程 24 2.1 SQL调优时间都去哪儿了 25 2.1.1 不善于批处理频频忙交互 25 2.1.2 无法抓住主要矛盾瞎折腾 25 2.1.3 未能明确需求目标白费劲 26 2.1.4 ...
还原数据库 23 导入数据 26 导出数据 35 创建表 39 T-SQL 语句 44 Sql 的执行机制 44 Sql的缓存机制 46 Sql 的常用的关键字和函数 47 调优 49 调优的工具 49 查看估计的执行计划 49 索引 51 利用profiler 53 调优的...
23. **数据库设计原则**:介绍关系数据库设计的基本概念,如范式理论和数据库规范化。 24. **高级查询技巧**:涵盖窗口函数、集合操作、自连接等高级查询技术,帮助提升查询效率和灵活性。 通过这24小时的学习,...
SQL 命令的基本使用和操作技巧 ...insert into teacher values('','jack','深圳一中','1975-12-23'); 本文介绍了一些基本的 SQL 命令和操作技巧,希望读者能够更好地使用 MySQL 数据库管理系统。
通过学习“23.SQL.21.日自学通”这门课程,你可以系统地掌握SQL的基础和高级技巧,从而在数据管理和分析领域提升自己的能力。这份压缩包包含的“23.SQL.21.日自学通.pdf”文件很可能是一份详尽的教程,覆盖了21天的...
### SQL效率查询知识点 在SQL性能优化领域,查询效率至关重要,尤其当数据库承载大量业务时,高效率的SQL查询能够显著提升系统响应速度并降低服务器负载。本文将围绕标题“SQL效率查询”及其描述“直接运行函数,...
### SQL时间格式转换详解 在SQL中,时间格式的转换是一项非常重要的技能,尤其是在处理日期与时间相关的数据时。本文将详细介绍SQL中的时间格式转换功能,并通过一系列示例来展示不同格式之间的转换方法。 #### 一...
23.SQL Server 2014COUNT和SUM()函数.mp4 24.SQL Server 2014 LEN()函数.mp4 25.SQL Server 2014随机数的产生.mp4 26.SQL Server 2014 GETDATE() GETUTCDATE().mp4 27.SQL Server 2014 CONVERT函数.mp4 28.SQL...