2013-04-11 74 views
6

我正在学习MongoDB,当我启动mongo shell时出现了一条狂野的警告消息。它说: enter image description here增加rlimit Mac OSX 10.8

如何更改“软rlimits”。我提前

+1

此处的限制警告不应影响您,除非您正在处理大量的数据文件/连接。默认的OS X限制通常适用于学习或开发目的。 – Stennie 2013-04-11 06:25:37

+2

你是对的,但我不喜欢看到任何警告:)(即使在开发模式下) – crsuarezf 2013-04-11 14:15:36

+1

@ingcarlos +1 cuz我以为我是唯一一个:-P – 2014-08-22 00:50:55

回答

8

你要搜索的内容使用的是Mac OSX 10.8.2

TNX是launchctl limit maxfiles
要更改它,您需要运行命令launchctl limit maxfiles 1024 2048
要永久更改这些值,您需要创建/etc/launchctl.conf并设置您需要的值(有关详细信息,请参阅here),或将上述命令添加到〜/ .bash_profile。
或者你可以创建脚本将设置上限,然后启动蒙戈

+2

这不适合我在OSX 10.8.4上。如果其他人遇到麻烦'ulimit -n 1024'做了窍门 – jwags 2013-11-05 22:00:25

+0

上面的命令需要以root身份执行(不是通过sudo)。 – 2016-06-05 03:14:50

+0

我不建议将硬限制设置为2048,它确实锁定了我的系统(优胜美地)。愚蠢的我没有仔细检查的情况下运行一个命令!运行“launchctl limit maxfiles”以查看当前限制,然后仅更改软限制,例如,在我的情况下,我有“256无限”(第一是软,第二是硬),所以我跑了“sudo launchctl限制maxfiles 1024无限”。实际上实际上将它们设置为“1024 10240”。 所以最后,使用“ulimit -n 1024”(没有sudo)对我自己的运行MongoDB的用户来说工作得很好......听起来比改变系统范围设置更好的解决方案。 – Kamal 2016-07-08 18:59:57

0

已经面临着类似的问题,很多的搜索后,我发现this答案是有用的。

本要点说明了如何通过专用的启动文件以及会话更改来解决此问题。

1

如果运行蒙戈作为一种服务,您可以通过添加下一行的

/Library/LaunchDaemons/org.mongodb.mongod.plist

<key>SoftResourceLimits</key> 
    <dict> 
    <key>NumberOfFiles</key> 
    <integer>1024</integer> 
    </dict> 
配置最大打开的文件

并重新启动服务

+1

在我的情况下,该文件是_/Library/LaunchDaemons/org.mongo.mongod.plist_,其余的是相同的。 重新启动服务请参考: https://serverfault.com/questions/194832/how-to-start-stop-restart-launchd-services-from-the-command-line – aspdeepak 2017-09-04 11:08:10