iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >OGG运维优化脚本(十六)-信息同步类--附加日志检查
  • 238
分享到

OGG运维优化脚本(十六)-信息同步类--附加日志检查

2024-04-02 19:04:59 238人浏览 安东尼
摘要

文件名 checktrandata.sh路径$HOME/ggscript/ggtrandata该脚本的作用,是通过ogg自带的 infotrandata指令,验证EXTRACT进程内所配置表的 附加日志状态

文件名 checktrandata.sh

路径$HOME/ggscript/ggtrandata

该脚本的作用,是通过ogg自带的 infotrandata指令,验证EXTRACT进程内所配置表的 附加日志状态,仅针对同步oracle数据库的OGG

为了避免大批量查询影响数据库性能,如果进程内配置表信息过多。查询速度会比较慢,建议通过计划任务配置在凌晨自动运行。


#!/bin/bash
cd $HOME/ggscript/gGoperat

dir=$PWD
cd $HOME
if [ -f .profile ];then
        . .profile
fi

if [ -f .bash_profile ];then
        . .bash_profile
fi

echo "This sciprt is write by RenYi"
mydate=`date +20%y-%m-%d-%H`
hn=`echo $HOSTNAME`
usr=`echo $USER`
echo $hn-$usr

echo "HOSTNAME:" $hn"<br>" > $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck
echo "user:" $usr"<br>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck
echo "date:" $mydate"<br>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck
echo "<table border="1">" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck

echo "<tr>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck
echo "<td>TABLE</td>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck
echo "<td>PROBLEM</td>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck
echo "</tr>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck

cd $HOME/ggserver
(echo info all;echo exit)|./ggsci|grep EXTRACT |awk 'BEGIN {FS=" +"} {print $3}'|grep ^E > $HOME/ggscript/ggtablecheck/tmp

i=1
NUX=`sed -n '$=' $HOME/ggscript/ggtablecheck/tmp`
#echo $NUX
cd $PWD
while [ "$i" -le "$NUX" ]
do
	cat /dev/null > $HOME/ggscript/ggtablecheck/checktmp
	VAR=`sed -n $i'p' $HOME/ggscript/ggtablecheck/tmp`
	echo $VAR
	val=`echo $VAR.prm|tr "[:upper:]"  "[:lower:]"`
	cat $HOME/ggserver/dirprm/$val|awk '/TABLE#/,/#TABLE/{if(i>1)print x;x=$0;i++}' > $HOME/ggscript/ggtablecheck/temp
	awk -F '--'  '($1) { print $1}' $HOME/ggscript/ggtablecheck/temp > $HOME/ggscript/ggtablecheck/temp2
	rm -rf $HOME/ggscript/ggtablecheck/temp
	sed  -e '/^$/d' $HOME/ggscript/ggtablecheck/temp2 > $HOME/ggscript/ggtablecheck/temp3
	rm -rf $HOME/ggscript/ggtablecheck/temp2
	awk -F ',' '{print $1}' $HOME/ggscript/ggtablecheck/temp3 > $HOME/ggscript/ggtablecheck/temp4
	rm -rf $HOME/ggscript/ggtablecheck/temp3
	awk -F ';' '{print $1}' $HOME/ggscript/ggtablecheck/temp4 > $HOME/ggscript/ggtablecheck/temp5
	rm -rf $HOME/ggscript/ggtablecheck/temp4
	cat $HOME/ggscript/ggtablecheck/temp5|awk  -F 'TABLE '  '{print $2}' > $HOME/ggscript/ggtablecheck/Temp
	rm -rf $HOME/ggscript/ggtablecheck/temp5
	sed '/^$/d' $HOME/ggscript/ggtablecheck/Temp > $HOME/ggscript/ggtablecheck/temp
	rm -rf $HOME/ggscript/ggtablecheck/Temp	
	a=1
	NUM=`sed -n '$=' $HOME/ggscript/ggtablecheck/temp`
	echo $NUM
	while [ "$a" -le "$NUM" ]
	do
		table=`sed -n $a'p' $HOME/ggscript/ggtablecheck/temp`
		echo dblogin `more $HOME/ggserver/dirprm/$val|grep USERID` > $HOME/ggserver/dirdat/checktrandata
		echo "info trandata $table" >> $HOME/ggserver/dirdat/checktrandata	
		(echo OBEY dirdat/checktrandata;echo exit) |./ggsci >> $HOME/ggscript/ggtablecheck/checktmp
		sleep 1
		a=`expr $a + 1`
	done
	cat  $HOME/ggscript/ggtablecheck/checktmp|grep table  > $HOME/ggscript/ggtablecheck/checkresult1
	sed '/supplementally/d' $HOME/ggscript/ggtablecheck/checkresult1 > $HOME/ggscript/ggtablecheck/resulttmp
	cat $HOME/ggscript/ggtablecheck/resulttmp > $HOME/ggscript/ggtablecheck/checkresult
	c=1
	NUN=`sed -n '$=' $HOME/ggscript/ggtablecheck/checkresult`
	cat /dev/null > $HOME/ggscript/ggtablecheck/table
	cat /dev/null >  $HOME/ggscript/ggtablecheck/event
	while [ "$c" -le "$NUN" ]
	do
        	tmp=`sed -n $c'p' $HOME/ggscript/ggtablecheck/checkresult`
        	tab=`sed -n $c'p' $HOME/ggscript/ggtablecheck/temp`
        	if [ "`echo $tmp|grep ERROR`" ];then
			echo "<tr>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck
			echo "<td>$tab</td>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck
			echo "<td>$tmp</td>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck
			echo "</tr>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck
        	fi
        	if [ "`echo $tmp|grep disabled`" ];then
			echo "<tr>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck
                        echo "<td>$tab</td>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck
                        echo "<td>$tmp</td>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck
                        echo "</tr>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck
        	fi
        	c=`expr $c + 1`
	done
	i=`expr $i + 1`

