锁与阻塞学习笔记
一、锁类型 按类型分,可分为排他锁(X锁)和共享锁(S锁)。 排他锁:如果一个对象被加了X锁,在这个锁被采用commit或rollback释放之前,该对象上不能施加任何其它类型的锁。 共享锁:如果一个对象被施加了S锁,该对象上可以再加其他类型的S锁,但是,在该锁释放之前,该对象不能被加任何其它类型的X锁。 按照锁定的对象来分,可分为DML锁、DDL锁与内存锁(latch)。[@more@]一、锁类型 按类型分,可分为排他锁(X锁)和共享锁(S锁)。 排他锁:如果一个对象被加了X锁,在这个锁被采用commit或rollback释放之前,该对象上不能施
oracle temp表空间增长过快的解决方法(zt)
经常有人问temp表空间暴涨的问题,以及如何回收临时表空间,由于版本的不同,方法显然也多种多样,但这些方法显示是治标不治本的办法,只有深刻理解temp表空间快速增加的原因,才能从根本上解决temp ts的问题。 [@more@]是什么操作在使用temp ts?- 索引创建或重创建. - ORDER BY or GROUP BY - DISTINCT 操作. - UNION & INTERSECT & MINUS - Sort-Merge joins. - Analyze 操作- 有些异常将会引起temp暴涨 所以,在处理以上操作时,dba需要加倍关注temp的使用情况,v$sort_segment字典可以记载temp的比较详细的使用情况,而v$sort_usage将会
oracle常用命令
oracle常用命令,放在这里以备急用[@more@]oracle里常用命令第一章:日志管理 1.forcing log switches sql> alter system switch logfile;2.forcing checkpoints sql> alter system checkpoint; 3.adding online redo log groups sql> alter database add logfile [group 4] sql> ('/disk3/log4a.rdo','/disk4/log4b.rdo') size 1m; 4.adding online redo log members sql> alter database add logfile member sql> '/disk3/log1b.rdo' to group 1, sql> '/disk4/log2b.rdo' to group 2; 5.changes the name of the o
解读CBO执行计划
Cost:CBO赋予查询计划的每个步骤的成本。CBO通过对相同查询生成许多不同的运行计划/路径进行工作并赋予每个步骤一个成本。具有最低成本的查询计划获胜。Card:Card是基数(Cardinality)的缩写,它是特定的查询计划步骤将输出的记录行数的估计。Bytes:CBO预测的每一个计划步骤将返回的数据字节数量。该值基于行数(Card)和估计的行宽。如果Cost、Card和Bytes值不存在,就清楚地表明此查询使用RBO运行。[@more@]Cost:CBO赋予查询计划的每个步骤的成本。CBO通过对相同查询生成许多不同的运行计划/路径进行工作并赋予每个步骤一个成本。具有
SQL trace(ZT)
SQL trace 工具收集正在执行的SQL的性能状态数据并记录到一个跟踪文件中. 这个跟踪文件提供了许多有用的信息,例如解析次数.执行次数,CPU使用时间等.这些数据将可以用来优化你的系统. [@more@]SQL trace 工具收集正在执行的SQL的性能状态数据并记录到一个跟踪文件中. 这个跟踪文件提供了许多有用的信息,例如解析次数.执行次数,CPU使用时间等.这些数据将可以用来优化你的系统. Q: 如 何 查 出 前 台 正 在 发 出 的 sql 语 句?A: 先 查 出 正 在 运 行 的 前 台 程 序 的 sid: sql>select sid,serial#,username,program from v$
监控数据库性能的SQL
监控数据库性能的SQL希望整理一个监控oracle性能的常用sql集锦: [@more@]1. 监控事例的等待 select event,sum(decode(wait_Time,0,0,1)) "Prev", sum(decode(wait_Time,0,1,0)) "Curr",count(*) "Tot" from v$session_Wait group by event order by 4; 2. 回滚段的争用情况 select name, waits, gets, waits/gets "Ratio" from v$rollstat a, v$rollname b where a.usn = b.usn; 3. 监控表空间的 I/O 比例 select df.tablespace_name name,df.file_name &
关于dbms_sql的使用
PL/SQL中使用动态SQL编程在PL/SQL程序设计过程中,会遇到很多必须使用动态sql的地方,oracle系统所提供的DMBS_SQL包可以帮助你解决问题。.[@more@]PL/SQL中使用动态SQL编程在PL/SQL程序设计过程中,会遇到很多必须使用动态sql的地方,oracle系统所提供的DMBS_SQL包可以帮助你解决问题。(一)介绍DBMS_SQL系统包提供了很多函数及过程,现在简要阐述其中使用频率较高的几种:function open_cursor:打开一个动态游标,并返回一个整型;procedure close_cursor(c in out integer);关闭一个动态游标,参数为open_cursor所打开的游标;procedure parse(
解读执行计划
SQL 语句的执行步骤。 1 语法分析 分析语句的语法是否符合规范,衡量语句中各表达式的意义。 2 语义分析 检查语句中涉及的所有数据库对象是否存在,且用户有相应的权限。 3 视图转换 将涉及视图的查询语句转换为相应的对基表查询语句。 4 表达式转换 将复杂的 SQL 表达式转换为较简单的等效连接表达式。 5 选择优化器 不同的优化器一般产生不同的“执行计划” 6 选择连接方式 ORACLE 有三种连接方式,对多表连接 ORACLE 可选择适当的连接方式。 7 选择连接顺序 对多表连接 ORACLE 选择哪一对表先连接,选择这两表中哪个表做为源数据表。 8
什么是联机分析处理(OLAP)
联机分析处理 (OLAP) 的概念最早是由关系数据库之父E.F.Codd于1993年提出的,他同时提出了关于OLAP的12条准则。OLAP的提出引起了很大的反响,OLAP作为一类产品同联机事务处理 (OLTP) 明显区分开来。 [@more@]联机分析处理 (OLAP) 的概念最早是由关系数据库之父E.F.Codd于1993年提出的,他同时提出了关于OLAP的12条准则。OLAP的提出引起了很大的反响,OLAP作为一类产品同联机事务处理 (OLTP) 明显区分开来。 当今的数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing)、联机分析处理OLAP(On-Line Analytical
怎样使用oracle的口令认证方式
1、把INIT.ORA中REMOTE_LOGIN_PASSWORD设置为EXCLUSIVE 或SHARED.使用EXCLUSIVE表示只有当前INSTANCE使用这个password文件。而且允许有别的用户作为sysdba登录进系统;选择SHARED,则表明不止一个实例使用这个密码文件,同时sysdba权限只能授予sys和internal这两个用户名。2、将sqlnet.ora文件中SQLNET.AUTHENTICATION _SERVICES设置为NONE,默认设置是NTS3、用orapwd命令创建口令文件,如果不知参数如何使用,直接键入orapwd看帮助。这里说一下其中entries参数的含义:其表示有多少用户要授予sysdba权限。[@more@]
ZT-Oracle的Index
索引( Index )是常见的数据库对象,它的设置好坏、使用是否得当,极大地影响数据库应用程序和Database 的性能。[@more@]索引( Index )是常见的数据库对象,它的设置好坏、使用是否得当,极大地影响数据库应用程序和Database 的性能。虽然有许多资料讲索引的用法, DBA 和 Developer 们也经常与它打交道,但笔者发现,还是有不少的人对它存在误解,因此针对使用中的常见问题,讲三个问题。此文所有示例所用的数据库是 Oracle 8.1.7 OPS on HP N series ,示例全部是真实数据,读者不需要注意具体的数据大小,而应注意在使用不同的方法后,数