我从托管服务下载了数据库快照,并尝试从命令行启动mongod
并将--dbpath
指向展开的转储目录。它运行,但不会熬夜。我得到以下内容:
2016-07-07T21:30:54.883-0400 I CONTROL [initandlisten] MongoDB starting : pid=1782 port=27017 dbpath=/Users/nate/Downloads/2016-07-07_21-10-23_UTC_pixwel_prod-deployment 64-bit host=lappy3.local
2016-07-07T21:30:54.884-0400 I CONTROL [initandlisten] db version v3.2.6
2016-07-07T21:30:54.884-0400 I CONTROL [initandlisten] git version: 05552b562c7a0b3143a729aaa0838e558dc49b25
2016-07-07T21:30:54.884-0400 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.2h 3 May 2016
2016-07-07T21:30:54.884-0400 I CONTROL [initandlisten] allocator: system
2016-07-07T21:30:54.884-0400 I CONTROL [initandlisten] modules: none
2016-07-07T21:30:54.884-0400 I CONTROL [initandlisten] build environment:
2016-07-07T21:30:54.884-0400 I CONTROL [initandlisten] distarch: x86_64
2016-07-07T21:30:54.884-0400 I CONTROL [initandlisten] target_arch: x86_64
2016-07-07T21:30:54.884-0400 I CONTROL [initandlisten] options: { storage: { dbPath: "/Users/nate/Downloads/2016-07-07_21-10-23_UTC_pixwel_prod-deployment" } }
2016-07-07T21:30:54.885-0400 I - [initandlisten] Detected data files in /Users/nate/Downloads/2016-07-07_21-10-23_UTC_pixwel_prod-deployment created by the 'mmapv1' storage engine, so setting the active storage engine to 'mmapv1'.
2016-07-07T21:30:54.897-0400 I JOURNAL [initandlisten] journal dir=/Users/nate/Downloads/2016-07-07_21-10-23_UTC_pixwel_prod-deployment/journal
2016-07-07T21:30:54.898-0400 I JOURNAL [initandlisten] recover : no journal files present, no recovery needed
2016-07-07T21:30:54.917-0400 I JOURNAL [durability] Durability thread started
2016-07-07T21:30:54.918-0400 I JOURNAL [journal writer] Journal writer thread started
2016-07-07T21:30:55.206-0400 I STORAGE [initandlisten] Old 2.4 style user index identified. The authentication schema needs to be updated by running authSchemaUpgrade on a 2.6 server.
2016-07-07T21:30:55.206-0400 I CONTROL [initandlisten] now exiting
2016-07-07T21:30:55.206-0400 I NETWORK [initandlisten] shutdown: going to close listening sockets...
2016-07-07T21:30:55.206-0400 I NETWORK [initandlisten] removing socket file: /tmp/mongodb-27017.sock
2016-07-07T21:30:55.206-0400 I NETWORK [initandlisten] shutdown: going to flush diaglog...
2016-07-07T21:30:55.206-0400 I NETWORK [initandlisten] shutdown: going to close sockets...
2016-07-07T21:30:55.207-0400 I STORAGE [initandlisten] shutdown: waiting for fs preallocator...
2016-07-07T21:30:55.207-0400 I STORAGE [initandlisten] shutdown: final commit...
2016-07-07T21:30:55.503-0400 I JOURNAL [initandlisten] journalCleanup...
2016-07-07T21:30:55.503-0400 I JOURNAL [initandlisten] removeJournalFiles
2016-07-07T21:30:55.503-0400 I JOURNAL [initandlisten] Terminating durability thread ...
2016-07-07T21:30:55.540-0400 I JOURNAL [journal writer] Journal writer thread stopped
2016-07-07T21:30:55.540-0400 I JOURNAL [durability] Durability thread stopped
2016-07-07T21:30:55.540-0400 I STORAGE [initandlisten] shutdown: closing all files...
2016-07-07T21:30:55.542-0400 I STORAGE [initandlisten] closeAllFiles() finished
2016-07-07T21:30:55.542-0400 I STORAGE [initandlisten] shutdown: removing fs lock...
2016-07-07T21:30:55.542-0400 I CONTROL [initandlisten] dbexit: rc: 4
显然dbexit: rc: 4
不是一个非常受欢迎的退出代码,因此谷歌并没有出现太多。
我之前尝试过使用--repair
。它成功运行和退出,但没有效果。
答案 0 :(得分:0)
关闭的原因是您尝试在3.2中使用不受支持的2.4 auth架构的数据库:
2016-07-07T21:30:55.206-0400 I STORAGE [initandlisten] Old 2.4 style user index
identified. The authentication schema needs to be updated by running authSchemaUpgrade
on a 2.6 server.
自MongoDB 2.4发布以来,3年多(以及迄今为止的3个主要版本)的身份验证已经发生了一些变化。不支持跳过介入的身份验证升级,因此不会继续关闭服务器,因此您可以正常升级。
在升级到较新的服务器版本之前,需要先在2.6服务器上运行authSchemaUpgrade命令来更新身份验证模式。
实际上,MongoDB 3.0+实际上是一个较新的authSchemaUpgrade,它将身份验证从较旧的MONGO-CR(质询 - 响应身份验证)更改为更安全(和标准)SCRAM-SHA-1机制。 3.0authSchemaUpgrade
命令需要2.6身份验证模式。
您还应该能够使用MongoDB 2.4或2.6进行数据备份,而不是升级。