基于Linux的oracle数据库管理 part4( shell管理 上 )
主要内容
1. shell 基础补充
2. shell脚本与 SQL*PLUS
shell 基础补充
- $(()) 中内容被看做是算术表达式, 其中的变量有没有”$”都可以, 例如 result = $((var1 + var2)) echo $((var1++))
- if condition ; then
elif condition ; then
else
fi 注意: 如果 then 另起一行写的话, 就可以不用 ; 号
- 条件测试, test, [] [[]] (()), 其中 test 等价于 [], 当使用“>”或”<”用于比较字符串的要用 [[]] 双括号
- for arg in list; do
command
done
for ((a=1; a<=100; a++))
do
sum = sum + 1
done
- while condition ; do
command
done
shell 脚本与 SQL*PLUS
- 在shell脚本中调用 sql*plus, 例如: cat sqlplus.sh
- 把 sql 查询结果赋给 shell 变量
1. 查询结果直接赋值给变量
2. 在使用exit命令退出sql*plus时, 把sql查询结果作为附加退出状态值, 这个值默认存入$?系统变量, 使用 col new_value使得SQL语句可以使用变量
在 sql*plus 中使用
column
row_name
new_value
variable_name
- 把shell程序参数传递给sql命令
使用 $1 将参数传递给sql,

- shell 中常用的 sql*plus 环境设置
-silent, 会将sql提示符及 sqlplus 信息全部不显示, 交互式不要使用
set pagesize 0
set feedback off
set heading off
set verify off 在 sql 脚本中使用了变量, 在执行这个sql脚本时, 默认会显示变量值的确认信息, 如果不需要这种信息, 就设置off
set echo off 不显示脚本内容
set termout off 不显示执行结果
- 调用 sql * plus 口令安全
将密码保存在变量内, 执行脚本时, 给予变量形参.
从文件导入口令, echo ‘tiger’ >scott.pw, chmod g-rwx, o-rwx scott.pw, 设置文件属性, 执行脚本

基于Linux的oracle数据库管理 part4( shell管理 上 )的更多相关文章
- 基于Linux的oracle数据库管理 part1( 准备及linux基础 )
主要内容 1. 安装VMware tools (好处, 显示效果增强, 从虚拟机出来不需要alt+ctrl 切换) 2. Linux 启动过程, 方便以后oracle 自动启动与关闭 3. Linux ...
- 基于Linux的oracle数据库管理 part2( 数据库 准备,安装,创建 )
主要内容 1. 准备 2. 安装 与 删除 软件 3. 创建数据库 4. 配置 SQL*PLUS 环境 准备 1. 软件包, rpm –qa , rpm –ivh *.rpm 2. 检查磁盘空间 3. ...
- 基于Linux的oracle数据库管理 part6 (backup 相关的脚本)
这里只是简单的介绍几种 备份方法 备份: 逻辑备份, 冷备份, 热备份 逻辑备份 也称作 导入(import), 导出(export), 作用是在不同的oracle数据库之间转移数据 物理备份, 就是 ...
- 基于Linux的oracle数据库管理 part3( 存储 网络 常用命令 )
主要内容 1. 常用存储模式 2. 配置网络 3. 维护指令 常用存储模式 - 文件系统 优点:管理方便, 缺点:读写慢 - 裸设备 只没有被格式化和挂载的磁盘, 只能有程序直接访问, 不能被操作系统 ...
- 基于Linux的oracle数据库管理 part5( linux启动关闭 自动启动关闭 oracle )
主要内容 1. 数据库自动启动与关闭 数据库自动启动与关闭 - 单数据库模式 启动监听器及数据库 启动脚本: #! /bin/bash su - oracle<<EOF lsnrctl s ...
- Go连接到Linux服务器进行操作-执行shell命令&&上传文件
Go连接到Linux服务器进行操作 使用密码连接Linux服务器 package main import ( "fmt" "golang.org/x/crypto/ssh ...
- 基于Linux下catalog方式的 Oracle 备份策略(RMAN)
--********************************** -- 基于Linux下 Oracle 备份策略(RMAN) --******************************* ...
- Linux 下 Oracle 内核参数优化
数据库的性能优化涉及到整个数据库运行环境的方方面面,诸如操作系统,Oracle自身,存储,网络等等几个大块.而操作系统则是Oracle稳定运行与最大化性能的基石.本文主要描述基于Linux系统下 Or ...
- 细说Linux下软件包的安装与管理
一 源码安装方式 由于linux操作系统开放源代码,因而在其上安装的软件大部分也都是开源软件,例如apache.tomcat.php等软件.开源软件基本都提供源码下载,源码安装的方式:源码安 ...
随机推荐
- C#[Serializable]在C#中的作用-NET 中的对象序列化
为什么要使用序列化?最重要的两个原因是:将对象的状态保存在存储媒体中以便可以在以后重新创建出完全相同的副本:按值将对象从一个应用程序域发送至另一个应用程序域.例如,序列化可用于在 ASP.NET 中保 ...
- Grid分组特性
Ext.onReady(function () { Ext.define('personInfo', { extend: 'Ext. ...
- POJ 3181 Dollar Dayz (完全背包,大数据运算)
题意:给出两个数,n,m,问1~m中的数组成n,有多少种方法? 这题其实就相当于 UVA 674 Coin Change,求解一样 只不过数据很大,需要用到高精度运算... 后来还看了网上别人的解法, ...
- iOS字符串大小转换
NSString *test = @"Hello World"; // 小写 NSString *lower = [test lowercaseSt ...
- 无线Ad-hoc网络的关键技术之路由(转)
无线Ad-hoc网络的关键技术之路由http://network.51cto.com/art/201003/189719.htm
- HDU 5596/BestCoder Round #66 (div.2) GTW likes math 签到
GTW likes math Memory Limit: 131072/131072 K (Java/Others) 问题描述 某一天,GTW听了数学特级教师金龙鱼的课之后,开始做数学<从自主 ...
- mysql之游标
游标 行,也不存在每次一行地处理所有行的简单方法(相对于成批地处理它们).有时,需要在检索出来的行中前进或后退一行或多行.这就是使用游标的原因.游标( cursor)是一个存储在MySQL服务器上的数 ...
- Windows PAE 寻址
PAE 就是物理地址扩展.我们常规的寻址方式是之前的将虚拟地址化为10 10 12的方式来寻址页目录,页表,页偏移,但是在开始PAE之后的寻址方式发生了改变,将32位的虚拟地址转化成 2 9 9 12 ...
- hdu2024C语言合法标识符
#include<iostream> #include<stdio.h> #include<math.h> #include<stdlib.h> #in ...
- EasyBCD 硬盘安装Pear OS
Pear OS是一个界面很像mac的Linux distro,基于Ubuntu,免费.可惜的是pear被一个大公司匿名收购,所以现在不更新啦,最后的版本是pear 8.有个pear的替代者elemen ...


