文档章节

简单的 Oracle 脚本

周翔
 周翔
发布于 2015/04/28 00:02
字数 443
阅读 172
收藏 7

Oracle用了很久,但是一般使用还是通过PL/SQL Developer下面执行.

以前用过相关的脚本是 awrrpt.sql 生成awr报告使用.


最近有这样一个想法,写一个SQL脚本放在用户目录下,系统出问题时由同事负责执行.等我有时间时去查看相关信息.所以尝试写SQL脚本.也可以写成定时任务去处理某些事情.


中间遇到的问题:

1 字符集的问题.Windows下默认GBK编码,在数据库服务器上可能会执行报错,很可能是字符集的原因.当时使用Eclipse把字符集改成UTF-8 解决这个问题.

2 关于注释.SQL语句里注释很重要,做一引起必要的说明,不然自己被自己搞昏了头.

SQL脚本:

--初始化参数
define user = "'HLWL'";
define operate = "'zhouxianglh'";
define log_name;

--初始化设置
--显示输出
set echo on;
--指定每行长度
set LINESIZE 999;
--指定每页大小,pagesize=0,则不会显示表头
set pagesize 10000;
--显示实际执行的SQl(包含参数执行时能过 old,new 的方式分别显示)
set verify ON;
--输出文本去除首尾空格
set trimspool on;
--显示字段名称
set heading ON;
--set autotrace on;对执行SQL进行分析

--开始写入文件
select '/home/oracle/zx_'||lower(name)||'_'||&user||'_'||to_char(sysdate,'yyyy-mm-dd-hh24-mi')||'.sql' log_name from v$database;
spool &logname;
--开始执行SQL
--查找当进程,找出导致系统当前性能问题的SQL
select inst_id,sid,serial#,seq#,taddr,sql_id,sql_child_number child,username,machine,last_call_et call_et,module,
(select object_name from dba_objects where a.row_wait_obj#=object_id) object_name,action,event from gv$session a 
where a.status = 'ACTIVE' and a.username is not null order by last_call_et;

--记录操作完成
select sysdate from dual;

--关闭文件
spool off;


© 著作权归作者所有

共有 人打赏支持
周翔

周翔

粉丝 7
博文 48
码字总数 21994
作品 0
闵行
程序员
私信 提问
JavaFX明天在哪里

从java one 大会上传来的消息,其实更多的是关于javaFx2的消息。oracle没有明确的说要停止javaFX脚本语言的开发,不过似乎表达了这个想法。Oracle should either start pushing JavaFX hard ...

崔钢
2010/10/10
1K
6
Oracle Linux配置开机自启动

一、简单配置方式 在Linux系统中,安装好oracle数据库服务后,并不像在Windows系统下一样,oracle服务在默认情况下会随时系统的启动自动启动。Linux系统中,是需要用户去手动进行设置,才能实...

PeakFang-BOK
11/11
0
0
Redhat AS4下oracle10g自启动脚本设置

以redhat as4和oracle 10g为例。单机在安装过程依照oracle官方的文档一步步下来,只要设置好 参数、安装好必要的包,一般不会出什么问题。安装好了以后系统重启,oracle重启服务,网上很多人...

红薯
2009/12/26
288
0
使用delphi 开发 web(三)动态脚本里面使用数据库

在主程序里面把数据库访问控件设置并注册好,在脚本里面使用数据库就非常简单。 可以类似下面的脚本访问数据库。 <% uses SysUtils, Classes; var aaa,rndnum,bb:string; i,num:integer; be...

xalion
2012/01/05
0
0
Oracle Kafka 测试环境搭建

搭建一个 Oracle + Oracle Golden Gate + Kafka Connector 测试环境 ,把类似的oracle的增删改操作发布到Kafka上。所有工具都是有现成的。 类似于这个: https://www.pythian.com/blog/golde...

zb1481207860565
2017/02/03
3
0

没有更多内容

加载失败,请刷新页面

加载更多

Word Pattern(leetcode290)

Given a pattern and a string str, find if str follows the same pattern. Here follow means a full match, such that there is a bijection between a letter in pattern and a non-empt......

woshixin
2分钟前
0
0
Kubernetes 1.13.1快速升级

Kubernetes 1.13.1已经正式发布,快速升级(含国内镜像快速下载链接)包括升级kubeadm/kubectl/kubelet版本、拉取镜像、升级Kubernetes集群三个主要步骤。注意Kubernetes 1.12.3版本暂时不支...

openthings
5分钟前
0
0
多线程的实现方式

多线程是指 一个程序运行时,产生或使用了不止一个线程。 线程的生命周期是怎么样的,下面这张图我们可以看出些端倪: 这章我们主要讨论多线程实现的方式,基础知识部分我们可以下来再恶补。...

搬砖大侠
17分钟前
0
0
新人千万不要在 Windows 上使用 Ruby on Rails

标题:新人千万不要在 Windows 上使用 Ruby on Rails 副标题:鼓励新人在 Linux 和 Mac 上使用 Ruby on Rails ! 原则:要走寻常路,不要学美特斯邦伟! "在 Windows上 使用 Ruby on Rails "是...

Jason909
25分钟前
0
0
day177-2018-12-14-英语流利阅读-待学习

艾滋病的治愈方法是否触手可及? Daniel 2018-12-14 1.今日导读 几十年来,艾滋病一直是世界上最难对付的“超级绝症”之一,从人类历史上第一次诊断出艾滋病病例的 20 世纪 80 年代早期到 20...

飞鱼说编程
51分钟前
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部