核对数据库表记录的shell脚本

发布时间:2020-01-03编辑:脚本学堂
项目中需要核对数据库表记录,由于表太多,一一核对是相当痛苦的事情,于是临时写了2个超级简单的脚本。一个用来核对mysql数据库表的脚本,另外一个用来核对oracle数据库表的脚本。

项目中需要核对数据库表记录,由于表太多,一一核对是相当痛苦的事情,于是临时写了2个超级简单的脚本
一个用来核对mysql/ target=_blank class=infotextkey>mysql数据库表的脚本,另外一个用来核对oracle数据库表的脚本。
有需要的朋友,可以参考下。
 
核对mysql数据库表的shell/ target=_blank class=infotextkey>shell脚本:
 

复制代码 代码如下:
#!/bin/bash
for i in `cat /root/mysql_tables.txt
do
dir=$(mysql -u root -p123456 -e "select count(*) from xxt.$i" |grep -v "count" )
echo -e "$itt$dir">>/root/mysql_check.txt
done

说明:mysql_tables.txt是你要核对的数据库表的文件,mysql_check.txt是核对以后的数据库表和记录数对应的关系文件。
 

复制代码 代码如下:
#!/bin/bash
for i in `cat /home/nagios/oracle_xxt_tables.txt`
do
dir_2=`sqlplus -silent xxt/xxt@ora10 <<END
select count(*) from $i;
exit;
END`
echo -e "$itt$dir_2" >>/root/xxt.txt
done

说明:oracle_xxt_tables.txt是你要核对的数据库表的文件,xxt.txt是核对以后的数据库表和记录数对应的关系文件。
很方便的批量检测数据库表记录数,节省大量的时间。