执行以下命令,获取mysql启动时默认选项时报警告信息。
mysqld --verbose --help 1> mysqld-default-options.txt
2021-04-10T14:08:46.099739Z 0 [Warning] Changed limits: max_open_files: 1024 (requested 5000)
2021-04-10T14:08:46.099993Z 0 [Warning] Changed limits: table_open_cache: 431 (requested 2000)
问题原因:
用户需要打开的文件数超过了上限,通过命令“ulimit -a”可查看如下信息:
可以看到该用户的最大打开文件数为1024个,而我启动的mysql服务需要打开5000个,所以出现了上述的警告。出现了这个警告后,mysql服务是正常可用的,只是性能没有达到最优。
下面我们着手解决这个问题。
首先在文件sudo vi /etc/security/limits.conf中追加下面信息:
tony hard nofile 65535
soft nofile 65535
其中tony为我当前使用的linux用户。
然后退出该终端,再重启一个终端,执行命令:ulimit -n 65535。
重启mysql服务,问题解决。
参考:https://my.oschina.net/u/3367404/blog/1803092
[Warning] Changed limits: max_open_files: 1024 (requested 5000)
原文:https://www.cnblogs.com/anthonyxu/p/14642431.html