日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

oracle同一个示例两个用户的数据同步_分享两个shell脚本--一键统计Oracle数据库用户信息...

發(fā)布時間:2023/12/10 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle同一个示例两个用户的数据同步_分享两个shell脚本--一键统计Oracle数据库用户信息... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

概述

今天主要分享一下兩個shell腳本,主要是為了查看所有數(shù)據(jù)庫用戶及其表空間,統(tǒng)計某個指定用戶的明細(xì),下面一起來看看吧~


數(shù)據(jù)庫連接腳本

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 用戶名 用戶密碼


showusers.sh

腳本內(nèi)容如下:

#!/bin/bashecho "========================================查看所有數(shù)據(jù)庫用戶及其默認(rèn)表空間================================================="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

輸出:./showusers.sh


showusers.sh

腳本內(nèi)容如下:

#!/bin/bashecho "========================================查看所有數(shù)據(jù)庫用戶$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 用戶名

大家有什么需要統(tǒng)計的可以在下方留言,后面我也會整理相關(guān)腳本,感興趣的朋友可以關(guān)注下

總結(jié)

以上是生活随笔為你收集整理的oracle同一个示例两个用户的数据同步_分享两个shell脚本--一键统计Oracle数据库用户信息...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。