สคริปต์ต่อไปนี้ใช้เครื่องมือสแกน Namp ดังนั้นหากไม่ได้ติดตั้งเครื่องมือสแกน nmap บนระบบ คุณจะต้องติดตั้งก่อน
ฟังก์ชั่นของสคริปต์:
ขั้นแรก ตรวจสอบว่าพอร์ต mysql มีอยู่ตามปกติหรือไม่ หากไม่มีพอร์ต ให้เริ่มบริการ mysql แน่นอนว่าตำแหน่งของสคริปต์เริ่มต้นจะแตกต่างกันไปตามเส้นทางการติดตั้งของคุณ แสดงว่าบริการ mysql กำลังทำงานอยู่ จากนั้นให้ตรวจสอบสถานะ mysql เพื่อดูว่าสามารถเชื่อมต่อได้ตามปกติหรือไม่ แสดงว่า mysql เป็นปกติและจะไม่มีการประมวลผลใด ๆ เกิดขึ้น หากไม่สามารถเชื่อมต่อได้ตามปกติ ให้หยุดการทำงานของ mysql ทั้งหมด เริ่มบริการ mysql ทำไมคุณถึงต้องการฆ่ากระบวนการแทนที่จะดำเนินการตามปกติเพราะบางครั้ง mysql ไม่สามารถปิดได้ตามปกติดังนั้นจึงไม่สามารถรีสตาร์ทได้ตามปกติ ดังนั้นวิธีที่ปลอดภัยที่สุดคือการฆ่ากระบวนการแล้วเริ่ม บริการ. (
#!/bin/bash
/usr/bin/nmap localhost |grep 3306
if [ $? -eq 0 ]
ดังนั้น
/usr/local/mysql/bin/mysql -uxxxxx -pxxxxxx --connect_timeout=5 -e "แสดงฐานข้อมูล ;"
ถ้า [ $? -ne 0 ]
ดังนั้น
/bin/ps aux |grep mysql |grep -v grep | awk '{print $2}' | xargs kill -9
/usr/local/mysql/bin/mysqld_safe --user =mysql & > /dev/null
fi
อย่างอื่น
/usr/local/mysql/bin/mysqld_safe --user=mysql & > /dev/null
fi