oracle 造数据脚本_Oracle数据库shell脚本--统计所有数据库用户信息及明细

概述

今天主要分享一下两个shell脚本,主要是为了查看所有数据库用户及其表空间,统计某个指定用户的明细,下面一起来看看吧~


数据库连接脚本

use script settdb.sh for DB login details registry

#!/bin/bashtmp_username=$SH_USERNAMEtmp_password=$SH_PASSWORDtmp_db_sid=$SH_DB_SID#check $1 and $2 should be mandatory from inputif [[ -z $1 ]] || [[ -z $2 ]]; thenecho '***********************************************'echo 'WARNING :UserName And PassWord Is Needed!'echo '***********************************************'exitfiif [[ -z $3 ]] && [[ -z $ORACLE_SID ]];thenecho '***********************************************'echo 'WARNING :There is Instance can be used !'echo '***********************************************'exitfiSH_USERNAME=`echo "$1"|tr '[a-z]' '[A-Z]'`SH_PASSWORD=$2echo '***********************************************'if [[ -z $3 ]]then SH_DB_SID=$ORACLE_SID echo 'Using Default Instance :'$ORACLE_SID echo .else SH_DB_SID=`echo "$3"|tr '[a-z]' '[A-Z]'`fiif [[ $SH_DB_SID = $tmp_db_sid ]] && [[ $SH_USERNAME = $tmp_username ]] && [[ $SH_PASSWORD = $tmp_password ]];then echo 'Instance '$SH_DB_SID 'has been connected' echo '***********************************************' exitfiexport SH_USERNAME=$SH_USERNAMEexport SH_DB_SID=$SH_DB_SIDexport SH_PASSWORD=$SH_PASSWORDexport DB_CONN_STR=$SH_USERNAME/$SH_PASSWORD#echo $DB_CONN_STRlistfile=`pwd`/listdbNum=`echo show user | $ORACLE_HOME/bin/sqlplus -s $DB_CONN_STR@$SH_DB_SID| grep -i 'USER ' | wc -l`if [ $Num -gt 0 ] then ## ok - instance is up echo 'Instance '$SH_DB_SID 'has been connected' echo -e '--' `date`'-- --'$SH_USERNAME@$SH_DB_SID 'has been connected --' >> listdb echo '***********************************************' echo 'Initalize DB login details registry OK!' echo 'Now you can Execution script~' echo '***********************************************' $SHELL  else ## inst is inaccessible  echo Instance: $SH_DB_SID Is Invalid Or UserName/PassWord Is Wrong  echo '***********************************************' exit fidel_length=3tmp_txt=$(sed -n '$=' listdb) echo '***********************************************'echo '********* ' $SH_USERNAME'@'$SH_DB_SID '**********'echo '***********************************************'curr_len=`cat $listfile|wc -l`if [ $curr_len -gt $del_length ]; thenecho ' There Are Below Sessions Still Alive 'echo '***********************************************'fised $((${tmp_txt}-${del_length}+1)),${tmp_txt}d $listfile | tee tmp_listfilemv tmp_listfile $listfile

输出:./settdb.sh 用户名 用户密码

bbc64d469ace4aaf1f96afe226b196bb.png

showusers.sh

脚本内容如下:

#!/bin/bashecho "========================================查看所有数据库用户及其默认表空间================================================="echo "set pages 70 lines 99 feedback offcol DEFAULT_TABLESPACE head 'Default TBS' for a15 trunccol TEMPORARY_TABLESPACE head 'TEMP TBS' for a15 trunccol MB head 'Size (Mb)' for 999,999,999col username format a30set linesize 150break on reportcompute sum of MB on reportselect USERNAME,DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE,CREATED,nvl(sum(seg.blocks*ts.blocksize)/1024/1024,0) MBfrom sys.ts$ ts,sys.seg$ seg,sys.user$ us,dba_users duwhere us.name (+)= du.username and seg.user# (+)= us.user# and ts.ts# (+)= seg.ts#group by USERNAME,DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE,CREATEDorder by MB desc,username,created/" | sqlplus -s $DB_CONN_STR@$SH_DB_SID
3e97e22b42f78d15274a1daacfe0ba0d.png

输出:./showusers.sh

af5cdde7ee9a840ea5ef878902f8f7b7.png

showusers.sh

脚本内容如下:

#!/bin/bashecho "========================================查看所有数据库用户$1具体信息================================================="NAME=`echo $1|cut -d. -f1`if [ -z "$NAME" ] then echo -e "User must be provided: c"; read NAMEfisqlplus -s $DB_CONN_STR@$SH_DB_SID <

