Loading

MongoDB - 报错集

WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'

centos7.9 + mongodb3.6.12

MongoDB为了更高的性能,建议centos关闭大页内存,没关闭之前,终端登录后,会提示:

[mongod@cs ~]$ mongo -uroot -p1234 --port 27017
MongoDB shell version v3.6.12
connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("e2649165-3f30-451b-aa85-900b12aad655") }
MongoDB server version: 3.6.12
Server has startup warnings: 
2021-01-19T11:21:35.261+0800 I CONTROL  [initandlisten] 
2021-01-19T11:21:35.261+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2021-01-19T11:21:35.261+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2021-01-19T11:21:35.261+0800 I CONTROL  [initandlisten] 
2021-01-19T11:21:35.261+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2021-01-19T11:21:35.261+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2021-01-19T11:21:35.261+0800 I CONTROL  [initandlisten] 

怎么关呢?

vim /etc/rc.local追加如下内容,然后重新运行一下sh /etc/rc.local即可:

[root@cs software]# pwd
/opt/software
[root@cs software]# vim /etc/rc.local 

if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
  echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
   echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi

[root@cs software]# sh /etc/rc.local 

完事检查是否设置成功,都是never即可:

[root@cs software]# cat /sys/kernel/mm/transparent_hugepage/enabled        
always madvise [never]
[root@cs software]# cat /sys/kernel/mm/transparent_hugepage/defrag 
always madvise [never]

完事后,重启MongoDB服务。
PS:rc.local控制开机自启动。

注意,仅适用于centos系统,其他系统,如Ubuntu等参考官档

Unrecognized option: processManagement.fork

win10 + mongodb3.6.12

在Windows环境安装MongoDB3.6.12(zip)时,在将MongoDB添加到Windows的服务时,遇到报错:

经查,是我配置文件写的有问题:

# 系统日志相关
systemLog:
  destination: file  # 日志输出到文件
  path: C:\mongodb\log\mongodb.log  # 日志位置
  logAppend: true    # 是否以追加的形式记录日志

# 数据相关
storage:
  journal:  # 回滚日志
    enabled: true
  dbPath: C:\mongodb\data  # 数据存储目录

# 进程相关
# processManagement:
#   fork: true  # 后台运行

# 网络配置相关
net:
  port: 27017 # 默认端口
  bindIp: 127.0.0.1  # 绑定ip, 多个ip以逗号分隔

上面的配置是从Linux中的MongoDB配置,其中进程相关的配置引起的报错,所以,将进程相关的配置注释掉即可。
在重新执行就可以了。

posted @ 2021-01-13 18:33  听雨危楼  阅读(76)  评论(0编辑  收藏  举报