SHELL中执行Oracle SQL语句查询性能视图

查询alert日志出现错误

#!/bin/bash

loadsql="SELECT count(1)
FROM  v\$diag_alert_ext
WHERE
  originating_timestamp > ( sysdate - interval ‘1‘ HOUR )
 and
  ( message_text LIKE ‘%error%‘
OR message_text LIKE ‘%ORA-%‘
OR message_text LIKE ‘%terminating the instance%‘
OR message_text LIKE ‘%CRS-%‘);"

loadsql="$loadsql"
result=`sqlplus -s /nolog  <<EOF
        set echo off feedback off heading off underline off;
		conn / as sysdba;
        $loadsql
        exit;
EOF`

echo $result

 查询session

原文地址:https://www.cnblogs.com/elontian/p/11643403.html

时间: 2024-08-02 04:33:51

SHELL中执行Oracle SQL语句查询性能视图的相关文章

存储过程中执行动态Sql语句

存储过程中执行动态Sql语句 MSSQL为我们提供了两种动态执行SQL语句的命令,分别是EXEC和sp_executesql;通常,sp_executesql则更具有优势,它提供了输入输出接口,而EXEC没有.还有一个最大的好处就是利用sp_executesql,能够重用执行计划,这就大大提供了执行性能,还可以编写更安全的代码.EXEC在某些情况下会更灵活.除非您有令人信服的理由使用EXEC,否侧尽量使用sp_executesql. 1.EXEC的使用 EXEC命令有两种用法,一种是执行一个存储

代码中批量执行Oracle SQL语句

今天在写一个工具(winform),作用是批量的INSERT OR  UPDATE ORACLE数据库中的一个表. 执行的时候老是报错“[911] ORA-00911: invalid character” 我把SQL语句拷贝出来放到PL SQL中去执行,又是对的,因为测试时正好就一条语句,而且我生成语句的时候每句末尾都加了";". 百度了一下, 说是分号的问题,果断去掉分号执行,是对的. 可是总感觉一大段SQL不分割,多条的时候应该会有问题(没测试)而且可读性也差,就又查了批量执行的

SQl语句查询性能优化

[摘要]本文从DBMS的查询优化器对SQL查询语句进行性能优化的角度出发,结合数据库理论,从查询表达式及其多种查询条件组合对数据库查询性能优化进行分析,总结出多种提高数据库查询性能优化策略,介绍索引的合理建立和使用以及高质量SQL查询语句的书写原则,从而实现高效的查询,提高系统的可用性. [关键词]SQL查询语句,索引,性能优化 1.引言 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,索引的运用与复杂视图的编写等体会不出SQL语句各种写法的性能优劣,但是应用系统实际应用后,随

怎样SQL存储过程中执行动态SQL语句

MSSQL为我们提供了两种动态执行SQL语句的命令,分别是EXEC和sp_executesql;通常,sp_executesql则更具有优势,它提供了输入输出接口,而EXEC没有.还有一个最大的好处就是利用sp_executesql,能够重用执行计划,这就大大提供了执行性能,还可以编写更安全的代码.EXEC在某些情况下会更灵活.除非您有令人信服的理由使用EXEC,否侧尽量使用sp_executesql.1.EXEC的使用 EXEC命令有两种用法,一种是执行一个存储过程,另一种是执行一个动态的批处

关于oracle sql语句查询时表名和字段名要加双引号的问题

oracle初学者一般会遇到这个问题. 用navicat可视化创建了表,可是就是不能查到! 后来发现②语句可以查询到 ①select * from user; 但是,我们如果给user加上双引号就可以查到了! ②select * from "user"; 难道oracle跟mysql等不同,查询时候一定要加双引号?那这样不是很麻烦!于是经过查找资料得出如下结论: 1.oracle表和字段是有大小写的区别.oracle默认是大写,如果我们用双引号括起来的就区分大小写,如果没有,系统会自动

FORM中执行动态sql语句

今天在 FORM BUILDER中用 execute immediate 'sql staments'执行动态sql时报错. 后查发现form中用forms_ddl函数执行动态sql,并且此函数暗含了commit: 详细介绍如下: 一.FORMS_DDL函数 FUNCTION FORMS_DDL(statement  VARCHAR2); 用于动态执行SQL语句与PL/SQL语句 注意事项: 1.参数statement的最大容量不能超过32K. 2.DDL类型的SQL语句,暗含一个commit命

关于oracle sql语句查询时 表名和字段名要加双引號的问题具体解释

  作为oracle的刚開始学习的人相信大家一定会遇到这个问题.如图:          明明就是navicat可视化创建了表,但是就是不能查到!这个为什么呢?           select * from user;           可是,我们假设给user加上双引號就不一样了!   select * from "user"; 却能够等到以下的结果.如图:          到这里我想大家肯定会说:难道oracle跟mysql等不同,查询时候一定要加双引號?那这样不是非常麻烦!

shell 中执行Oracle查询和执行存储过程

[oracle@master2 test]$ more b.sh #!/bin/sh #数据库地址 ip=192.168.1.250 port=1521 sid=orcl username=c##scott password=tiger oracle_name="${username}/${password}@${ip}:${port}/${sid}" #查询一个值 QUERYRETS=`sqlplus -s /nolog <<EOF set echo off feedba

laravel中查看执行的SQL语句

今天想查看laravel框架中执行的SQL语句,百度了一圈,才找到,这文档真心看着不爽,下面上查看方法 DB::connection()->enableQueryLog(); $navObj = new NavModel(); $data = $navObj->where($where)->select($this->field)->orderBy('id', 'desc') ->get(); $log = DB::getQueryLog(); dd($log); di