我做了mongodb安装,但当我尝试在Windows 10控制台启动时,日志显示以下内容:
C:\ WINDOWS \ system32>“C:\ Program Files \ MongoDB \ Server \ 3.6 \ bin \ mongod.exe”2017-12-13T11:09:06.089-0700 I CONTROL [initandlisten] MongoDB开始:pid = 11240 port = 27017 dbpath = C:\ data \ db \ 64-bit host = DESKTOP-5GUM84N 2017-12-13T11:09:06.089-0700 I CONTROL [initandlisten] targetMinOS:Windows 7 / Windows Server 2008 R2 2017-12-13T11:09 :06.090-0700 I CONTROL [initandlisten] db version v3.6.0 2017-12-13T11:09:06.091-0700 I CONTROL [initandlisten] git version:a57d8e71e6998a2d0afde7edc11bd23e5661c915 2017-12-13T11:09:06.092-0700 I CONTROL [initandlisten] OpenSSL版本:OpenSSL 1.0.1u-fips 22 Sep 2016 2017-12-13T11:09:06.092-0700 I CONTROL [initandlisten] allocator:tcmalloc 2017-12-13T11:09:06.092-0700 I CONTROL [initandlisten] modules:none 2017-12-13T11:09:06.093-0700 I CONTROL [initandlisten]构建环境:2017-12-13T11:09:06.093-0700 I CONTROL [initandlisten] distmod:2008plus-ssl 2017-12-13T11:09:06.094- 0700 I CONTROL [initandlisten] distarch:x86_64 2017-12-13T11:09:06.095-0700 I CONTROL [initandlisten] target_arch:x86_64 2017-12-13T11:09:06.095-0700 I CONTROL [initandlisten]选项:{} 2017-12-13T11:09:06.100-0700我 - [initandlisten]检测到'wiredTiger'存储引擎创建的C:\ data \ db \中的数据文件,因此将活动存储引擎设置为'wiredTiger'。 2017-12-13T11:09:06.101-0700 I STORAGE [initandlisten] wiredtiger_open config:create,cache_size = 3534M,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),2017-12-13T11:09 :06.574-0700 I STORAGE [initandlisten] WiredTiger消息[1513188546:574263] [11240:140724166549840],txn-recover:主恢复循环:从10/4608开始2017-12-13T11:09:06.787-0700 I STORAGE [initandlisten ] WiredTiger消息[1513188546:786400] [11240:140724166549840],txn-recover:恢复日志10到11 2017-12-13T11:09:07.034-0700 I STORAGE [initandlisten] WiredTiger消息[1513188547:34042] [11240:140724166549840 ],txn-recover:恢复日志11到11 2017-12-13T11:09:07.732-0700 I CONTROL [initandlisten] 2017-12-13T11:09:07.732-0700 I CONTROL [initandlisten] **警告:访问控制是没有启用数据库。 2017-12-13T11:09:07.733-0700 I CONTROL [initandlisten] ** 对数据和配置的读写访问不受限制。 2017-12-13T11:09:07.735-0700 I CONTROL [initandlisten] 2017-12-13T11:09:07.735-0700 I CONTROL [initandlisten] **警告:此服务器绑定到localhost。 2017-12-13T11:09:07.736-0700 I CONTROL [initandlisten] **远程系统将无法连接到此服务器。 2017-12-13T11:09:07.736-0700 I CONTROL [initandlisten] **用--bind_ip启动服务器以指定哪个IP 2017-12-13T11:09:07.737-0700 I CONTROL [initandlisten] **地址应该提供响应,或者使用--bind_ip_all来响应2017-12-13T11:09:07.737-0700 I CONTROL [initandlisten] **绑定到所有接口。如果需要此行为,请使用--bind_ip 127.0.0.1启动2017-12-13T11:09:07.738-0700 I CONTROL [initandlisten] **服务器以禁用此警告。 2017-12-13T11:09:07.738-0700 I CONTROL [initandlisten] 2017-12-13T11:09:07.739-0700 I CONTROL [initandlisten] 2017-12-13T11:09:07.739-0700 I CONTROL [initandlisten] **警告:此计算机的文件系统缓存配置为大于总内存的40%。这可能会导致内存压力增加和性能下降。 2017-12-13T11:09:07.740-0700 I CONTROL [initandlisten]参见http://dochub.mongodb.org/core/wt-windows-system-file-cache 2017-12-13T11:09:07.740-0700 I CONTROL [initandlisten] 2017-12-13T15:09:08.161-0300 W FTDC [initandlisten]无法为FTDC初始化性能计数器:WindowsPdhError:PdhExpandCounterPathW失败,并且“计算机上找不到指定的对象”。 for counter'\ Memory \ Available Bytes'2017-12-13T15:09:08.161-0300 I FTDC [initandlisten]使用目录'C:/data/db/diagnostic.data'初始化全时诊断数据'2017-12- 13T15:09:08.165-0300 I NETWORK [initandlisten]等待端口27017上的连接
我按照https://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows/#run-mongodb-community-edition的所有说明,但我无法启动mongodb。有谁知道如何修复此启动错误?
我希望你的帮助人:c
问候!
你的mongod最初在开始时成功开始了。日志输出:
NETWORK [initandlisten] waiting for connections on port 27017
表示mongod
在线并等待指定端口上的连接。你可以在同一台机器上打开一个mongo
shell连接到mongod
。
但是,据我所知,显示的警告可能表明操作中存在问题。我们已更新文档以解决此问题:
你可以在这里找到有问题的文件:Run MongoDB Community on Windows
看起来其他用户已经帮助您获得了一个好的工作配置文件,但我想分开原始输出以澄清那里遇到的任何混淆。
让我们先打破原来的mongod进程输出:
CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database. 2017-12-13T11:09:07.733-0700
这是一个警告,表示您未使用身份验证或授权启动mongod进程。由于您似乎使用的是3.6的默认设置,因此这是一个预期的信息警告。当你有机会并计划实施简单的身份验证时,请仔细阅读有关authentication的MongoDB文档,特别是如果mongod
将在任何时间点暴露给公共互联网。
下一个警告是:
CONTROL [initandlisten] ** WARNING: This server is bound to localhost. 2017-12-13T11:09:07.736-0700
默认情况下,在MongoDB 3.6中,mongod
绑定到localhost地址。简而言之,mongod
只监听本地计算机上的连接。这使您有时间在将MongoDB部署打开到专用网络或公共Internet之前配置身份验证。
如其他用户所述,您可以通过在配置文件中设置net.bindIp
来解决此问题:
net:
bindIp: 127.0.0.1
当您准备打开mongod
到非localhost连接时,只需在主机上附加与网络适配器关联的IP地址。例如,如果主机具有网络适配器192.168.1.15,则可以将其添加到bindIp
。这告诉mongod
监听两个地址上的传入连接。
net:
bindIp: "127.0.0.1,192.168.1.15"
就FTDC警告而言,\Memory\Available Bytes
计数器与Windows性能管理有关 - 您可以阅读有关该here的更多信息。您可能需要配置一些Windows组件以启用该计数器。计数器也可能只在Windows的服务器体系结构中可用(或可访问)。
警告是信息性的,不应影响正常操作,除非您严重依赖FTDC数据进行工作。
您可以在我们的Log Message documentation.中找到有关MongoDB中日志消息的更多信息
我相信这条消息来自mongod(mongodb服务器)。
现在你必须在“bin”文件夹中运行mongo.exe才能连接到服务器(启用mongod,不要关闭窗口)以启动mongodb。
确保在C:\ Program Files \ MongoDB \ Server \ 3.6 \ mongod.cfg中创建了一个mongod.cfg
这是从第3步创建配置文件。
打开该文件并在下面输入mongod.cfg
systemLog:
destination: file
path: c:\data\log\mongod.cfg
storage:
dbPath: c:\data\db
如果还有错误,请尝试在mongod.cfg中复制并粘贴这些代码:
systemLog:
destination: file
path: c:\data\log\mongod.cfg
logAppend: true
storage:
journal:
enabled: true
processManagement:
fork: true
net:
bindIp: 127.0.0.1
port: 27017
setParameter:
enableLocalhostAuthBypass: false
将以下内容放在mongod.cfg中
net:
port: 27017
bindIp: "127.0.0.1"
然后MONGO命令可以连接到本地实例。