1、mysql配置檔案$ cat mysql.cfg
[3306]
ip=***.***.***x.***
user=root
pass=***xx
port=3306
auditlog=/home/mysql/data/mysql-audit.json
socket=/tmp/mysql.sock
2、函式檔案,主要是日誌函式[mysql@trs bin]$ cat common.sh
#!/bin/sh
logger()a==1&&$1~/'$2'/' $3 |sed 's/ *$//g'|sed 's/^ *//g'
getconfig()
section=$1
confile=$2
#乙個段中的名值對,必須實現把所有的都列出來
endprint="user pass port auditlog ip socket"
dd=`date +'%y%m%d'`
for loop in $endprint
docase $loop in
"user")
#user=`awk -f '=' '/\['$section'\]/a==1&&$1~/'$loop'/' $confile |sed 's/ *$//g'|sed 's/^ *//g'`
user=`getvalue $section $loop $confile`
"pass")
pass=`getvalue $section $loop $confile`
"port")
port=`getvalue $section $loop $confile`
"auditlog")
auditlog=`getvalue $section $loop $confile`
"ip")
host=`getvalue $section $loop $confile`
"socket")
socket=`getvalue $section $loop $confile`
esac
#auditlog=`grep $auditlog config.ini |awk -f '=' ''|sed 's/ *$//g'|sed 's/^ *//g'`
done
logdir=$aud_home/logs/$host:$port
[ ! -d $logdir ] && mkdir -p $logdir
( $aud_home/bin/audit_logrotate.sh $user $pass $auditlog $host $port $socket >>$logdir/$:$_$dd 2>&1 )
bdir=`dirname $0`
cd $bdir >/dev/null
aud_home=`dirname $pwd`
cd - >/dev/null
path=$aud_home/bin:$path
export path aud_home
config=$aud_home/config/mysql.cfg
dd=`date +'%y%m%d'`
#獲取配置檔案中的段名稱,如存在[3306]、[3307],會得到3306和3307
section=`grep "^\[.*\]$" $config|grep -o "[[:digit:]]\" | xargs`
for onecom in $section
dogetconfig $onecom $config
done
#刪除過期的日誌
find $aud_home/mysql_audit/* -ctime +10 |xargs rm -rf;
find $aud_home/logs -ctime +10 -exec rm {} \;
4、根據my.cnf的值生成審計日誌$ cat audit_logrotate.sh
#!/bin/bash
aud_home=$
. $aud_home/bin/common.sh
tt=`date +%y%m%d%h%m%s`
user=$1
pass=$2
auditlog=$3
host=$4
port=$5
socket=$6
dd=`date +'%y%m%d'`
root=mysql_audit
logserver=172.30.4.104
logrotate():$/$dd
[ ! -d $dir ] && mkdir -p $dir
file=mysql-audit.json$tt
out=$dir/$file
logrotate $user $pass $auditlog $out $socket
logger rotate mysql audit to file $out
( $aud_home/bin/rsynclog.sh $aud_home/$root/$:$ $logserver $root)
mysql的審計日誌 MySQL審計日誌處理指令碼
1 mysql配置檔案 cat mysql.cfg 3306 ip x.user root pass xx port 3306 auditlog home mysql data mysql audit.json socket tmp mysql.sock 2 函式檔案,主要是日誌函式 mysql t...
日誌審計系統 事件日誌審計 syslog審計
日誌審計系統 事件日誌審計 syslog審計 任何it機構中的windows機器每天都會生成巨量日誌資料。這些日誌包含可幫助您的有用資訊 獲取位於各個windows事件日誌嚴重性級別的所有網路活動的概述。識別網路異常和潛在的安全漏洞。識別多次登入失敗 嘗試訪問未經授權的站點或檔案等等事件。跟蹤任何事...
mysql的審計日誌 審計日誌的資料庫設計
一些wiki平台使用的一種方法是分離識別資料和您正在審核的內容。它增加了複雜性,但您最終得到了完整記錄的審計跟蹤,而不僅僅是已編輯的字段列表,您必須將其混搭以便讓使用者了解舊記錄的外觀。例如,如果您有乙個名為opportunities的表來跟蹤銷售交易,您實際上會建立兩個單獨的表 機會opportu...