学习的点点滴滴shell+sql

无意义的脚本,大神勿喷/

[[email protected] Desktop]# vim oraclesh.sh 
#!/bin/bash
clear
#函数
test_parameter1()
{
`echo `su - oracle -c ‘sqlplus /nolog‘<<end  
        conn sys/sys as sysdba    
        select ‘-------show parameter --*******查看系统所有初始化参数******‘ sga from dual;
        show parameter; 
exit
end
``;
echo ;
echo -e "\t show parameter  --*******查看系统所有初始化参数******";
}
test_sga2()
  {
#1.用户SGA信息
#`echo `su - oracle -c ‘sqlplus / as sysdba‘<<exit
`echo `su - oracle -c ‘sqlplus /nolog‘<<end  
        conn sys/sys as sysdba    
        clear screen;
        select ‘-------show parameter sga--查看SGA参数‘ sga from dual;
        show parameter sga;
        select ‘-------show parameter sga_max_size--查看系统SGA当前最大上限‘ sga from dual;  
        show parameter sga_max_size;
        select ‘-------show sga--查看用户SGA信息‘ sga from dual;
        show sga;
        select ‘-------select sum(current_size) from v\$sga_dynamic_components--查看当前共享内存SGA总大小‘ sga from dual;
        select sum(current_size) from v\$sga_dynamic_components;
exit
end
``;
echo " ";
echo -e "\t show parameter sga  --查看SGA参数 ";
echo -e "\t show parameter sga_max_size  --查看系统SGA当前最大上限";
echo -e "\t show sga  --查看用户SGA信息";
echo -e "\t select sum(current_size) from v\$sga_dynamic_components--查看当前共享内存SGA总大小";
echo " ";
 }
test_shared3()
{
`echo `su - oracle -c ‘sqlplus /nolog‘<<end  
        conn sys/sys as sysdba    
        clear screen;
        show parameter shared_pool_size;
        select component,current_size from v\$sga_dynamic_components
        where component=‘shared pool‘;
exit
end
``;
echo ;
echo -e "\t 查看共享池大小 \n \t show parameter shared_pool_size  \n";
echo -e "\t select component,current_size from v\$sga_dynamic_components \n \t where component=‘shared pool‘";
}
test_data4()
{
`echo           `su - oracle -c ‘sqlplus / as sysdba‘<<end
                 select ‘-------select name from v\$datafile--查看数据文件‘ sga from dual;
                 select name from v\$datafile;
                 select ‘-------select name from v\$tempfile‘ sga from dual;
                 select name from v\$tempfile;
exit
end
``;
echo            -e "\n\t 查看数据文件:\n \t select name from v\$datafile; \n \t select name v\$tempfile;\n";
}

#数组
ora=(test_parameter1 test_sga2 test_shared3 test_data4)
#查询
PS3="查询信息:"
name=(
    "用户parameter初始化信息查询!                                                      "
    "用户SGA信息查询!                                                                  "
    "用户分享池大小!                                                                   "
    "查看数据文件磁盘所在位置!                                                         "
)
select i in "${name[@]}"
do
case $REPLY in
           1|2|3|4)
              clear
              ${ora[$[$REPLY - 1]]}
              echo
              ;;
           *)
              echo 
              echo "选择错误,退出!"
              exit 1;;
esac
done

[[email protected] Desktop]# sh oraclesh.sh
1) 用户parameter初始化信息查询!                                               
2) 用户SGA信息查询!                                                           
3) 用户分享池大小!         
4) 查看数据文件磁盘所在位置!        
查询信息:3
SQL> 
NAME         TYPE  VALUE
------------------------------------ ----------- ------------------------------
shared_pool_size       big integer 0
SQL>   2  
COMPONENT        CURRENT_SIZE
---------------------------------------------------------------- ------------
shared pool           369098752
SQL> Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
  查看共享池大小 
   show parameter shared_pool_size 
  select component,current_size from v$sga_dynamic_components 
   where component=‘shared pool‘
查询信息:
1) 用户parameter初始化信息查询!                                               
2) 用户SGA信息查询!                                                           
3) 用户分享池大小!         
4) 查看数据文件磁盘所在位置!        
查询信息:4
SQL> 
SGA
------------------------------------------------------
-------select name from v$datafile--查看数据文件
SQL> 
NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/system01.dbf
/u01/app/oracle/oradata/orcl/sysaux01.dbf
/u01/app/oracle/oradata/orcl/undotbs01.dbf
/u01/app/oracle/oradata/orcl/users01.dbf
/u01/app/oracle/oradata/orcl/example01.dbf
SQL> 
SGA
----------------------------------
-------select name from v$tempfile
SQL> 
NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/temp01.dbf
SQL> Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
  查看数据文件:
   select name from v$datafile; 
   select name v$tempfile;

查询信息:e
选择错误,退出!
[[email protected] Desktop]#
时间: 2024-10-14 10:40:48

