1、多核心系统资源分配问题

2017-10-13T17:57:02.650+0800 I CONTROL [initandlisten] ** WARNING: You are running on a NUMA machine.
2017-10-13T17:57:02.650+0800 I CONTROL [initandlisten] ** We suggest launching mongod like this to avoid performance problems:
2017-10-13T17:57:02.650+0800 I CONTROL [initandlisten] ** numactl --interleave=all mongod [other options]

就像提示中写的一样,启动脚本写成如下即可:

numactl --interleave=all /path/to/mongod --config /path/to/mongodb.conf

2、大内存页问题

2017-10-13T17:57:02.650+0800 I CONTROL [initandlisten]
2017-10-13T17:57:02.650+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2017-10-13T17:57:02.650+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2017-10-13T17:57:02.650+0800 I CONTROL [initandlisten]
2017-10-13T17:57:02.650+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2017-10-13T17:57:02.650+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'

 我们cat一下上面两个文件,发现内容是“[always] madvise never”,我们需要根据提示将其改为never,但是这项设置不是很好改,所以一个比较简单的解决方案就是开机时将其修改了,并不改变默认配置。而且对此文件的修改需要在root用户下进行,直接在启动脚本中sudo -S是不行的。于是解决方案如下: 

sudo vim /etc/rc.local

在后面加入如下两句
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag

3、bonus

  记得把/etc/security/limits.conf中的nofile改大,不然1024的nofile肯定会因为文件打开过多出现系统问题的。

  前两个warning仅仅会导致性能出现问题,而第三个则会导致系统错误。

4、其他的Access Control warning就不用管了

mongoDB启动前的系统设置,解决部分Warning问题的更多相关文章

  1. 安装MongoDB启动时报错‘发生系统错误2’的解决办法

    安装数据库mongodb启动时报"发生系统错误2". 这个问题是如果你之前已经装过一次,并且两次安装目录不同,就绝对会碰到的,因为你之前安装的路径已经在注册表中生成了,并没有随着你 ...

  2. MongoDB启动配置等

    目录: 一.mongoDB 启动配置 二.导出,导入,运行时备份 三.Fsync锁,数据修复 四.用户管理,安全认证 一.启动项 mongod --help C:\Windows\system32&g ...

  3. 《k8s-1.13版本源码分析》- Scheduler启动前逻辑

    本文原始地址(gitbook格式):https://farmer-hutao.github.io/k8s-source-code-analysis/core/scheduler/before-sche ...

  4. MongoDB启动报错 32-bit servers don't have journaling enabled by default. Please use --journal if you want durability. 【转】

    之前MongoDB启动的时候是蛮正常的,不知道后来启动报错了,就把粘贴出来查询了.最后才知道是由于自己不正常的关闭导致的这个情况. --摘录:MongoDB非正常关闭后修复记录 mongod没有后台执 ...

  5. 在 ASP.NET Core 程序启动前运行你的代码

    一.前言 在进行 Web 项目开发的过程中,可能会存在一些需要经常访问的静态数据,针对这种在程序运行过程中可能几乎不会发生变化的数据,我们可以尝试在程序运行前写入到缓存中,这样在系统后续使用时就可以直 ...

  6. Mongodb启动命令mongod参数说明

    Mongodb启动命令mongod参数说明 mongod的主要参数有: 基本配置 ----------------------------------------------------------- ...

  7. dell r710 安装ubuntu 12.04 server 启动后进入initramfs解决办法

    dell r710 安装ubuntu 12.04 server 启动后进入initramfs解决办法 grub 启动菜单后加入 rootdelay=90, 如下:/boot/vmlinuz-2.6.3 ...

  8. service mysql start出错,mysql启动不了,解决mysql: unrecognized service错误

    service mysql start出错,mysql启动不了,解决mysql: unrecognized service错误的方法如下: [root@ctohome.com ~]# service ...

  9. 重新想象 Windows 8.1 Store Apps (91) - 后台任务的新特性: 下载和上传的新特性, 程序启动前预下载网络资源, 后台任务的其它新特性

    [源码下载] 重新想象 Windows 8.1 Store Apps (91) - 后台任务的新特性: 下载和上传的新特性, 程序启动前预下载网络资源, 后台任务的其它新特性 作者:webabcd 介 ...

随机推荐

  1. 前端用Json传输数据给后台,用postman测试

    postman发送json格式的post请求   在地址栏里输入请求url:http://127.0.0.1:8081/getmoney 选择“POST”方式, 在“headers”添加key:Con ...

  2. [MySQL优化2]不用SELECT * FROM table;

    假设有一张employees表,它有8列:员工人数,姓氏,名字,分机,电子邮件,办公室代码,报告,职位等.如果要仅查看员工的名字,姓氏和职位,请使用以下查询:SELECT lastname, firs ...

  3. percona顶级项目(针对数据库)

    percona顶级项目(针对数据库) 地址:https://github.com/Percona-Lab 1.mongodb_consistent_backupTool for getting con ...

  4. 如何在Digital Ocean上申请服务器的教程

    本文会详细叙述如何在digital ocean上注册.申请.创建以及配置服务器,亲测有效. what's the Digital Ocean ? 根据度娘释义,Digital Ocean是digita ...

  5. MySQL最优配置模板( 5.6&5.7转)

    [client] user = root --用户 password = 1111aaA_ -- 密码 [mysql] prompt = [\\u@\\p][\\d]>\\_ -- cmd控制台 ...

  6. xshell帮助

    查看内置命令 $help Internal Commands:new: Creates a new session.open: Opens a session or the session dialo ...

  7. vue.js-moment的使用

    1.安装: npm install moment --save 2.引入:import moment from 'moment.js' 3.moment("时间").format( ...

  8. ELK(上)

    什么是ELK: ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件.新增了一个FileBeat,它是一个轻量级的日志收集处理工 ...

  9. [Java in NetBeans] Lesson 08. If: conditional statement

    这个课程的参考视频和图片来自youtube. 主要学到的知识点有: 1. If-else statement if (x > 5) { System.out.println("Inpu ...

  10. MySQL--5子查询与连接小结

    子查询:出现在其他sql语句中的 SELECT,必须出现在小括号内,子查询外层可以是常见的SELECT语句,INSERT语句 UPDATE语句 DELETE语句,在子查询中可以包含多个关键字和条件 ( ...