#!/bin/bash
alias sql='sqlonline_console -i false -d OTSPublicDB -s sqlonline-OTS -m admin -c '
#------------查询表----------
table_list(){
[ ! -d "$1" ] && mkdir "$1"
file="${1}/table_list${1}"
sql lt | grep -v "^TableName" |grep $1 |awk '{print $1 }'|awk -F'#' '{print $2}' > $file
}
#------------模板文件--------
conf(){
cat > "${id[${2}]}"/"$5" <<EOF
{
"SourceTableStoreEndpoint": "http://$1",
"SourceTableStoreInstance": "$2",
"SourceTableStoreAccessId": "$3",
"SourceTableStoreAccessKey": "$4",
"SourceTableName": "$5",
"TargetTableStoreEndpoint": "http://$6",
"TargetTableStoreInstance": "$2",
"TargetTableStoreAccessId": "$7",
"TargeaddsssTableStoreAccessKey": "$8",
"TargetTableName": "$5",
"DataCheckType": "static",
"DataCheckModel": "full"
}
EOF
}
#----------------------获取对应信息-------
ots_file=zidian
arr(){
> tmp
cat $ots_file|while read line
do
a=`echo $line|awk '{print $1}'`
b=`echo $line|awk '{print $2}'`
c="["$a"]"
d=$c\=\"$b\"
echo $d >> tmp
cat tmp |xargs |sed -e 's/^/\(&/g' -e 's/$/&\)/g' > tmp1
done
}
arr
file=`cat tmp1`
declare -A id=$file
while true
do
read -p "请输入需要校验的实例:" p21
read -p "请输入需要校验的源端ip地址:" p1
read -p "请输入需要校验的目标端ip地址:" p5
read -p "请输入需要校验的源端账号AK:" p3
read -p "请输入需要校验的源端账号SK:" p4
read -p "请输入需要校验的目标端账号AK:" p6
read -p "请输入需要校验的目标端账号SK:" p7
[ -s $p1 -a -s $p21 -a -s $p3 -a -s $p4 -a -s $p5 -a -s $p6 -a -s $p7 ] && echo "内容不允许为空!"
p2=`echo ${id["$p21"]}`
echo $p2
table_list $p2
for i in `cat $file`
do
conf $p1 $p21 $p3 $p4 $i $p5 $p6 $p7
done
done
字典文件
实例名称 实例ID
tbs-aimpd-com _tQcmnzUn2fOx4LRPpg
mpdc-mpdal-prod _tPaJr4p7EHuWmqAsvS