MySQL在8.0版本中引入restart命令,实现远程重启mysqld进程的功能。好处不言而喻,能够在不登录操做系统的状况下,执行重启操做,对于运管上来讲也是一个很棒的功能。mysql
执行restart命令须要数据库帐号具有SHUTDOWN权限,而且mysqld是在systemd/mysqld_safe守护进程下启动的。web
原理是mysqld_safe检测mysqld退出时的返回值,若是是16,则进行重启。bash shell以下:sql
#!/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