【发布时间】:2019-06-24 16:52:29
【问题描述】:
我被委派管理 MySQL 服务器(RHEL 7),现在我遇到了一个奇怪的情况。 RPM-Package 来自 Oracle,它使用 init.d-scripts 而不是 systemd。如果我检查正在运行的 MySQL-Server-Process 的限制,我得到 5000。让我告诉你我是如何检查的:
ps -ef | grep mysql | grep -v grep
root 17184 1 0 2018 ? 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/db/data1 --pid-file=/var/run/mysqld/mysqld.pid
mysql 17902 17184 0 2018 ? 01:14:22 /usr/sbin/mysqld --basedir=/usr --datadir=/db/data1 --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/log/mysql/mysqld.err --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock --port=3306
cat /proc/17902/limits
Limit Soft Limit Hard Limit Units
Max cpu time unlimited unlimited seconds
Max file size unlimited unlimited bytes
Max data size unlimited unlimited bytes
Max stack size 8388608 unlimited bytes
Max core file size 0 unlimited bytes
Max resident set unlimited unlimited bytes
Max processes 15066 15066 processes
Max open files 5000 5000 files
Max locked memory 65536 65536 bytes
Max address space unlimited unlimited bytes
Max file locks unlimited unlimited locks
Max pending signals 15066 15066 signals
Max msgqueue size 819200 819200 bytes
Max nice priority 0 0
Max realtime priority 0 0
Max realtime timeout unlimited unlimited us
如您所见,“Max open files”硬性和软性限制设置为 5000。我的问题是:这个值设置在哪里? 我已经检查了以下文件:
- /etc/security/limits.conf => 这个文件是空的,除了一些注释
-
/etc/security/limits.d/20-nproc.conf => 这是limits.d下的唯一文件。内容:
* soft nproc 4096 root soft nproc unlimited ulimit -n 作为根:1024
ulimit -n as user mysql: 1024
/etc/my.cnf 不包含 max_open_files 值
/etc/my.cnf.d 为空
知道这个值是在哪里设置的吗?
【问题讨论】: