当前位置: 首页 > news >正文

shell mysql命令的参数_Linux/Unix shell 参数传递到SQL脚本

在数据库运维的过程中,Shell 脚本在很大程度上为运维提供了极大的便利性。而shell 脚本参数作为变量传递给SQL以及SQL脚本也是DB

在数据库运维的过程中,Shell 脚本在很大程度上为运维提供了极大的便利性。而shell 脚本参数作为变量传递给SQL以及SQL脚本也是DBA经常碰到的情形之一。本文主要讨论了如何将shell脚本的参数传递到SQL脚本之中并执行SQL查询。

有关shell与SQL之间的变量传递,请参考: Linux/Unix shell sql 之间传递变量

1、启动sqlplus时执行脚本并传递参数

robin@SZDB:~/dba_scripts/custom/awr> more tmp.sh

#!/bin/bash

# ----------------------------------------------

# Set environment here

# Author : Robinson Cheng

# Blog :

# ----------------------------------------------

if [ -f ~/.bash_profile ]; then

. ~/.bash_profile

fi

if [ -z "${1}" ] || [ -z "${2}" ] || [ -z "${3}" ] ;then

echo "Usage: "

echo " `basename $0` "

read -p "please input begin ORACLE_SID:" ORACLE_SID

read -p "please input begin date and time(e.g. yyyymmddhh24):" begin_date

read -p "please input end date and time(e.g. yyyymmddhh24):" end_date

else

ORACLE_SID=${1}

begin_date=${2}

end_date=${3}

fi

export ORACLE_SID begin_date end_date

#Method 1: pass the parameter to script directly after script name

sqlplus -S gx_adm/gx_adm @/users/robin/dba_scripts/custom/awr/tmp.sql $begin_date $end_date

exit

robin@SZDB:~/dba_scripts/custom/awr> more tmp.sql

SELECT snap_id, dbid, snap_level

FROM dba_hist_snapshot

WHERE TO_CHAR (begin_interval_time, 'yyyymmddhh24') = '&1'

AND TO_CHAR (end_interval_time, 'yyyymmddhh24') = '&2';

exit;

logo.gif

f68f2add0b68e4f9810432fce46917b7.png

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

相关文章:

  • shell 循环 mysql_shell脚本备份mysql数据库(for循环)
  • swift 路由管理_京东商城订单模块Swift探索
  • 修改图片创建时间_Linux如何查看文件的创建、修改时间?
  • mysql 范式化_Mysql范式与反范式
  • jsp ssh mysql是什么_JSP+SSH+Mysql实现的学生管理系统
  • MySQL备机比主机binlog大_关于PostgreSQL流复制的延迟
  • python tempfile模块用不了_Python tempfile模块和线程表现不佳;我做错了什么?
  • python怎么发图文_python3开发微信企业号发送图文方法
  • java zip文件夹_【转】Java实现将文件或者文件夹压缩成zip
  • java线程接口_Java多线程相关的常用接口
  • java 字符串 宽度,用Java计算字符串的显示宽度
  • java string转gbk_Java String UTF-8 和 GBK 互换
  • java获取jsp session_前台jsp页面获取session对象
  • java执行多条linux命令_Java ProcessBuilder可以在Linux中顺序执行多个命令
  • java怎么做好看的边框_在java中怎么做出这种文本框效果
  • hexo+github搭建个人博客
  • @angular/forms 源码解析之双向绑定
  • 《微软的软件测试之道》成书始末、出版宣告、补充致谢名单及相关信息
  • 「前端」从UglifyJSPlugin强制开启css压缩探究webpack插件运行机制
  • const let
  • Docker入门(二) - Dockerfile
  • ERLANG 网工修炼笔记 ---- UDP
  • JAVA_NIO系列——Channel和Buffer详解
  • js中的正则表达式入门
  • mysql 5.6 原生Online DDL解析
  • Vue ES6 Jade Scss Webpack Gulp
  • webpack4 一点通
  • 爱情 北京女病人
  • 大数据与云计算学习:数据分析(二)
  • 电商搜索引擎的架构设计和性能优化
  • 机器人定位导航技术 激光SLAM与视觉SLAM谁更胜一筹?
  • 解析带emoji和链接的聊天系统消息
  • 面试题:给你个id,去拿到name,多叉树遍历
  • 因为阿里,他们成了“杭漂”
  • 用 vue 组件自定义 v-model, 实现一个 Tab 组件。
  • 用Node EJS写一个爬虫脚本每天定时给心爱的她发一封暖心邮件
  • 从如何停掉 Promise 链说起
  • ![CDATA[ ]] 是什么东东
  • #[Composer学习笔记]Part1:安装composer并通过composer创建一个项目
  • $HTTP_POST_VARS['']和$_POST['']的区别
  • (2)Java 简介
  • (Bean工厂的后处理器入门)学习Spring的第七天
  • (day 2)JavaScript学习笔记(基础之变量、常量和注释)
  • (JS基础)String 类型
  • (pytorch进阶之路)CLIP模型 实现图像多模态检索任务
  • (react踩过的坑)Antd Select(设置了labelInValue)在FormItem中initialValue的问题
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (附源码)计算机毕业设计SSM保险客户管理系统
  • (七)微服务分布式云架构spring cloud - common-service 项目构建过程
  • (四)linux文件内容查看
  • (转)Linux整合apache和tomcat构建Web服务器
  • (转)大型网站架构演变和知识体系
  • (转载)虚幻引擎3--【UnrealScript教程】章节一:20.location和rotation
  • .CSS-hover 的解释
  • .gitignore文件—git忽略文件