【问题标题】:MongoDB on a Windows 7 machine: No connection could be madeWindows 7 机器上的 MongoDB:无法建立连接
【发布时间】:2014-05-18 20:45:51
【问题描述】:

在 Windows 7 机器上使用 mongod.exe 启动 Mongo 后,我尝试启动失败并出现错误的 mongo shell:

连接127.0.0.1:27017失败,原因:errno:10061 No 可以建立连接,因为目标机器主动拒绝 它。

...

错误:无法连接到服务器 127.0.0.1:27017 (127.0.0.1), 连接尝试在 src/mongo/shell/mongo.js:146 异常处失败: 连接失败

在我运行 mongod 的 CMD 中,输出为:

C:\Users\Vera>mongod --dbpath c:\mongodb\mongodata

2014-05-18T17:10:10.135-0300 [initandlisten] MongoDB 开始: pid=3296 端口=27017 dbpath=c:\mongodb\mongodata 64位主机=Vera-PC

2014-05-18T17:10:10.136-0300 [initandlisten] targetMinOS:Windows 7/Windows Server 2008 R2

2014-05-18T17:10:10.136-0300 [initandlisten] 数据库版本 v2.6.1

2014-05-18T17:10:10.136-0300 [initandlisten] git 版本: 4b95b086d2374bdcfcdf2249272fb552c9c726e8

2014-05-18T17:10:10.136-0300 [initandlisten] 构建信息:windows sys.getwindowsversion(主要=6,次要=1,构建=7601,平台=2, service_pack='服务包 1')

BOOST_LIB_VERSION=1_49

2014-05-18T17:10:10.136-0300 [initandlisten] 分配器:系统

2014-05-18T17:10:10.136-0300 [initandlisten] 选项:{ 存储:{ dbPath: "c:\mongodb\mongodata" } }

2014-05-18T17:10:10.242-0300 [initandlisten] 日志 dir=c:\mongodb\mongodata\journal

2014-05-18T17:10:10.243-0300 [initandlisten] 恢复:没有日志 文件存在,无需恢复

2014-05-18T17:10:11.077-0300 [initandlisten] 等待连接 在端口 27017

有什么建议可以解决这个问题吗?

