
scripts
文章平均质量分 60
juatinhai
这个作者很懒,什么都没留下…
展开
-
自动FTP脚本
经常需要将FTP 整合到SHELL脚本中,来达到自动上传、下载文件的功能,使用FTP 命令的 -i -n参数配合 echo 命令,能以脚本方式执行自动执行平常需要一个一个手动键入的FTP 命令,不需要手工输入用户名密码后,再一个一个命令键入来操作。FILE_DIR=$1(echo "open 192.168.13.253 62001 user root原创 2013-10-24 10:18:03 · 955 阅读 · 0 评论 -
查询长事务SQL
下面SQL 查询数据库中正在执行大于N秒的事务信息:with ltr as ( select to_char(sysdate,'YYYYMMDDHH24MISS') TM, s.sid, s.sql_id, s.sql_child_number, s.prev_sql_id, xid,原创 2013-11-01 20:10:14 · 3324 阅读 · 0 评论 -
ORACLE 实时TOP SESSION查询
查询目前正在运行的SESSION的TOPSQL,不是很准,但是够用,感觉比从ASH里面查更直观一点,一直想结合OS 的ps 命令写个脚本直接找出TOP CPU 进程的SQL,但AIX 的ps 命令出来的CPU占用率更TOPAS 显示差太多,阀值很不好定。with tsql as (select s.sid, s.BLOCKING_SESSION lk_s原创 2013-10-30 17:25:11 · 1418 阅读 · 0 评论 -
批量生成添加分区语句
维护的ORACLE 10G数据库中分区表几十上百个,当需要添加新分区的时候非常麻烦,就写了下面两个简易的SQL语句来生成批量添加分区的脚本,如在新增分区时想索引放在另外表空间,对每个索引要先执行下面语句:--ALTER INDEX IDX_TABXX MODIFY DEFAULT ATTRIBUTES TABLESPACE P_IND_03_P2011;按天分区:原创 2013-10-23 09:52:17 · 3256 阅读 · 0 评论 -
DIFF AWR TOPSQL
有时候应用版本更新后想用SQL获取最近几天的AWR 报告中比较某天某个时段TOP SQL 的情况,从中比较出来每个时间段的TOPSQL 是否有异动,如果出现新的比较异常的SQL ,可以从此结果集中发现加以分析处理 select DT, HH, SNAP_ID, schema, SQL_ID,原创 2013-10-26 09:52:59 · 1279 阅读 · 0 评论 -
查看未绑定变量SQL
执行频繁的SQL 没有采取绑定变量,ORACLE将频繁发生硬解析,如果SGA采用自动管理,SHARED POOL 将会很大,更加增加ORACLE 对内存管理的消耗,这个时候最好在应用优化代码前,先将SGA设置为手动管理。用下面提供的SQL 抓取没有使用绑定变量执行非常频繁的SQL。原创 2013-10-26 17:21:59 · 1877 阅读 · 0 评论 -
用SHELL 查看spid执行SQL
使用OS命令 top / topas(AIX) / glance(HP-UX) 看到TOP PROCESS 的时候,想立即知道某些一直在TOP 中的ORACLE进程是那个应用发出、在跑什么、在经历什么等待事件、耗时多久,下面这个脚本可以完成。将下面脚本存在ssql.sh中,给执行权限使用方法:./ssql.sh 33903 /* 33903 是从TOP命令看到的 spid*/原创 2013-10-23 13:59:09 · 1062 阅读 · 0 评论 -
定位行锁源头
有时候因为应用程序逻辑问题,导致数据库中出现大量行锁,这个时候开发需要DBA快速找到源头,在紧急情况下立即进行KILL来解决问题。行锁问题的分析不单是找到源头的SESSION ID,还需要获取XID、LOCK TABLES‘S ROWID、及SQL_TEXT 来定位具体交易,或许还需要通过LOGMINER进行挖掘分析找到问题根源。下面这个SQL 只是定位行锁源头,并记录事务XID找到源原创 2013-10-23 19:05:30 · 1091 阅读 · 0 评论 -
使用SQL获取ASH/ADDM/AWR报告
有时候想直接在SQLPLUS中看ASH/ADDM/AWR报告,用下面方法还是比较方便,因为AWR数据在数据库中默认只保留7天,即使设置保留30天,可能有时候我们需要进行性能对比分析需要保留时段之前的AWR,那么我们可以采用脚本定时将AWR报告输出保存。原创 2013-10-26 17:31:33 · 2774 阅读 · 0 评论 -
AWK中引用单引号几种方式
From :The GUN Awk User's Guide $ awk 'BEGIN { print "Here is a single quote " }'Here is a single quote $awk 'BEGIN { print "Here is a single quote " }'Here is a single quote $awk转载 2013-10-26 09:50:46 · 2427 阅读 · 0 评论