Heim > Datenbank > MySQL-Tutorial > Hauptteil

MySQL-Master-Slave-Synchronisationsüberwachungs-Shell-Skript unter Linux

伊谢尔伦
Freigeben: 2016-12-03 10:55:53
Original
1629 Leute haben es durchsucht

Beschreibung:

Betriebssystem: CentOS

Zweck: Regelmäßig überwachen, ob die MySQL-Master-Slave-Datenbank synchronisiert ist. Wenn nicht, notieren Sie die Fehlerzeit und führen Sie den Befehl zur Wiederherstellung des Masters aus -Slave-Synchronisierungsstatus

1. Erstellen Sie eine Skriptdatei

vi /home/crontab/check_mysql_slave.sh #Bearbeiten, fügen Sie den folgenden Code hinzu

#!/bin/sh

# check_mysql_slave Status

# Autor www.osyunwei.com

ip=eth0 #Netzwerkkartenname

mysql_binfile=/usr/local/mysql/ bin/mysql

mysql_user=root #MySQL-Datenbankkonto

mysql_pass=123456 #Passwort

mysql_sockfile=/tmp/mysql.sock

datetime=` date +"%Y-%m -%d/%H:%M:%S"` #Erhalten Sie die aktuelle Uhrzeit

mysql_slave_logfile=/home/logs/check_mysql_slave.log #Der Protokolldateipfad muss sein im Voraus erstellt

slave_ip =`ifconfig $ip|grep "inet addr" |. awk -F[:" "]+ '{print $4}'`

status=$($mysql_binfile -u$mysql_user -p$mysql_pass -S $mysql_sockfile -e "show Slave StatusG" |. `

Slave_SQL_Running=` echo $status |. grep Slave_SQL_Running | " ]

dann echo „Slave läuft!“

else

echo „ $datetime $slave_ip Slave läuft nicht!“ >> $mysql_slave_logfile

$mysql_binfile -u$mysql_user - p$mysql_pass -S $mysql_sockfile -e "SLAVE STOP;"

$mysql_binfile -u$mysql_user -p$mysql_pass -S $mysql_sockfile -e "SET GLOBAL SQL_SLAVE_SKIP_COUNTER =1;"

$mysql_binfile -u$mysql_user -p$mysql_pass -S $mysql_sockfile -e "SLAVE START;"

$mysql_binfile -u$mysql_user -p$mysql_pass -S $ mysql_sockfile -e "EXIT"

fi

:wq! #Speichern und beenden

chmod +x /home/crontab/check_mysql_slave.sh #Skriptausführungsberechtigungen hinzufügen

2. Aufgabenplan hinzufügen, /etc/crontab ändern

vi /etc/crontab #Add


*/10 * * * * root /home/crontab/ check_mysql_slave.sh #zeigt alle 10 Minuten in der letzten Zeile an. Einmal ausführen

:wq! #Speichern und beenden

3. Starten Sie crond neu, damit die Einstellungen wirksam werden

/ etc/rc.d/init.d/crond restart #yum install -y vixie-cron-Installation geplante Aufgabe, einige Systeme sind möglicherweise nicht vorinstalliert

chkconfig crond on #Set to boot

service crond start #Start

gemäß Protokolldatei /home/logs/check_mysql_slave.log MySQL-Master-Slave-Synchronisationsstatus anzeigen

An diesem Punkt das Shell-Skript zur Überwachung der MySQL-Master-Slave-Synchronisation unter Linux ist abgeschlossen.

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage