OGG运维优化脚本(九)-查询维护类--进程重复表检查

路径:$HOME/ggscript/ggrepeat

功能:该脚本为处理目标端因为源端重复配置源端表,导致目标端数据重复的问题而设计。可以针对进程检查重复配置的表名,并罗列具体信息和所在文件行数

可以配合note快速注释脚本进行源端重复表清理操作

#!/bin/bash
echo "+--------------------------------------------------------+"
echo "|This script will search for the repeat table ( by RenYi)|"
echo "+--------------------------------------------------------+"
if [ $# -eq 0 ]; then
        echo "REPEAT EXTRACT"
        exit 2
fi

backuptime=`date +%Y%m%d-%H%M`
datenow=`date +%Y%m%d%H`

val=$1
val=`echo $val|tr a-z A-Z`
echo "-------------------------"
echo "The process name is $val"
echo "-------------------------"
val=`echo $val.PRM|tr A-Z a-z`
cd $HOME/ggserver/dirprm
if [ ! -e $val ]; then
        echo "the EXTRACT is not exist"
        exit 2
fi

cd $HOME/ggscript/ggrepeat
cat $HOME/ggserver/dirprm/$val|awk ‘/TABLE#/,/#TABLE/{if(i>1)print x;x=$0;i++}‘ > temp
awk -F ‘--‘  ‘($1) { print $1}‘ temp > temp2
rm -rf temp
sed  -e ‘/^$/d‘  temp2 > temp3
rm -rf temp2
awk -F ‘,‘ ‘{print $1}‘ temp3 >temp4
rm -rf temp3
awk -F ‘;‘ ‘{print $1}‘ temp4 >temp5
rm -rf temp4
cat temp5|awk  -F ‘TABLE ‘  ‘{print $2}‘ > Temp
rm -rf temp5

sort Temp |uniq -d > $HOME/ggscript/ggrepeat/tmp
echo "-------------------------"
echo "The repeat table:"
echo "-------------------------"

cat tmp

i=1

num=`sed -n ‘$=‘ tmp`

echo "num = $num"
echo "-------------------------"
echo "The Detailed results:"
echo "-------------------------"
while [ ! -n "$num" ]
do
	echo "no result"
	exit 2
done

while [ "$i" -le "$num" ]
do
        TAL=`sed -n $i‘p‘ tmp`
        echo $TAL
	grep -ni $TAL $HOME/ggserver/dirprm/$val
	((i++));
done
echo "-------------------------"
时间: 2024-10-29 00:20:45

OGG运维优化脚本(九)-查询维护类--进程重复表检查的相关文章

OGG运维优化脚本(十)-查询维护类--进程详细信息查询

文件:processinfo.sh 路径:$HOME/ggscript/ggupload 功能:该脚本为满足维护配置时检查所有goldengate进程的详细源端目标端,定义文件等信息而设计 #!/bin/bash export PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin"  echo "This sciprt is write by RenYi" hn=`e

OGG运维优化脚本(七)-信息修改类--快速注释

文件名:note.sh 路径:$HOME/ggscript/ggnote 功能:该脚本用于注释指定行的配置表,配合重复值检查脚本repeat.sh使用 通过alias初始化入.profile或.bash_profile文件,通过指令note使用 日志路径:$HOME/gglog/ggnote #!/bin/bash if [ $# -eq 0 ]; then         echo "note EXTRACT rowsnum"         exit 2 fi if [ $# -e

OGG运维优化脚本(十一)-查询维护类--操作选择

文件:ggedit 路径:$HOME/ggscript 功能:该脚本用于选择使用其他脚本 通过alias别名初始化入.profile和.bash_profile文件,以edit指令方式使用 #!/bin/bash echo "Select an action you want to perform" select ch in "addtable" "addtrandata" "annotate" "reannotat

OGG运维优化脚本(八)-查询维护类--批量查询

文件名:search.sh 路径:$HOME/ggscript/ggsearch 功能:该脚本用于满足检查goldengate进程具体配置情况的需求而设计 通过edit脚本选择调用 #!/bin/bash echo "This script is used to search the specified table!(created by renyi)" echo $dir dir=$PWD  cd $HOME/ggserver echo "Please select the

OGG运维优化脚本(十三)-信息同步类--进程信息上传

文件:pcsinfoupload.sh 路径:$HOME/ggscript/ggupload 功能:用于查询所有进程的部署时填写好的详细配置注释信息,进程状态,生成以HTML格式的文件,并通过上传脚本定时上传至某台目标机器,通过其他脚本整合形成网页 以网页信息浏览所有进程的监控信息 日志路径:$HOME/gglog/ggupload #!/bin/bash cd #HOME if [ -f .profile ];then         . .profile fi if [ -f .bash_p

OGG运维优化脚本(二. 五)-信息修改类--快速加表

文件名:add.sh 所在路径:$HOME/ggadd 功能:批量加表脚本的优化版,用于针对少量加表需求,包括重复配置表过滤功能以及附加日志自动增加功能 该脚本通过alias方式写入账户系统配置文件.profile 和.bash_profile通过命令使用 日志路径:$HOME/ggscript/ggadd 具体脚本内容 #!/bin/bash if [ $# -eq 0 ]; then         echo "info EXTRACT TABLE AREA user"      

OGG运维优化脚本(十四)-信息同步类--定义文件自动下发

文件: resend.sh 路径:$HOME/ggscript/ggdef 功能:该脚本为用于应对目标端因为定义文件失效导致的进程异常中断所设计 因源端业务经常未通知目标端以及系统组自行修改表结构 因此设计该脚本自动生成定义文件,并发送至指定目标机器的相应路径,以用于目标机器REPLICATE进程的正常读取 日志路径:$HOME/gglog/ggupload #!/bin/bash cd $HOME if [ -f .profile ];then         . .profile fi if

OGG运维优化脚本(三)-信息修改类--附加日志增加

文件名: addtrandata.sh 所在路径:$HOME/ggscript/gginsert 功能:用于批量增加表附加日志,属于从加表脚本中独立出来的功能,用于应对表附加日志丢失以及加表附加日志增加失败的情况 #!/bin/bash echo "This script will add trandata( by RenYi)" ls -lrt $HOME/ggserver/dirprm/e*.prm echo "The EXTRACT process:" cd 

OGG运维优化脚本(十二)-信息同步类--信息上传

文件: upload.sh 路径:$HOME/ggscript/ggupload 功能:该脚本不会直接使用,为满足其他脚本进行信息上传而设计,在脚本内直接调用上传相应的文件信息 他会读取系统信息配置文件sysinfo内的系统配置信息 范例 [detest#] Ip-MTMyLjEyMS4xMDEuODYK UserName-Z2dzCg== PassWord-Z2dzxxxxxx Port-MjIK path-L2RhdGExL2dncy9nZ3NlcnZlci9kaXJkZWYK [#dete