代码之家  ›  专栏  ›  技术社区  ›  learningtech

mysql服务在kill-9之后重新出现

  •  0
  • learningtech  · 技术社区  · 3 年前

    kill -9 但它马上就会回来。以下是我的终端输出示例:

    root@mysql-image:~# ps aux | grep mysql
    mysql      779  0.8 19.2 1166336 188064 ?      Sl   20:06   0:02 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid
    root      1046  0.0  0.1  13144  1060 pts/0    S+   20:11   0:00 grep --color=auto mysql
    root@mysql-image:~# kill -9 779
    root@mysql-image:~# ps aux | grep mysql
    mysql     1063 21.5 18.1 1165936 177556 ?      Sl   20:11   0:00 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid
    root      1094  0.0  0.1  13144  1032 pts/0    S+   20:11   0:00 grep --color=auto mysql
    root@mysql-image:~# kill -9 1063
    root@mysql-image:~# ps aux | grep mysql
    mysql     1142 21.5 18.1 1165936 177628 ?      Sl   20:12   0:00 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid
    root      1173  0.0  0.1  13144  1084 pts/0    S+   20:12   0:00 grep --color=auto mysql
    

    作为我正在做的实验的一部分,我正试图以一种突然和“不安全的方式”破坏mysql进程。但是 杀死-9 似乎不会永久关闭mysql数据库。

    我做错了什么?

    0 回复  |  直到 3 年前
        1
  •  1
  •   ysth    3 年前

    Restart=on-abort 在/usr/lib/systemd/system/mysql中。服务

    关于中止,请参见: https://unix.stackexchange.com/questions/564443/what-does-restart-on-abort-mean-in-a-systemd-service

    您可以尝试更改mysql配置文件,使其无法重新启动(可能是设置一个不存在的用户?)。或者你可以做一个 kill -15 相反,这被视为预期终止,因此不会导致重新启动。