This question already has answers here:
MongoDB cannot start server: The default storage engine 'wiredTiger' is not available with this build of mongod
(8 answers)
Closed 5 years ago.
Well recently i want to start the mongodb server but when i tried to use the command line: mongod on my windows x32 with the mongodb version : 3.2.18 ,i got the follwing error:
2017-12-29T10:45:56.427+0100 I CONTROL [main]
2017-12-29T10:45:56.427+0100 W CONTROL [main] 32-bit servers don't have journal
ing enabled by default. Please use --journal if you want durability.
2017-12-29T10:45:56.427+0100 I CONTROL [main]
2017-12-29T10:45:56.437+0100 I CONTROL [main] Hotfix KB2731284 or later update
is installed, no need to zero-out data files
2017-12-29T10:45:56.437+0100 I CONTROL [initandlisten] MongoDB starting : pid=7
556 port=27017 dbpath=C:\data\db\ 32-bit host=ROOT-PC
2017-12-29T10:45:56.437+0100 I CONTROL [initandlisten] targetMinOS: Windows Vis
ta/Windows Server 2008
2017-12-29T10:45:56.437+0100 I CONTROL [initandlisten] db version v3.2.18
2017-12-29T10:45:56.437+0100 I CONTROL [initandlisten] git version: 4c1bae566c0
c00f996a2feb16febf84936ecaf6f
2017-12-29T10:45:56.447+0100 I CONTROL [initandlisten] allocator: tcmalloc
2017-12-29T10:45:56.447+0100 I CONTROL [initandlisten] modules: none
2017-12-29T10:45:56.447+0100 I CONTROL [initandlisten] build environment:
2017-12-29T10:45:56.447+0100 I CONTROL [initandlisten] distarch: i386
2017-12-29T10:45:56.447+0100 I CONTROL [initandlisten] target_arch: i386
2017-12-29T10:45:56.447+0100 I CONTROL [initandlisten] options: {}
2017-12-29T10:45:56.447+0100 I STORAGE [initandlisten] exception in initAndList
en: 28663 Cannot start server. The default storage engine 'wiredTiger' is not av
ailable with this build of mongod. Please specify a different storage engine exp
licitly, e.g. --storageEngine=mmapv1., terminating
2017-12-29T10:45:56.447+0100 I CONTROL [initandlisten] dbexit: rc: 100
The WiredTiger storage engine is only available in the 64-bit version of MongoDB (source).
As the error message says, you have to provide another storage engine explicitly via the --storageEngine command line option.
Related
Today, my MongoDB container running on Google Kubernetes Engine suddently stopped working, and this is the generated log:
2020-09-30T07:01:42.782+0000 I CONTROL [initandlisten] MongoDB starting : pid=1 port=27017 dbpath=/data/db 64-bit host=mongo-db-0
2020-09-30T07:01:42.782+0000 I CONTROL [initandlisten] db version v3.6.20
2020-09-30T07:01:42.782+0000 I CONTROL [initandlisten] git version: 39c200878284912f19553901a6fea4b31531a899
2020-09-30T07:01:42.782+0000 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.2g 1 Mar 2016
2020-09-30T07:01:42.782+0000 I CONTROL [initandlisten] allocator: tcmalloc
2020-09-30T07:01:42.782+0000 I CONTROL [initandlisten] modules: none
2020-09-30T07:01:42.782+0000 I CONTROL [initandlisten] build environment:
2020-09-30T07:01:42.782+0000 I CONTROL [initandlisten] distmod: ubuntu1604
2020-09-30T07:01:42.782+0000 I CONTROL [initandlisten] distarch: x86_64
2020-09-30T07:01:42.782+0000 I CONTROL [initandlisten] target_arch: x86_64
2020-09-30T07:01:42.782+0000 I CONTROL [initandlisten] options: { net: { bindIpAll: true } }
2020-09-30T07:01:42.782+0000 I - [initandlisten] Detected data files in /data/db created by the 'wiredTiger' storage engine, so setting the active storage engine to 'wiredTiger'.
2020-09-30T07:01:42.783+0000 I STORAGE [initandlisten]
2020-09-30T07:01:42.783+0000 I STORAGE [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
2020-09-30T07:01:42.783+0000 I STORAGE [initandlisten] ** See http://dochub.mongodb.org/core/prodnotes-filesystem
2020-09-30T07:01:42.783+0000 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=334M,cache_overflow=(file_max=0M),session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),compatibility=(release="3.0",require_max="3.0"),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),statistics_log=(wait=0),verbose=(recovery_progress),
2020-09-30T07:01:43.433+0000 E STORAGE [initandlisten] WiredTiger error (95) [1601449303:433554][1:0x7f9f6c49da40], wiredtiger_open: __wt_conn_compat_config, 226: Version incompatibility detected: required max of 3.0cannot be larger than saved release 3.3: Operation not supported Raw: [1601449303:433554][1:0x7f9f6c49da40], wiredtiger_open: __wt_conn_compat_config, 226: Version incompatibility detected: required max of 3.0cannot be larger than saved release 3.3: Operation not supported
2020-09-30T07:01:43.434+0000 E - [initandlisten] Assertion: 28595:95: Operation not supported src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp 488
2020-09-30T07:01:43.434+0000 I STORAGE [initandlisten] exception in initAndListen: Location28595: 95: Operation not supported, terminating
2020-09-30T07:01:43.434+0000 F - [initandlisten] Invariant failure globalStorageEngine src/mongo/db/service_context_d.cpp 272
2020-09-30T07:01:43.435+0000 F - [initandlisten]
I tested older Mongo container versions but it didn't work. I had this problem in the past, and I was able to fix it by completly wiping the persistent storage, but unfortunatelly this time I cannot do this.
How do I solve this compatibility issue without wiping the storage data?
A stored WiredTiger version of 3.3 means the data files were written by a MongoDB version from 4.2.6 to 4.2.8.
One of those versions should be able to open those files.
I am running mongod --storageEngine=mmapv1 in console
and everything is fine. It uses by standard the C:\data\db folder.
But after I reload my computer and try same command it throws an error.
C:\mongodb\bin>mongod --storageEngine=mmapv1
2018-05-18T10:53:45.491+0300 I CONTROL [main]
2018-05-18T10:53:45.491+0300 W CONTROL [main] 32-bit servers don't have journal
ing enabled by default. Please use --journal if you want durability.
2018-05-18T10:53:45.491+0300 I CONTROL [main]
2018-05-18T10:53:45.491+0300 I CONTROL [main] Hotfix KB2731284 or later update
is not installed, will zero-out data files
2018-05-18T10:53:45.506+0300 I CONTROL [initandlisten] MongoDB starting : pid=2
396 port=27017 dbpath=C:\data\db\ 32-bit host=yaposhytiil-ara
2018-05-18T10:53:45.506+0300 I CONTROL [initandlisten] targetMinOS: Windows Vis
ta/Windows Server 2008
2018-05-18T10:53:45.506+0300 I CONTROL [initandlisten] db version v3.2.20
2018-05-18T10:53:45.506+0300 I CONTROL [initandlisten] git version: a7a144f40b7
0bfe290906eb33ff2714933544af8
2018-05-18T10:53:45.506+0300 I CONTROL [initandlisten] allocator: tcmalloc
2018-05-18T10:53:45.506+0300 I CONTROL [initandlisten] modules: none
2018-05-18T10:53:45.506+0300 I CONTROL [initandlisten] build environment:
2018-05-18T10:53:45.506+0300 I CONTROL [initandlisten] distarch: i386
2018-05-18T10:53:45.506+0300 I CONTROL [initandlisten] target_arch: i386
2018-05-18T10:53:45.506+0300 I CONTROL [initandlisten] options: { storage: { en
gine: "mmapv1" } }
2018-05-18T10:53:45.506+0300 W - [initandlisten] Detected unclean shutdow
n - C:\data\db\mongod.lock is not empty.
2018-05-18T10:53:45.528+0300 I STORAGE [initandlisten] **************
Unclean shutdown detected.
Please visit http://dochub.mongodb.org/core/repair for recovery instructions.
*************
2018-05-18T10:53:45.531+0300 I STORAGE [initandlisten] exception in initAndList
en: 12596 old lock file, terminating
2018-05-18T10:53:45.532+0300 I CONTROL [initandlisten] dbexit: rc: 100
As I understand it's locks the data from access.
I wouldn't waste your time, but I didn't know how to google it...
Is it because of 32bit Windows, or some user access settings, or I have to repair/delete db folder every time?
I've followed this video and installed and uninstalled MongoDB a handful of times. I occasionally can connect, but the majority of the time I can't and run into this error:
2016-10-18T01:19:21.746-0700 I CONTROL [initandlisten] MongoDB starting : pid=40879 port=27017 dbpath=/data/db 64-bit host=XXX
2016-10-18T01:19:21.746-0700 I CONTROL [initandlisten] db version v3.2.10
2016-10-18T01:19:21.746-0700 I CONTROL [initandlisten] git version: 79d9b3ab5ce20f51c272b4411202710a082d0317
2016-10-18T01:19:21.746-0700 I CONTROL [initandlisten] OpenSSL version: OpenSSL 0.9.8zg 14 July 2015
2016-10-18T01:19:21.746-0700 I CONTROL [initandlisten] allocator: system
2016-10-18T01:19:21.746-0700 I CONTROL [initandlisten] modules: none
2016-10-18T01:19:21.746-0700 I CONTROL [initandlisten] build environment:
2016-10-18T01:19:21.746-0700 I CONTROL [initandlisten] distarch: x86_64
2016-10-18T01:19:21.746-0700 I CONTROL [initandlisten] target_arch: x86_64
2016-10-18T01:19:21.746-0700 I CONTROL [initandlisten] options: {}
2016-10-18T01:19:21.747-0700 I - [initandlisten] Detected data files in /data/db created by the 'wiredTiger' storage engine, so setting the active storage engine to 'wiredTiger'.
2016-10-18T01:19:21.747-0700 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=9G,session_max=20000,eviction=(threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
2016-10-18T01:19:22.124-0700 I CONTROL [initandlisten]
2016-10-18T01:19:22.124-0700 I CONTROL [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
2016-10-18T01:19:22.125-0700 I FTDC [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data'
2016-10-18T01:19:22.125-0700 I NETWORK [HostnameCanonicalizationWorker] Starting hostname canonicalization worker
2016-10-18T01:19:22.125-0700 I NETWORK [initandlisten] waiting for connections on port 27017
2016-10-18T01:19:22.126-0700 W NETWORK [HostnameCanonicalizationWorker] Failed to obtain address information for hostname XXX: nodename nor servname provided, or not known
I've looked a few threads and have seen these solutions thrown around:
killall mongod (doesn't appear to work)
Updating the host name in the /etc/hosts file, although I can't find this file anywhere
Any help with either of these two steps or guidance on other steps would be appreciated. Additionally, I keep seeing the 'soft rlimits too low' error -- what exactly does this mean?
I'm testing learning locker which is based on MongoDB it's all inside a ubuntu14.04 docker https://hub.docker.com/r/hadyrashwan/learninglocker-ubuntu14.04/ . I got it to work but I can't start Mongodb automatically tried the repair command and changing the name in start service command to Mongodb or mongo but not working. but running Mongodb just make it start but I want to start it automatically not opening a terminal and leave it open so the system continues to work
root#bd1997365c3a:/# mongodb
2016-09-06T07:41:51.816+0000 I CONTROL [initandlisten] MongoDB starting : pid=197 port=27017 dbpath=/data/db 64-bit host=bd1997365c3a
2016-09-06T07:41:51.817+0000 I CONTROL [initandlisten] db version v3.2.9
2016-09-06T07:41:51.817+0000 I CONTROL [initandlisten] git version: 22ec9e93b40c85fc7cae7d56e7d6a02fd811088c
2016-09-06T07:41:51.817+0000 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1f 6 Jan 2014
2016-09-06T07:41:51.817+0000 I CONTROL [initandlisten] allocator: tcmalloc
2016-09-06T07:41:51.817+0000 I CONTROL [initandlisten] modules: none
2016-09-06T07:41:51.817+0000 I CONTROL [initandlisten] build environment:
2016-09-06T07:41:51.817+0000 I CONTROL [initandlisten] distmod: ubuntu1404
2016-09-06T07:41:51.817+0000 I CONTROL [initandlisten] distarch: x86_64
2016-09-06T07:41:51.817+0000 I CONTROL [initandlisten] target_arch: x86_64
2016-09-06T07:41:51.817+0000 I CONTROL [initandlisten] options: {}
2016-09-06T07:41:51.823+0000 I - [initandlisten] Detected data files in /data/db created by the 'mmapv1' storage engine, so setting the active storage engine to 'mmapv1'.
2016-09-06T07:41:51.867+0000 I JOURNAL [initandlisten] journal dir=/data/db/journal
2016-09-06T07:41:51.867+0000 I JOURNAL [initandlisten] recover : no journal files present, no recovery needed
2016-09-06T07:41:52.027+0000 I JOURNAL [durability] Durability thread started
2016-09-06T07:41:52.027+0000 I JOURNAL [journal writer] Journal writer thread started
2016-09-06T07:41:52.101+0000 I CONTROL [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2016-09-06T07:41:52.101+0000 I CONTROL [initandlisten]
2016-09-06T07:41:52.102+0000 I CONTROL [initandlisten]
2016-09-06T07:41:52.102+0000 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2016-09-06T07:41:52.102+0000 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2016-09-06T07:41:52.102+0000 I CONTROL [initandlisten]
2016-09-06T07:41:52.102+0000 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2016-09-06T07:41:52.102+0000 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2016-09-06T07:41:52.102+0000 I CONTROL [initandlisten]
2016-09-06T07:41:52.111+0000 I FTDC [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data'
2016-09-06T07:41:52.112+0000 I NETWORK [HostnameCanonicalizationWorker] Starting hostname canonicalization worker
2016-09-06T07:41:52.112+0000 I NETWORK [initandlisten] waiting for connections on port 27017
If already you install the mongodb just uninstall based on mongodb config
Before going do all stuff first install mongodb server.
sudo apt install mongodb-server
Then continue to install what mongodb config suggest you.
Once done your mongodb configuration you can go
sudo service mongodb start
Note: Its not mongod its mongodb
I had same problem. It seems there is some mis-configuration if you install via source code.
Re-installing mongoDB using apt-get activated mongod as a service for
me.
I cant seem to fork off an instance of the MongoDB daemon when I am logged in to a Centos 7.1 Box. I have created the data/db folder and everytime I try to run
./bin/mongod --dbpath data/db
I get a mess of errors
2016-01-26T00:44:23.820+0000 I CONTROL [initandlisten] MongoDB starting : pid=2735 port=27017 dbpath=data/db 64-bit host=localhost.localdomain
2016-01-26T00:44:23.820+0000 I CONTROL [initandlisten] db version v3.2.1
2016-01-26T00:44:23.820+0000 I CONTROL [initandlisten] git version: a14d55980c2cdc565d4704a7e3ad37e4e535c1b2
2016-01-26T00:44:23.821+0000 I CONTROL [initandlisten] allocator: tcmalloc
2016-01-26T00:44:23.821+0000 I CONTROL [initandlisten] modules: none
2016-01-26T00:44:23.821+0000 I CONTROL [initandlisten] build environment:
2016-01-26T00:44:23.821+0000 I CONTROL [initandlisten] distarch: x86_64
2016-01-26T00:44:23.821+0000 I CONTROL [initandlisten] target_arch: x86_64
2016-01-26T00:44:23.821+0000 I CONTROL [initandlisten] options: { storage: { dbPath: "data/db" } }
2016-01-26T00:44:23.842+0000 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=1G,session_max=20000,eviction=(threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
2016-01-26T00:44:23.853+0000 E STORAGE [initandlisten] WiredTiger (22) [1453769063:853352][2735:0x7f09f2eddcc0], connection: data/db/WiredTiger.wt: fsync: Invalid argument
2016-01-26T00:44:23.856+0000 I - [initandlisten] Fatal Assertion 28561
2016-01-26T00:44:23.856+0000 I - [initandlisten]
***aborting after fassert() failure
The strange thing is I did it earlier and it worked. What could be the problem?
It turns out that putting the downloaded mongodb database in the synced folder between the host machine and the virtual machine caused some type of permissions issue or configuration issue.
When you take it out of the synced folder - which most likely has the Vagrantfile - and put it in a folder thats not synced/shared it seems to work just fine. Thought id save someone the 5 hours I wasted :-)