输出:./showusers.sh 用户名

69dcab5ac10f40d79f27ba2dc84adadd.png
2d83fd68a4c0ad5021195ec0fa2bb488.png
545eb54c4b4ca1915fefdd4a9ee30bba.png

大家有什么需要统计的可以在下方留言,后面我也会整理相关脚本,感兴趣的朋友可以关注下

f7522ec2db3f18f921e55c3533efcd19.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/334555.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

学维修电脑要多久_学厨师要多久才出师

学厨师一般要学多久&#xff1f;以苏州新东方学厨师为例&#xff1a;厨师培训可以分为长期、短期。中餐、西餐、西点长期专业学习时间1-3年不等&#xff1b;短期专业从7天到8个月不等&#xff0c;主要是按学习内容来划分&#xff0c;比如学苏式汤面&#xff0c;只需要半个月左右…

Linux 命令之 rpm -- RPM 软件包的管理工具

文章目录一、命令介绍二、语法结构三、常用选项用于查询和检查包用于安装、升级和删除包用于执行其他功能四、命令示例&#xff08;一&#xff09;查询和检查包1. 查看一个已安装包的信息&#xff08;版本、用途等&#xff09;2. 查看与指定程序相关的所有安装文件3. 查看一个已…

react核心虚拟dom_使用虚拟时间测试基于时间的React堆核心流

react核心虚拟domReactor Core实现了Reactive Streams规范&#xff0c;并处理了&#xff08;可能无限的&#xff09;数据流。 如果您感兴趣&#xff0c;请查看它提供的出色文档 。 在这里&#xff0c;我假设对Reactor Core库的Flux和Mono类型有一些基本的了解&#xff0c;并且将…

图书管理系统python语言-Python简易版图书管理系统

本文实例为大家分享了python图书管理系统的具体代码&#xff0c;供大家参考&#xff0c;具体内容如下 """ 图书管理系统 """ import random # books{书名:剩余数量, 书名:剩余数量} import time books {"防脱发指南": 5, "颈椎康…

docker 打包mysql_基于docker部署mysql的数据持久化问题

本人最近在使用docker部署mysql时&#xff0c;在持久化mysql数据时遇到了一个有趣的问题&#xff0c;将排查过程及思考记录在这里&#xff0c;以备后查。先简单描述下我遇到的问题&#xff1a;在mysql容器中创建了两个数据库&#xff0c;然后使用docker commit想要保存容器的修…

Linux 命令之 ls -- 列出指定目录下的内容

文章目录一、命令介绍二、语法格式三、常用选项四、参考示例&#xff08;一&#xff09;显示工作目录下&#xff08;当前目录&#xff09;所有的文件和目录&#xff08;二&#xff09;显示工作目录下所有的文件和目录&#xff08;三&#xff09;显示文件的详细信息&#xff0c;…

kotlin dsl_Spring Webflux – Kotlin DSL –实现的演练

kotlin dsl在以前的博客文章中&#xff0c;我描述了Spring Web Framework中的响应式编程支持Spring Webflux如何使用基于Kotlin的DSL使用户能够以非常直观的方式描述路由。 在这里&#xff0c;我想探索一些底层实现。 描述一组端点的样本DSL看起来像这样&#xff1a; package…

cad调了比例因子没反应_「室内设计」大神们都在用的9个CAD制图技巧,你会用几个?...

1、快捷特性面板如何调取&#xff1f;2、 如何快速恢复上一次删除物体&#xff1f;3、 如何快速关闭监视注释器&#xff1f;4、如何快速处理重复碎线&#xff1f;5、如何解决虚线在模型空间和布局空间显示不一致的问题&#xff1f;6、 如何快速更改图块名称&#xff1f;7、 PL线…

ubuntu 12下的apache+php+mysql_老司机传授Ubuntu下Apache+PHP+MySQL环境搭建攻略

一、首先安装MySql&#xff1a;对于MySql来讲在整个过程中是相对独立的安装&#xff0c;并且我的ubuntu在以前做开发的时候就已经安装了MySql&#xff0c;所以以下只给出安装步骤&#xff1a;1、安装MySql的服务&#xff1a;sudo apt-get install mysql-server要注意的是安装过…

Linux 命令之 mv -- 移动文件/重命名文件

