2016-11-03 3 views
-1

스크립트는 여기에서있다 :우분투에서이 bash 스크립트를 어떻게 실행합니까?

#!/bin/bash 
# Shell script to restart MySQL server if it is killed or not working 
# due to ANY causes. 
# When script detects mysql is not running (it basically sends ping request 
# to MySQL) it try to start using /etc/init.d/mysql script; and it sends an 
# email to user indicating the status. 
# This script must be run from Cron Job so that it can monitor mysql server. 
# For more info visit following url: 
# http://www.cyberciti.biz/nixcraft/vivek/blogger/2005/08/linux-mysql-server-monitoring.html 
# -------------------------------------------------------------------------- 
# Copyright (C) 2005 nixCraft project <http://cyberciti.biz/fb/> 
# This script is licensed under GNU GPL version 2.0 or above 
# ------------------------------------------------------------------------- 
# This script is part of nixCraft shell script collection (NSSC) 
# Visit http://bash.cyberciti.biz/ for more information. 
# ------------------------------------------------------------------------- 

# mysql root/admin username 
MUSER="root" 
# mysql admin/root password 
MPASS="SET-ROOT-PASSWORD" 
# mysql server hostname 
MHOST="localhost" 
#Shell script to start MySQL server i.e. path to MySQL daemon start/stop script. 
# Debain uses following script, need to setup this according to your UNIX/Linux/BSD OS. 
MSTART="/etc/init.d/mysql start" 
# Email ID to send notification 
EMAILID="[email protected]" 
# path to mail program 
MAILCMD="$(which mail)" 
# path mysqladmin 
MADMIN="$(which mysqladmin)" 

#### DO NOT CHANGE anything BELOW #### 
MAILMESSAGE="/tmp/mysql.fail.$$" 

# see if MySQL server is alive or not 
# 2&1 could be better but i would like to keep it simple and easy to 
# understand stuff :) 
$MADMIN -h $MHOST -u $MUSER -p${MPASS} ping 2>/dev/null 1>/dev/null 
if [ $? -ne 0 ]; then 
echo "" >$MAILMESSAGE 
echo "Error: MySQL Server is not running/responding ping request">>$MAILMESSAGE 
echo "Hostname: $(hostname)" >>$MAILMESSAGE 
echo "Date & Time: $(date)" >>$MAILMESSAGE 
# try to start mysql 
$MSTART>/dev/null 
# see if it is started or not 
o=$(ps cax | grep -c ' mysqld$') 
if [ $o -eq 1 ]; then 
sMess="MySQL Server MySQL server successfully restarted" 
else 
sMess="MySQL server FAILED to restart" 
fi 
# Email status too 
echo "Current Status: $sMess" >>$MAILMESSAGE 
echo "" >>$MAILMESSAGE 
echo "*** This email generated by $(basename $0) shell script ***" >>$MAILMESSAGE 
echo "*** Please don't reply this email, this is just notification email ***" >>$MAILMESSAGE 
# send email 
$MAILCMD -s "MySQL server" $EMAILID < $MAILMESSAGE 
else # MySQL is running :) and do nothing 
: 
fi 
# remove file 
rm -f $MAILMESSAGE 

이 스크립트는 MySQL의에게이 중단되거나 차단마다 다시 시작됩니다 : 여기

https://bash.cyberciti.biz/monitoring/monitor-mysql-server-shell-script/

는 코드입니다. 나는 /path/to/script/mysql-restart.sh에 스크립트를 넣었습니다.

그래서 어떻게 실행합니까? 감사.

답변

관련 문제