【问题讨论】:

    标签: mongodb initialization


    【解决方案1】:

    我遇到了同样的错误并修复了它:

    1) mkdir c:\data

    2) cd data

    3)mongod -dbpath .

    4) 现在在另一个命令窗口中,我可以使用mongo 命令从我的客户端进行连接。

    【讨论】:

    • 谢谢,这对我来说是这样的:'mkdir c:\data','mongod -dbpath c:\data' 最后是新 cmd 实例中的 mongo
    • 对于未来的用户,在 #3 上的空格后有一个句点在当前路径中传递。应该很明显,但仍然花了我一分钟,可以看到有人挂断。
    • 给mongodb团队的建议:安装时为我们创建这个默认数据目录。
    • 它对我有用,我现在可以启动 mongo 但我丢失了以前的数据。有人知道如何找回旧数据吗?
    【解决方案2】:

    我遇到了这个问题。我的固定是:

    1. 假设你有一个目录:"C:\mongo_databse"
    2. 打开命令提示符并输入(假设您已将 Mongo bin 目录添加到 PATH):mongod --dbpath=C:/mongo_database。 命令提示符会有一些日志。

    3. 现在打开 ANOTHER 命令提示符,然后输入 mongo 即可。

    【讨论】:

      【解决方案3】:

      解决我的问题的方法是创建一个将 bind_ip 设置为 127.0.0.1 的文件 startmongo.conf。之后,我刚刚创建了一个 *.bat 来使用类似的东西来启动 mongo:

      mongod --config c:\mongodb\bin\startmongo.conf

      更多详情请见 post

      【讨论】:

        【解决方案4】:
        1. 我假设您的 mongo.config 文件位于与 bin 目录相同级别的 mongodb 文件夹中。mongo.config 文件的内容是:

          dbpath=C:\mongodb\data
          logpath=C:\mongodb\log\mongo.log
          diaglog=3
          

          别忘了在log文件夹内的bin目录同级创建data文件夹和log文件夹创建mongo.log空文件。

        2. 将命令提示符指向 C:\mongodb\bin mongo db bin 文件夹所在的位置。

        3. 在windows打字中创建mongo db服务

          mongod.exe --storageEngine=mmapv1 --config=../mongo.config 
          
        4. 从现在开始,您可以将 mongo db 服务启动为

          net start mongodb
          
        5. 最后你可以从 mongo db 客户端输入连接到 mongo db 服务器

          mongo.exe
          
        6. 一旦从第 1 步成功进入第 3 步,从下一次开始,您只需要第 4 步和第 5 步即可启动服务并进行连接。

        【讨论】:

        • 第三步,需要附加开关 --install 来安装服务
        【解决方案5】:

        it prompted me like this

        1)所以,我创建了一条路径

        C:\data\db

        2)现在运行

        mongod 在您的终端中

        它解决了我的问题!

        【讨论】:

          【解决方案6】:

          我收到此错误是因为磁盘空间不足。 检查你的 mongo 日志。

          【讨论】:

            【解决方案7】:

            当我尝试通过 cmd 启动我的 mongo db 时,我遇到了类似的错误。但是不同之处在于我有一个配置文件,其中包含 db 和 log 文件夹的路径,并且想要使用相同的路径。几天前我在使用 mongo,它运行良好,但是当我今天再次开始使用它时,它给了我错误:

            2015-05-27T10:33:22.820-0400 I CONTROL  Hotfix KB2731284 or later update is   installed, no need to zero-out data files
            MongoDB shell version: 3.0.2
            connecting to: test
            2015-05-27T10:33:23.854-0400 W NETWORK  Failed to connect to 27.0.0.1:27017, reason: errno:10061 No connection could be made because the target machine actively refused it.
            2015-05-27T10:33:23.857-0400 E QUERY    Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed at connect src/mongo/shell/mongo.js:179:14) at (connect):1:6 at src/mongo/shell/mongo.js:179 exception: connect failed
            

            这是我修复它的方法:

            1. 以管理员身份打开 cmd 并导航到 MongoDB 的 bin 文件夹并键入:mongod --config <path to your config file> --install
            2. 现在启动您的 mongo db 服务:net start mongodb 您应该收到一条消息:The MongoDB service was started successfully.
            3. 关闭此命令提示符并以管理员身份打开另一个命令提示符,再次导航到 bin 文件夹并键入 mongo

            这会将您连接到 mongodb test

            随时按 ctrl+c 退出。

            希望这会有所帮助。

            【讨论】:

              【解决方案8】:

              打开任务管理器,点击顶部的服务选项卡。从列表中右键单击 mongoDB,然后单击开始。

              【讨论】:

                【解决方案9】:

                在 Windows 10 中: 执行以下命令重启 mongodb 服务(以管理员身份),如果安装 mongodb 后系统重启,则需要。

                net start mongodb 
                

                还要检查一下,如果创建了MongoDBInstallation文件夹/data和/data/db文件夹,同样可以在MongoDBInstallation\bin\mongod.cfg获取

                mongod --dbpath=c:\MongoDBInstallation\data\db
                

                【讨论】:

                  【解决方案10】:

                  我和@user1501382有非常相似的经历,但是按照the documentation稍微调整了一切

                  1) cd c: //更改为C盘

                  2) mkdir data //创建目录数据

                  3)cd data

                  4) mkdir db //创建目录 db

                  5) cd db //改变目录,让你在c:/data/db

                  6) 运行mongod -dbpath

                  7) 关闭此终端,打开一个新终端并运行mongod

                  【讨论】:

                    【解决方案11】:

                    对于 mongodb 3.0 版本使用“--smallfiles”。

                    例如:-

                    mongod --dbpath="C:\Program Files\MongoDB\Server\3.0" --logpath="C:\Program Files\MongoDB\Server\3.0\data\log.txt" --smallfiles --install

                    【讨论】:

                      【解决方案12】:

                      我不确定是否有更好的方法来运行它。 对我来说,我使用这些设置来创建目录并确定 MongoDB 的新路径。 对我来说重要的是,我想运行它作为服务器 (mongod),然后在 another 终端中输入 @ 987654322@ 为我提供了使用数据库的选项。 我希望这可以帮助某人。

                      【讨论】:

                        【解决方案13】:

                        我在这个页面上找到了我的答案。 https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-mongo-app?view=aspnetcore-3.1&tabs=visual-studio 因此,首先,为您的数据创建一个文件夹;然后,打开一个命令shell

                        mongod --dbpath <data_directory_path>
                        

                        然后,打开另一个 shell,做任何你想做的事。你可以在 MongoDB Compass 中看到,如果你之前有一个集合,就会有一个集合。

                        【讨论】:

                          【解决方案14】:

                          我试过above answer ,并且它有效,但有一个非常重要的问题:我以前的集合丢失在另一个 mongoDB 数据文件夹中,我不知道它们在哪里以及如何找回它们。

                          在我遇到这个mongo 错误之前,我运行mongo 没有问题。当我的 windows10 启动文件损坏并且我的电脑进入蓝屏时,mongo 遇到了这个错误。所以我只是试图检索我刚刚在一个终端中运行 mongo 而不是在另一个终端中运行 mongod 的先前条件,所以

                          我用它的安装exe文件修复了mongoDB,现在一切正常。

                          这是我的mongoDB 规格:mongodb-win32-x86_64-2012plus-4.2.1

                          希望这对你也有帮助。

                          【讨论】:

                            【解决方案15】:

                            只需在一个命令提示符中输入mongod,然后在另一个命令提示符中运行mongo

                            【讨论】:

                              【解决方案16】:

                              只需按照以下步骤,大部分问题都会得到解决(Windows 10) services->mongodb->更改自动运行

                              【讨论】:

                                【解决方案17】:

                                你可以去 services>>Mongo DB server .. 右键单击​​并按 start 。这对我有用

                                【讨论】:

                                  【解决方案18】:

                                  通过简单的步骤,我解决了这个问题 第一步 - 在 PC 的 C 盘中创建一个新文件夹,名称为 - “data” 第二步 - 现在打开这个“数据”文件夹 第三步 - 在“data”文件夹中,再次创建一个新的“db”文件夹 注意 - 只需将这两个文件夹都留空,无需在其中添加任何内容, 并在 PC 的 PowerShell 中运行“mongo”和“mongod”。

                                  【讨论】:

                                  • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
                                  猜你喜欢
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 2021-03-13
                                  • 2013-09-22
                                  • 2020-08-13
                                  • 2021-12-03
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 1970-01-01
                                  相关资源
                                  最近更新 更多