MySQL-8.0 RESTART命令远程重启mysqld

MySQL在8.0版本中引入restart命令,实现远程重启mysqld进程的功能。好处不言而喻,可以在不登陆操作系统的情况下,执行重启操作,对于运管上来说也是一个很棒的功能。

执行restart命令需要数据库账号具备SHUTDOWN权限,并且mysqld是在systemd/mysqld_safe守护进程下启动的。

原理是mysqld_safe检测mysqld退出时的返回值,如果是16,则进行重启。bash shell如下:


#!/bin/bash

export MYSQLD_PARENT_PID=$$

export MYSQLD_RESTART_EXIT=16

while true ; do
  bin/mysqld mysqld options here
  if [ $? -ne $MYSQLD_RESTART_EXIT ]; then
    break
  fi
done

你可能感兴趣的:(MySQL)