【问题标题】:MongoDB cannot start server: The default storage engine 'wiredTiger' is not available with this build of mongodMongoDB 无法启动服务器:此版本的 mongod 不提供默认存储引擎“wiredTiger”
【发布时间】:2016-03-18 13:23:56
【问题描述】:

MongoDB 服务器无法启动并出现以下错误:

2015-12-13T00:49:12.191+0600 I CONTROL [initandlisten] 选项:{}
2015-12-13T00:49:12.195+0600 我在

中存储 [initandlisten] 异常

initAndListen:28663 无法启动服务器。默认存储引擎 此版本的 mongod 不提供“wiredTiger”。请 明确指定不同的存储引擎,例如 --storageEngine=mmapv1., 终止 2015-12-13T00:49:12.195+0600 我控制 [initandlisten] dbexit: rc: 100

【问题讨论】:

    标签: mongodb


    【解决方案1】:

    嗯...似乎存在版本冲突:您可能正在运行 32 位版本的 Mongo。照他们说的做,实际使用其他默认存储引擎:

    在你的 Mongo/bin 目录中编写如下命令:

    mongod --storageEngine=mmapv1 --dbpath [your-path]
    

    应该能解决问题。我猜你不介意用旧的 mmapv1 代替 WiredTiger 吧?

    【讨论】:

    • 我很高兴这样做 - 花点时间查看更改,以便您知道下次该怎么做!欢迎使用 Stack Overflow!
    • 我试过 mongod.exe --storageEngine=mmapv1 并且成功了
    • 你是真正的英雄! (y)
    • 哇,太好了,在win10 32位上运行良好,它甚至可以在我的浏览器中流畅运行(chrome 127.0.0.1:27017)
    【解决方案2】:

    仔细看错误,错误信息很清楚问题的原因和解决方法,只要我们在安装MonogoDB命令后添加一个参数--storageEngine = mmapv1,将wiredTiger引擎切换到mmapv1引擎,就可以了可以成功安装。

    所以你的完整命令如下:

    mongod --dbpath MongoDb_Location_In_Your_HDD\data --storageEngine=mmapv1

    注意:MongoDb_Location_In_Your_HDD 表示您放置 MongoDb 的位置,例如- D:\mongodb

    【讨论】:

    • 始终欢迎提供指向潜在解决方案的链接,但请add context around the link,以便您的其他用户知道它是什么以及为什么存在。始终引用重要链接中最相关的部分,以防目标站点无法访问或永久离线。考虑到仅仅是指向外部网站的链接Why and how are some answers deleted? 的一个可能原因。
    • 我没有注意到“老虎”这个词。我想知道为什么他们不将其设为默认值? @Mojam Dewan?
    【解决方案3】:

    我在为 windows 服务器安装 mongodb 32 位 msi 时也遇到了这个问题。

    原因可能是:

    我认为对于 mongodb 32 位数据库引擎不会自动使用,我们需要在配置 db 路径时明确给出它们

    修复如下:

    以管理员身份运行命令提示符

    d:\mongodb>mongod --dbpath "data" --storageEngine "mmapv1"

    添加上面的粗体代码后问题解决了。

    谢谢 开发

    【讨论】:

      【解决方案4】:

      您可以使用 mongod --storageEngine=mmapv1 --dbpath "Your Path"

      对我来说:

      "C:\Program Files\MongoDB\Server\3.2\bin\mongod.exe" --storageEngine=mmapv1 --dbpath="C:\data\db"

      希望它也适合你。

      【讨论】:

      • mongod --dbpath="C:\data\db" --storageEngine=mmapv1
      【解决方案5】:

      由于您在 32 位机器上使用 MongoDB,32 位机器上不支持存储引擎wiredTiger。这个问题有两种解决方案:

      1. 将您的系统升级到 64 位
      2. 把你的存储引擎换成适合32位系统的引擎,比如mmapv1,再运行mongod。

      结果是这样的:

      【讨论】:

        【解决方案6】:

        如果你使用32位Windows系统,则在命令提示符下执行以下命令:-

        1. Go to the bin directory of MongoDB using the command 
        

        cd C:\ProgramFile\MongoDB\Server\3.x\bin

        2. Type the following command 
        

        mongod.exe --storageEngine=mmapv1

        然后单击 Enter。它将解决错误。谢谢!

        【讨论】:

          【解决方案7】:

          我在C盘创建了一个目录-

          C:\data\db
          

          并运行如下命令,它对我有用。

          C:\Users\USERNAME\mongodb-win32-i386-3.2.22\bin>mongod.exe --storageEngine=mmapv1
          

          【讨论】:

            【解决方案8】:

            我在 MongoDB v4 上,使用 MongoDB v3.6 中的 mongod 二进制文件为我工作,其他解决方案均无效。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多