done
echo "</table>" >> $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck

/bin/bash $HOME/ggscript/ggupload/upload.sh chk149 $HOME/ggscript/ggtablecheck/$hn-$usr.tbcheck sysinfo






您可能感兴趣的文档:

--结束END--

本文标题: OGG运维优化脚本(十六)-信息同步类--附加日志检查

本文链接: https://www.lsjlt.com/news/40703.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • mysql拒绝访问怎么办
    mysql 出现拒绝访问的原因和解决方法:权限问题:授予用户适当的数据库或表访问权限。防火墙或安全组:允许对 mysql 端口(3306)的入站连接。密码错误:重置 mysql 密码或使...
    99+
    2024-05-20
    mysql
  • mysql怎么比较日期大小
    mysql 中比较日期大小的方法包括:直接比较两个日期,使用 、= 运算符。使用 date_format() 函数将日期转换为字符串,然后比较字符串大小。使用 str_to_date()...
    99+
    2024-05-20
    mysql
  • mysql怎么加锁
    mysql中加锁是一种确保数据并发访问一致性的机制。加锁方式有:表级锁(对整个表加锁)和行级锁(对特定行加锁)。加锁类型有共享锁(允许读取但禁止修改)、排他锁(禁止读取和修改)和意向锁(...
    99+
    2024-05-20
    mysql 并发访问
  • mysql误删数据怎么恢复
    mysql误删数据可通过以下步骤恢复:停止数据库服务,防止数据覆盖。若开启binlog日志,可从中提取删除语句,再重新执行后将数据恢复。使用恢复工具修复表文件或恢复事务。从备份中恢复数据...
    99+
    2024-05-20
    mysql
  • 怎么判断mysql安装成功
    成功安装 mysql 的方法:检查命令行界面版本号;连接到 mysql 服务器,输入 "mysql -u root -p";创建数据库,输入 "create database test;...
    99+
    2024-05-20
    mysql linux macos 防火墙配置
  • mysql怎么修改表名
    如何修改 mysql 表名:检查当前表名:show tables;运行 rename table 语句:rename table 旧表名 to 新表名;验证更改:show tables;...
    99+
    2024-05-20
    mysql
  • mysql删除的表怎么恢复
    mysql 中已删除表的恢复方法主要涉及以下步骤:检查 binlog 日志以获取删除事务信息;使用数据恢复工具扫描数据库文件;从备份还原表数据;或联系 mysql 支持寻求帮助。 My...
    99+
    2024-05-20
    mysql 数据丢失
  • mysql复合主键怎么写
    在 mysql 中编写复合主键:在 create table 语句中使用 primary key 约束并列出字段名称。复合主键的好处包括提高查询效率、保证数据完整性和强制数据顺序。注意选...
    99+
    2024-05-20
    mysql
  • 怎么查看mysql数据库版本
    如何查看 mysql 数据库版本?连接到数据库并执行查询:select version();检查命令行或 mysql workbench 中的服务器属性。 如何查看 MySQL 数据库...
    99+
    2024-05-20
    mysql linux
  • 怎么检测mysql安装成功
    要验证 mysql 安装是否成功,请执行以下步骤:检查系统服务是否正在运行。使用 mysql 命令行工具连接到服务器。创建一个测试数据库并使用它。在数据库中创建一个测试表。插入测试数据并...
    99+
    2024-05-20
    mysql linux
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作