文章目录命令介绍语法格式常用选项命令示例&#xff08;一&#xff09;文件重命名&#xff08;二&#xff09;目录重命名&#xff08;三&#xff09;移动目录&#xff08;四&#xff09;移动目录且重命名&#xff08;五&#xff09;将一个目录下的内容移动到另外一个目录下&…

jax-rs jax-ws_迟来总比没有好:SSE或服务器发送的事件现在已在JAX-RS中

jax-rs jax-ws服务器发送的事件 &#xff08;或简称为SSE &#xff09;是非常有用的协议&#xff0c;它允许服务器通过HTTP将数据推送到客户端。 这是我们的Web浏览器支持的年龄&#xff0c;但是令人惊讶的是&#xff0c; JAX-RS规范在很长一段时间内都忽略了这一点。 尽管Jers…

根据录入的计算公式计算_小规模纳税人增值税计算公式是什么,什么人能被称为小规模纳税人?- 理财技巧...

摘要&#xff1a; 想必大家都知道小规模纳税人在增值税的缴纳上能够享受到不少的优惠措施和政策&#xff0c;最终可以少交不少钱&#xff01;那么什么人能被称为小规模纳税人呢&#xff1f;小规模纳税人增值税计算公式又是什么呢&#xff1f;下面赢家财富网就带大家详细了解一下…

Linux 命令之 chmod -- 改变文件或目录权限

文章目录一、命令介绍二、语法格式三、常用选项四、权限表达式&#xff08;一&#xff09;采用权限字母和操作符表达式&#xff08;二&#xff09;采用权限数字表达式五、参考示例&#xff08;一&#xff09;为拥有者、所属群组以及其他人添加关于directory1的读、写和执行权限…

12章总结

一.集合类概述 java.util包中提供了一些集合类&#xff0c;这些集合类又被称为容器。 集合类与数组的不同之处&#xff1a; 数组的长度是固定的&#xff0c;集合的长度是可变的&#xff1a;数组用来存放基本类型的数据&#xff0c;集合用来存放对象的引用。 常…

java亮剑_黄金矿工3-太空版

快速搜索机型:诺基亚 N70系列(176208)7610 3230 6600 6260 6620 6630 6670 6680 6681 6682 N70 N72 ;松下: X700 X800 ;联想: P930诺基亚 N73系列(240320)N73 5320 5320XM 5320di_XM 5630XM 5700 5700XM 5710XM 5730XM 6110 6110N 6120 6120C 6120ci 6121 6122C 6124C 6210S 62…

怎么知道跟交换机互联的交换机_怎么选择POE交换机

工作的呢&#xff1f;48V供电的就是标准PoE吗&#xff1f;下面我们简单讲解一下标准PoE和MCU PoE交换机&#xff08;单片机&#xff09;及非标PoE设备是怎么工作的。标准PoE和MCU PoE交换机&#xff08;单片机&#xff09;以及非标准PoE产品定义首先我们来看一下什么是标准PoE、…

并发查询parallel_惯用并发:flatMap()与parallel()– RxJava常见问题解答

并发查询parallel简单&#xff0c;有效和安全的并发是RxJava的设计原则之一。 然而&#xff0c;具有讽刺意味的是&#xff0c;它可能是该库中最容易被误解的方面之一。 让我们举一个简单的例子&#xff1a;假设我们有一堆UUID并且对于每个UUID &#xff0c;我们必须执行一组任务…

java正则表达式 匹配()_学习Java正则表达式(匹配、替换、查找)

import java.util.ArrayList;import java.util.regex.Matcher;import java.util.regex.Pattern;public class test {public static void main(String[] args) {getStrings(); //用正则表达式获取指定字符串内容中的指定内容System.out.println("********************"…

Linux 命令之 chown -- 用来变更文件或目录的拥有者或所属群组

命令介绍 Linux/Unix 属于多用户多任务操作系统&#xff0c;所有的文件皆有拥有者。利用 chown 命令可以将指定文件的拥有者改为指定的用户或组&#xff0c;用户可以是用户名或者用户ID&#xff0c;组可以是组名或者组ID&#xff0c;文件是以空格分开的要改变权限的文件列表&a…

在excel中如何筛选重复数据_Excel中12招筛选使用大全,小白也能秒变高手

【温馨提示】亲爱的朋友&#xff0c;阅读之前请您点击【关注】&#xff0c;您的支持将是我最大的动力&#xff01;在日常使用Excel处理数据时&#xff0c;相信小伙伴们对于筛选功能已经是不陌生了&#xff0c;Excel筛选功能可以快速有效的帮助我们处理大量的数据&#xff0c;将…