- 博客(60)
- 资源 (1)
- 收藏
- 关注
原创 游标
带变量的游标declaren number:=1.5;CURSOR cur2 IS select ename, sal, sal*n newsal from emp where deptno=20;c cur2%rowtype;beginopen cur2;loopfetch cur2 into c;exit when cur2%notfound;• DBM
2014-04-30 11:02:18 889
原创 根据一张表去更新另一张表的数据
t1表COL1 COL2 COL3----- ----- ----------A1 1 abcdefA2 2 abcdefA3 3 111111
2014-04-29 16:37:42 1362
原创 正则表达式
ASCII码表create table ascii_tab(n number(5), s varchar2(4));insert into ascii_tab select rownum-1, chr(rownum-1) from dual connect by rownumcommit;
2014-04-20 21:26:03 722
原创 分析函数
**********************************************************OraDev05_p1.mp4 分析函数概述OraDev05_p2.mp4 排名和相邻类分析函数OraDev05_p3_1.mp4 统计类分析函数(上)OraDev05_p3_2.mp4 统计类分析函数(下)OraDev05_p4.mp4 分析函数语法及规范和习惯
2014-04-14 13:58:20 1013
原创 外连接
-------------------外连接----------------------------9i前:(+)9i后:(+)、left outer join\right outer join\full outer join(ANIS标准.推荐)例子:查询出所有部门的雇员信息select b.deptno,b.dname,a.* from emp a,dept b where
2014-04-12 13:58:43 685
原创 exits函数
update emp set sal=sal*1.2 where exists (select 1 from dept where deptno=emp.deptno and loc='DALLAS'); 等同于update emp a set sal=sal*1.2 where exists (select 1 from dept b where b.deptno=a.deptno a
2014-04-12 10:28:28 1066
原创 物化视图
普通视图:本身没有数据,数据来源于基表,不占用空间 (DBA_views)物化视图:有自己的数据,占用空间物化视图的优点是性能好(不用再去执行建立视图的子查询),缺点是占用物理空间1、创建物化视图eg:create materialized view mv_1 asselect d.dname ,sum(e.sal) sum_sal,avg(e.sal)
2014-02-26 22:27:06 745
转载 等待事件buffer busy waits
非空闲等待之:buffer busy waits事件参数说明:事件号事件名参数一参数二参数三145buffer busy waitsfile#block#9i - 原因码10g
2014-02-10 14:52:47 1034
原创 关于index fast full scan 和 index full scan
先说下两个重要的等待事件:1、db file sequential read ---大多数情况下,读索引块或通过索引读取一个数据块,会记录这个等待,单块读2、db file scattered read ---大多数情况下,是由于全表扫描(full table scan)或者快速全索引扫描(index fast full scan)引起的,多块读Index Fa
2014-01-11 16:02:44 2292
原创 燕达医院,搭建药店测试库
1、根据主任给的逻辑备份搭建一个完整的库(全库导入)imp system/a file=1.dmp log=1.log full=y buffer=100000000 feedback=100002、导出一个只有结构没有数据的dmp文件exp system/a file=2.dmp log=2.log full=y buffer=100000000 feedback=10000 ro
2014-01-04 15:30:43 1253
原创 EM上的按钮是方框的问题
1、在目录$ORACLE_HOME/jre/lib和$ORACLE_HOME/jdk/jre/lib下执行以下操作:①cp font.properties font.properties.bak②cp font.properties.zh_CN.Redhat font.properties2、清理目录$ORACLE_HOME/oc4j/j2ee/oc4j_applica
2013-12-31 10:09:22 912
原创 剖析一个事物的操作流程(undo的作用)
概念:Undo段的组成:段头、回滚块事务IDselect xid,xidusn,xidslot,xidsqn,ubablk,ubafil from v$transaction;事务表(undo段头块中)undo段的第一个数据块,每一个回滚段最多可以47个事务查看回滚段段头块地址select * from v$rollname;select header_bloc
2013-12-16 22:45:12 1228 1
原创 检查点队列与日志的对应情况,实例恢复
首先想一个问题:检查点队列到底有什么用?其实就是为了提高实例崩溃恢复的速度的~!有了检查点队列我们就能确定控制文件中记录的LRBA(增量检查点,ckpt每个3秒写入控制文件),这个LRBA就是我们实例恢复的起点~!在8i之前,没有检查点队列,在实例崩溃的时候,oracle会把整个的current redo log跑一遍,这样太费时间了,所以引入了检查点队列~!上图:
2013-12-05 23:49:37 1147
原创 exp逻辑全备份脚本for AIX
#!/bin/kshexport ORACLE_BASE=/opt/oracleexport ORACLE_HOME=/opt/oracle/product/10.2.0/db_1export ORA_CRS_HOME=/opt/oracle/product/10.2.0/crs_1export ORACLE_SID=orcl1export PATH=$PATH:$ORACLE_HOME
2013-12-01 12:03:05 1152
原创 weblogic应用服务器
当前端并发比较大的时候,如果每个用户的请求都直接连接到数据库,数据库要针对每个用户开一个server process,这样的开销是非常大的所以对于大量并发的系统来讲,在数据库之前建一个缓冲用户请求的中间件服务器是很必要的,这就是我们通常讲的3层或是多层架构常见的中间件服务器有weblogic 、websphere等*使用这样一套软件的目的是用来构建一个缓冲池,在数据库之前对大量
2013-11-25 22:38:22 670
原创 oracle日志的作用和机制
日志的作用:①恢复 、②事物的快速提交1、已经提交的事物不会丢失:commit ---->把该事物产生的所有日志写入redolog中后才结束(LGWR) ---实现了事物的快速提交,写日志就ok了,而不用着急写脏块2、LGWR绕过OS缓存直接写入磁盘,写入到存储的写缓存中,而且log buffer写磁盘是顺序写,基本没有寻道时间,所以很快!3、LG
2013-11-24 20:19:40 3373
原创 触发器做审计、系统触发器简单介绍
------------------------------------------------------触发器做审计、系统触发器----------------------------------------------------------------------------------------------系统级触发器 触发事件表:触发器事件 触发时间 触发条件
2013-11-15 13:49:39 1559
原创 触发器
练习 1:DML触发器---------------------------------------------------------------------------------create or replace trigger e_updatebefore update of sal on efor each row begin if updating then
2013-11-13 16:45:00 680
原创 利用REMOVE_CONSTANTS函数,查询共享池中哪些SQL没有绑定变量
首先创建一个表,用于存放整理过的数据:SQL> create table t1 as select sql_text from v$sqlarea; Table created给表t1增加一个字段:SQL> alter table t1 add sql_text_wo_constants varchar2(1000); Table altered
2013-11-08 23:34:19 911
转载 oracle 查找/删除重复行
查询及删除重复记录的SQL语句 1、查找表中多余的重复记录,重复记录是根据单个字段(Id)来判断 select * from 表 where Id in (select Id from 表 group byId having count(Id) > 1) 2、删除表中多余的重复记录,重复记录是根据单个字段(Id)来判断,只留有rowid最小的记录 DEL
2013-11-02 10:35:57 1023
原创 Library Cache Latch和Shared Pool Latch
library cache我上图中,oracle去5号链上遍历,会把5号链锁住(Library Cache Latch),这样的话如果咱们吧shared_pool设的很大,library cache中缓存的sql/执行计划就会很多,链就会很长,那么遍历的时间就长,锁住链的时间就会很长。来~~~咱们捋一下sql执行的过程:说明:我们说的链也可叫bucket
2013-11-01 00:38:13 1746
转载 关于shared pool的深入探讨(六)-高Latch竞争案例 (摘自eygle的博客)
研究了几天shared pool,没想到忽然就撞到问题上来了.作为一个案例写出来给大家参考一下吧.问题起因是公司做短信群发,就是那个18万买的4000字的短信小说(嘘,小声点,我也没看过...).群发的时候每隔一段时间就会发生一次消息队列拥堵的情况在数据库内部实际上是向一个数据表中记录发送日志.我们介入来检查数据库的问题,在一个拥堵时段我开始诊断:
2013-10-31 21:36:54 1176
原创 OLTP和OLAP概况
还是总结一下吧,有些东西不总结一下永远不是自己的!!OLTP(在线事务处理系统):特点:用户并发量大,用户请求的sql密集、重复且都是小的操作,会伴随DML操作 -----sql多而小、重复率高侧重点:强调于对用户操作的快速响应,强调内存的各种指标的命中率,强调绑定变量的使用 -----强调内存设计的重要性、绑定变量很
2013-10-30 23:28:39 679
原创 shared pool的4031错误解决办法
解决/减少share pool的ORA-4031错误的方法:1、alter system flush shared_pool; ----治标不治本2、共享SQL减少硬解析(绑定变量、cursor_sharing) 3、select * from v$db_object_cache where sharable_mem > 10000and (type =
2013-10-28 23:44:01 750
原创 shared pool 总结
两个概念:1、chain 2、chunkSHARED POOL--------------------------------------------------------------------------------------------------------------------------------------
2013-10-24 23:46:58 893
原创 关于客户端长时间自动断开的问题
我先描述一下环境和问题环境:服务器:IBM P570 AIX5.3 库:oracle 10G 做的双节点的rac 2层架构,c/s模式,客户端直连数据库,没有中间件缓冲池,服务器模式为专有模式(DEDICATED)。还有就是我们的用户都是走的内网,不对外提供服务,因为是医院,客户端都是医生、护士用的。问题描述:客户端连接数据库后,如果没有任何操作10分钟左右自己断开连接。
2013-10-23 16:35:35 4038 1
原创 PL/SQL复合类型变量的使用(record、pl/sql表、bulk collect)
标量类型变量— 复合类型1、******************************record复合类型变量的使用(用于取一行多列)*****************************************************declare --第一个变量声明 v_sal number(7,2); --第二个变量声明
2013-10-19 14:14:38 951
原创 oracle 细颗粒审计FGA
FGA ---Fine-Grained Audit ---每个FGA审计只能针对一个表或者视图grant execute on DBMS_FGA to scottconn scott/tiger--建立触发的存储过程set serveroutput on CREATE or replace PROCEDURE log_emps_salary(schem
2013-10-10 22:23:48 1478
原创 利用outline固定执行计划
登录scott创建实验用表TEST1:create table test1 (name varchar2(10));插入数据:insert into test1 values('luyang'); insert into test1(name) values('zhengda'); insert into test1(name) values('sunyi');
2013-10-08 21:03:39 642
原创 我的小金库(跬步千里)
查看_pga_max_size隐含参数:select ksppinm "NAME" , ksppstvl/1024/1024 || 'M' "Value", ksppdesc "Desc"from x$ksppi x, x$ksppcv ywhere x.indx=y.indx and ksppinm='_pga_max_size';shared_pool的组成:
2013-10-06 20:51:44 903
原创 cache buffer chain
1、执行:select * from t1 where id=1 oracle通过计算得出这行数据在1号文件24号块中2、oracle 通过计算知道这个块在2号chain上,去找,发现2号链上没有这个块3、发生物理IO,把1号文件24号块调去如内存,并把buffer header挂到2号CBC链上,在内存中取出块中的对应数据返回给用户4、这时我再执行:select * from t
2013-09-29 22:34:22 1154
原创 关于server process
在网上找个一个发现关于server process的文献真少,大多都是讲background_process的,其实server process在实际工作中还是挺重要的,尤其在对pga的调优的时候,你必须要理解server process的工作机制server process 是数据库端用于为客户端user process的提供服务的一个进程,pga就是为server process服务的
2013-09-26 12:47:55 1336
原创 RAC的日常管理命令
Oracle 的管理可以通过OEM或者命令行接口。 Oracle Clusterware的命令集可以分为以下4种:节点层:osnodes网络层:oifcfg集群层:crsctl, ocrcheck,ocrdump,ocrconfig应用层:srvctl,onsctl,crs_stat一、节点层就这么一个命令 ,osnodes,用来显示
2013-09-07 11:24:38 997
原创 关于字符集中NLS_LANG参数show parameter nls 和v$nls_parameter 中的值不一样
今天下午,在测试库上偶然发现:alter session set nls_language='american'; 后show parameter nls这个nls_language参数竟然没有变执行:select * from v$nls_parameters; (查看当前session的)这个值变了;也就是说我alter session set
2013-09-06 16:53:54 6341
转载 db file parallel write, write complete waits
SQL> select * from v$version;BANNER----------------------------------------------------------------Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - ProdPL/SQL Release 10.2.0.3.0 -
2013-09-06 12:26:52 994
转载 RAC的原理和日常管理
一、 Oracle RAC原理ORACLE RAC原理在一个应用环境当中,所有的服务器使用和管理同一个数据库,目的是为了分散每一台服务器的工作量,硬件上至少需要两台以上的服务器,而且还需要一个共享存储设备。同时还需要两类软件,一个是集群软件,另外一个就是Oracle数据库中的RAC组件。同时所有服务器上的OS都应该是同一类OS,根据负载均衡的配置策略,当一个客户端发送请求到某一台服务的li
2013-09-04 14:26:53 1061
转载 metalink简介
身为一个Oracle DBA,你必须知道什么是Metalink. Metalink是Oracle的官方技术支持站点,其网址为: http://metalink.oracle.com. Oracle公司通过该网站来支持全球的客户,据Oracle公司的统计资料,据说80%的技术问题都是通过Metalink网上解决的。 Metalink的注册并非免费。当你购买了Oracle公司的软件以后,可以根据L
2013-09-03 12:59:23 1147
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人