学习的点点滴滴shell+sql的相关文章

Linux/Unix shell sql 之间传递变量

灵活结合Linux/Unix Shell 与SQL 之间的变量传输,极大程度的提高了DBA的工作效率,本文针对Linux/Unix shell sql 之间传递变量给出几个简单的示例以供参考. Linux/Unix 下调用SQL,RAMN 请参考:Linux/Unix shell 脚本中调用SQL,RMAN脚本 一.示例 [python] view plain copy print? 1.shell变量接受sql返回值之方式一 [email protected]:~> more ./retval

Oracle学习(十一):PL/SQL

1.知识点:可以对照下面的录屏进行阅读 PL/SQL程序结构 declare 说明部分 (变量说明,光标申明,例外说明 ] begin 语句序列 (DML语句]- exception 例外处理语句 End; / ------------------------------------------------------------------ --第一个PL/SQL程序:HelloWorld set serveroutput on --如果要在屏幕上输出信息,需要将serveroutput开关打

渗透学习笔记--基础篇--sql注入(字符型)

环境:dvwa1.7数据库:mysql前置知识:sql语句(Click me)      在进行sql注入前,我们先熟悉熟悉select语句.一.打开我们的sql终端 二.进入之后可以看到有mysql>我们输入sql语句,即可返回我们想要的结果,注意分号哟!我们使用的dvwa,在我们前几章设置的时候,会在数据库中生成一个dvwa的database:这里我们使用它来进行我们的select 语句:(1)使用dvwa数据库use dvwa;(2)在users表里查询用户名为'admin'的所有信息se

Linux学习闲谈(一)——Shell基本操作与命令

Linux学习闲谈(一) --Shell基本操作与命令 (转载请附上本文链接--linhxx) 1.#!/bin/sh 放在程序开头,表示用/bin/sh方式来解析. 2.变量 1)变量赋值 varname='xxx',除了在变量赋值和在FOR循环语句头中,其他情况下BASH 中的变量使用必须在变量前加"$"符号,即采用 $varname使用变量.更为标准的变量引用方式是 ${STR} 这样的,$STR 自不过是对 ${STR} 的一种简化.在复杂情况下(即有可能产生歧义的地方)最好用

学习《Oracle PL/SQL 实例讲解 原书第5版》----创建账户

通过readme.pdf创建student账户. 以下用sys账户登录时都是sysdba. 一.PL/SQL 登录oracle. SYS/123  AS SYSDBA 账户名:sys:密码:123:作为sysdba角色登录. 二.查询DEFAULT TABLESPACE和TEMPORIRY TABLESPACE. SELECT tablespace_name FROM dba_tablespaces ORDER BY tablespace_name; 注:tablespaces are area

渗透学习笔记--基础篇--sql注入(数字型)

环境:dvwa 1.7数据库:mysql dvwa的安全等级:medium 一.分析和查找注入点(1)知识点回顾如果上一篇有好好读过的同学应该知道,我们上一篇遇到的字符型注入.也即是通过Get或者Post方式传进去的数据被单引号或者双引号包裹住.如果我们想要注入自己的payload(有效载荷)的话,则我们必须先闭合前面的单引号或者双引号,否则我们的数据始终会被当做成字符串来处理. 这种类型的注入点称为字符型注入点. (2)这次我们的把防御等级提升了一个层次,来逐步加强我们手工注入的能力以及开更多

linux视频学习3(shell和网络)

1.shell的学习. shell的种类比较多,主要有三种: /bin/sh, /bin/csh, /bin/ksh. 查看当前使用的是哪种shell : 命令env (显示当前操作系统的环境变量). 改变shell的种类: chsh -s /bin/csh shell命令补全功能:tab键.两次tab键可以补全命令,一次tab键可以补全文件名. man命令: man command  .可以显示command的用法 history 命令:查看历史命令. history 5 :显示最近使用的5个

Shell脚本学习一:shell三种引号学习

一.Shell中变量的声明和引用 [[email protected] ~]# var1=Hello [[email protected] ~]# echo $var1 Hello [[email protected] ~]# echo ${var1}World HelloWorld 在Shell中,变量的引用使用$. 上面的代码中,$var1就是对变量var1的引用,输出的结果是Hello. 如果想链接其他字符,将变量放到大括号{}里面,然后在后面跟上其他内容. 例如上面的代码中:${var1

Seq2SQL :使用强化学习通过自然语言生成SQL

论文: https://einstein.ai/static/images/layouts/research/seq2sql/seq2sql.pdf 数据集:https://github.com/salesforce/WikiSQL Seq2SQL属于natural language interface (NLI)的领域,方便普通用户接入并查询数据库中的内容,即用户不需要了解SQL语句,只需要通过自然语言,就可查询所需内容. Seq2SQL借鉴的是Seq2Seq的思想,与Seq2Seq应用于机器