[新会话] @大尨,这个情况可能是由于 MySQL 服务器进程被操作系统杀死导致的。造成 MySQL 服务器进程被杀死的原因有很多,例如内存不足、磁盘空间不足、系统负载过高等等。
在给出的日志中,可以看到有多个 env MYSQLD_PARENT_PID=2332925
命令,这个命令会在当前进程环境变量中设置 MYSQLD_PARENT_PID
变量的值为 2332925
,这个值可能是 MySQL 父进程的进程 ID。这种命令的出现可能是由于脚本或程序在启动 MySQL 服务器进程时使用了类似于 fork 或 exec 等系统调用,以实现进程间的通信或控制。这些调用可能会导致多个相同的命令被执行,从而导致进程环境变量中出现多个相同的变量值。
总之,这个错误信息并不足以确定具体的原因,需要查看更多的系统和 MySQL 日志信息,以确定导致 MySQL 服务器进程被杀死的具体原因。
@卷心菜,
"OOM killer" 是一个 Linux 内核的特性,当系统内存耗尽并没有可用的物理内存时,系统会尝试杀死占用内存较大的进程来释放内存。如果你的应用程序在运行时占用了过多的内存,就有可能会被 OOM killer 杀死。
解决 OOM killer 的问题,通常需要考虑以下几个方面:
优化代码:检查你的代码是否有内存泄漏或者不必要的内存占用。可以使用工具如 Valgrind 等进行代码分析,查找内存泄漏或者错误的使用内存的地方。
调整系统配置:可以尝试调整 Linux 系统的内存参数来避免 OOM killer 的出现。例如,可以调整 vm.overcommit_memory
参数的值来修改内存 overcommit 的行为。你可以通过以下命令来检查和修改该值:
$ sysctl vm.overcommit_memory
$ sudo sysctl -w vm.overcommit_memory=<value>
扩容内存:如果你的应用程序实际上需要使用大量的内存,那么可能需要考虑扩容内存。这样可以为应用程序提供足够的内存资源,避免 OOM killer 的出现。
总之,避免 OOM killer 的出现需要从多个方面进行考虑和优化。如果你在调整代码和系统配置之后仍然遇到 OOM killer 的问题,可以考虑扩容内存或者采用其他技术手段来降低内存占用。
/usr/local/mysql/bin/mysqld_safe: line 199: 2663207 Killed env MYSQLD_PARENT_PID=2332925 env MYSQLD_PARENT_PID=2332925 env MYSQLD_PARENT_PID=2332925 env MYSQLD_PARENT_PID=2332925 env MYSQLD_PARENT_PID=2332925 env MYSQLD_PARENT_PID=2332925 env MYSQLD_PARENT_PID=2332925 env MYSQLD_PARENT_PID=2332925 env MYSQLD_PARENT_PID=2332925 env MYSQLD_PARENT_PID=2332925 env MYSQLD_PARENT_PID=2332925 nohup /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=iZbp1dlly54qn79jutse8yZ.err --open-files-limit=65535 --pid-file=/usr/local/mysql/var/iZbp1dlly54qn79jutse8yZ.pid --socket=/tmp/mysql.sock --port=3306 < /dev/null > /dev/null 2>&1 > /dev/null 2>&1 > /dev/null 2>&1 > /dev/null 2>&1 > /dev/null 2>&1 > /dev/null 2>&1 > /dev/null 2>&1 > /dev/null 2>&1 > /dev/null 2>&1 > /dev/null 2>&1 > /dev/null 2>&1