Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --- mysql_stats.sh 2018-05-16 09:30:17.227270146 +0000
- +++ mysql_stats_new.sh 2018-05-17 11:18:06.957885462 +0000
- @@ -1,5 +1,9 @@
- #!/bin/bash
- +# Modified by D.Kolosvetov 17/05/18
- +# Fixed security leaks
- +# Fixed Mysql 5.7 mysqladmin errors
- +
- ### DESCRIPTION
- # $1 - измеряемая метрика
- @@ -10,9 +14,29 @@
- ### PARAMETERS
- METRIC="$1"
- -USER="status_monitor"
- -PASSWD="tF4VmGC8HftX"
- -HOST="127.0.0.1"
- +
- +# Create .cnf file and user fist!
- +# We do not need privileges level more than this:
- +#
- +# GRANT SUPER, REPLICATION CLIENT ON *.* TO 'username'@'host'
- +#
- +# Do not use "localhost" if skip-name-resolve is enabled, use '127.0.0.1' instead.
- +# .cnf file must look like this:
- +# ###################
- +# [mysqladmin]
- +# user=username
- +# password=pass
- +# host=127.0.0.1
- +#
- +# [client]
- +# user=username
- +# password=pass
- +# host=127.0.0.1
- +#####################
- +# Do not forget set proper permissions - 0600 to .cnf file
- +
- +
- +MYCNF="/etc/zabbix/scripts/mysql.cnf"
- MYSQLADMIN=`which mysqladmin`
- @@ -23,7 +47,7 @@
- ### RUN
- # Проверка работы mysql не кешируется
- if [ $METRIC == "alive" ]; then
- - $MYSQLADMIN -h$HOST -u$USER -p$PASSWD ping | grep alive | wc -l
- + $MYSQLADMIN --defaults-file=${MYCNF} ping | grep alive | wc -l
- exit 0
- fi
- @@ -47,9 +71,9 @@
- if [ "$(($TIMENOW - $TIMECACHE))" -gt "$CACHETTL" ]; then
- # genarate cachefile for extended-status
- # echo "Creating cache...."
- - $MYSQLADMIN -h$HOST -u$USER -p$PASSWD extended-status > $CACHEFILE || exit 1
- - $MYSQLADMIN -h$HOST -u$USER -p$PASSWD variables >> $CACHEFILE || exit 1
- - $MYSQL -h$HOST -u$USER -p$PASSWD -e "SHOW SLAVE STATUS\G" | tr ":" "|" | awk '{ if (FNR!=1) print "| "$0 }' >> $CACHEFILE || exit 1
- + $MYSQLADMIN --defaults-file=${MYCNF} extended-status > $CACHEFILE || exit 1
- + $MYSQLADMIN --defaults-file=${MYCNF} variables >> $CACHEFILE || exit 1
- + $MYSQL --defaults-file=${MYCNF} -e "SHOW SLAVE STATUS\G" | tr ":" "|" | awk '{ if (FNR!=1) print "| "$0 }' >> $CACHEFILE || exit 1
- fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement