** WARNING: Access control is not enabled for the database.

原因分析:新版本的MongDB增加了安全性设计,推荐用户创建使用数据库时进行验证。如果用户想建立简单连接,则会提示警示信息。

解决方案:
创建管理员并设置密码

>use admin
>db.createUser(
{
user: "admin", //用户名
pwd: "passwd", //密码
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] //设置权限
}
)

重启数据库服务器

mongod --auth --port 27017

“--auth”命令即表示访问数据库需要认证。此处可不指定端口,则默认为27017。

启动后即可看到不再提示报警信息。

** WARNING: You are running this process as the root user, which is not recommended.

groupadd mgdb
useradd -g mgdb mgdb
passwd mgdb
Automng_123

chown -R mgdb.mgdb /usr/local/mongodb/
chown -R mgdb.mgdb /data/db/
su - mgdb
export PATH=/usr/local/mongodb/bin:$PATH

mongod -auth --port 27017

** WARNING: This server is bound to localhost.
** Remote systems will be unable to connect to this server.
** Start the server with --bind_ip <address> to specify which IP
** addresses it should serve responses from, or with --bind_ip_all to
** bind to all interfaces. If this behavior is desired, start the
** server with --bind_ip 127.0.0.1 to disable this warning.

mongod -auth --port 27017 --bind_ip=192.168.56.82

** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
** We suggest setting it to 'never'

查看大页为零
$ grep Huge /proc/meminfo
AnonHugePages: 92160 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB

临时解决方案
echo never >> /sys/kernel/mm/transparent_hugepage/enabled
echo never >> /sys/kernel/mm/transparent_hugepage/defrag

永久修改参考请https://www.cnblogs.com/ywcz060/p/5543228.html

然后再次启动mongodb
$ mongod -auth --port 27017 --bind_ip=192.168.56.82
2018-07-19T14:46:06.610+0800 I CONTROL [main] Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols 'none'
2018-07-19T14:46:06.620+0800 I CONTROL [initandlisten] MongoDB starting : pid=2723 port=27017 dbpath=/data/db 64-bit host=red4.local
2018-07-19T14:46:06.620+0800 I CONTROL [initandlisten] db version v4.0.0
2018-07-19T14:46:06.620+0800 I CONTROL [initandlisten] git version: 3b07af3d4f471ae89e8186d33bbb1d5259597d51
2018-07-19T14:46:06.620+0800 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1e-fips 11 Feb 2013
2018-07-19T14:46:06.620+0800 I CONTROL [initandlisten] allocator: tcmalloc
2018-07-19T14:46:06.620+0800 I CONTROL [initandlisten] modules: none
2018-07-19T14:46:06.620+0800 I CONTROL [initandlisten] build environment:
2018-07-19T14:46:06.620+0800 I CONTROL [initandlisten] distmod: rhel70
2018-07-19T14:46:06.620+0800 I CONTROL [initandlisten] distarch: x86_64
2018-07-19T14:46:06.620+0800 I CONTROL [initandlisten] target_arch: x86_64
2018-07-19T14:46:06.620+0800 I CONTROL [initandlisten] options: { net: { bindIp: "192.168.56.82", port: 27017 }, security: { authorization: "enabled" } }
2018-07-19T14:46:06.621+0800 I STORAGE [initandlisten] Detected data files in /data/db created by the 'wiredTiger' storage engine, so setting the active storage engine to 'wiredTiger'.
2018-07-19T14:46:06.621+0800 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=407M,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),statistics_log=(wait=0),verbose=(recovery_progress),
2018-07-19T14:46:07.437+0800 I STORAGE [initandlisten] WiredTiger message [1531982767:437636][2723:0x7f161f9eab00], txn-recover: Main recovery loop: starting at 6/6144
2018-07-19T14:46:07.530+0800 I STORAGE [initandlisten] WiredTiger message [1531982767:530163][2723:0x7f161f9eab00], txn-recover: Recovering log 6 through 7
2018-07-19T14:46:07.594+0800 I STORAGE [initandlisten] WiredTiger message [1531982767:594159][2723:0x7f161f9eab00], txn-recover: Recovering log 7 through 7
2018-07-19T14:46:07.642+0800 I STORAGE [initandlisten] WiredTiger message [1531982767:642404][2723:0x7f161f9eab00], txn-recover: Set global recovery timestamp: 0
2018-07-19T14:46:07.680+0800 I RECOVERY [initandlisten] WiredTiger recoveryTimestamp. Ts: Timestamp(0, 0)
2018-07-19T14:46:07.713+0800 I FTDC [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data'
2018-07-19T14:46:07.714+0800 I NETWORK [initandlisten] waiting for connections on port 27017

使用用户认证后的登录方式

mongo --username=admin --password=passwd --host=192.168.56.82 --port=27017

补充说明,在测试过程中mongo启动占用内存约40M,这个值对于数据库来说,是非常小的。

mgo02_mongodb启动警告处理的更多相关文章

  1. Redis 启动警告错误解决[转]

    Redis 启动警告错误解决 启动错误 1.WARNING overcommit_memory is set to 0! Background save may fail under low memo ...

  2. Redis 启动警告解决【转】

    [root@centos224]# service redisd start :M Nov :: (it was originally set to ). _._ _.-``__ ''-._ _.-` ...

  3. Redis 启动警告解决

    Redis 启动警告解决[转] [root@centos224]# service redisd start 21985:M 24 Nov 04:07:20.376 * Increased maxim ...

  4. Redis启动警告错误解决

    启动错误 (1)WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxc ...

  5. Redis在CentOS7中的启动警告

    CentOS7安装Redis,启动时会出现如下图3个警告. 问题1:WARNING: The TCP backlog setting of 511 cannot be enforced because ...

  6. Redis 启动警告错误解决

    启动错误 1.WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. T ...

  7. redis启动警告解决

    vim /etc/rc.localecho never > /sys/kernel/mm/transparent_hugepage/enabled加入上面那句到/etc/rc.local,开机启 ...

  8. rails 5.2 启动警告 warning: previous definition of VERSION was here和bootsnap

    bootsnap依赖问题 You should add gem 'bootsnap' to your gemfile to install it or remove the line require ...

  9. spring boot 启动警告 WARN 15684 --- [ restartedMain] c.n.c.sources.URLConfigurationSource : No URLs will be polled as dynamic configuration sources. 解决

    添加一个配置文件config.properties ,即便是空的也是可以的

随机推荐

  1. JavaPersistenceWithHibernate第二版笔记-第七章-001Mapping a set(@ElementCollection、@CollectionTable、@JoinColumn、)

    一.结构 二.代码 1. package org.jpwh.model.collections.setofstrings; import org.jpwh.model.Constants; impor ...

  2. Luogu 2149 [SDOI2009]Elaxia的路线

    感觉这题可以模板化. 听说spfa死了,所以要练堆优化dijkstra. 首先对$x_{1},y_{1},x_{2},y_{2}$各跑一遍最短路,然后扫一遍所有边看看是不是同时在两个点的最短路里面,如 ...

  3. Linux脚本设计4——一些实用程序

    实用程序1:列目录 #!/bin/bash path=`echo $PATH | sed 's/:/ /g'` for d in $path do echo $d done 这是一个for循环,注意p ...

  4. python的远程调试(使用pycharm)

    测试环境描述1:c++调用python,操作系统环境是linux 2:pycharm安装在windows 安装步骤 1:把pycharm-debug.egg上传到linux上面. 2:使用easy_i ...

  5. CodeForces 566D Restructuring Company (并查集+链表)

    题意:给定 3 种操作, 第一种 1 u v 把 u 和 v 合并 第二种 2 l r 把 l - r 这一段区间合并 第三种 3 u v 判断 u 和 v 是不是在同一集合中. 析:很容易知道是用并 ...

  6. 后台调js方法

    Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "<script>btnSearch( ...

  7. C#中IDisposable的用法-垃圾回收

    在Net中,由GC垃圾回收线程掌握对象资源的释放,程序员无法掌控析构函数的调用时机.对于一些非托管资源,比如数据库链接对象等,需要实现IDisposable接口进行手动的垃圾回收.那么什么时候使用Id ...

  8. js 值传递,引用传递

    参考:http://www.cnblogs.com/lcngu/p/5876273.html JS的基本类型,是按值传递的. 对象类型按共享传递的(call by sharing,也叫按对象传递.按对 ...

  9. jqueue使用ajax方式

    1.get: $.ajax({ type: "GET", url: baseUrl + "Showcontent/del_user?type=1&id=" ...

  10. Dapper --Execute

    Dapper-Execute Ececute是一种可被任何IDbConnection类型的对象调用的扩展方法.它可以执行一次或多次命令, 并返回受影响的行数.此方法通常用于执行存储过程.插入.更新.删 ...