I am running solaris 10.
I downloaded the 2.4.1 driver from mongodb.org
Here are the logs:
foo $ ./mongod --dbpath /dpool/mongodb/data --pidfilepath /dpool/mongodb/run/mongod.pid
Wed Apr 10 21:19:54.832 [initandlisten] MongoDB starting : pid=25116 port=27017 dbpath=/dpool/mongodb/data 64-bit host=foo.example.net
Wed Apr 10 21:19:54.833 [initandlisten]
Wed Apr 10 21:19:54.833 [initandlisten] ** NOTE: your operating system version does not support the method that MongoDB
Wed Apr 10 21:19:54.833 [initandlisten] ** uses to detect impending page faults.
Wed Apr 10 21:19:54.833 [initandlisten] ** This may result in slower performance for certain use cases
Wed Apr 10 21:19:54.833 [initandlisten]
Wed Apr 10 21:19:54.833 [initandlisten] db version v2.4.1
Wed Apr 10 21:19:54.833 [initandlisten] git version: 1560959e9ce11a693be8b4d0d160d633eee75110
Wed Apr 10 21:19:54.833 [initandlisten] build info: SunOS bs-smartos-x86-64-1.10gen.cc 5.11 joyent_20120424T232010Z i86pc BOOST_LIB_VERSION=1_49
Wed Apr 10 21:19:54.833 [initandlisten] allocator: system
Wed Apr 10 21:19:54.833 [initandlisten] options: { dbpath: "/dpool/mongodb/data", pidfilepath: "/dpool/mongodb/run/mongod.pid" }
Segmentation Fault
foo $ echo $LD_LIBRARY_PATH
/usr/local/mongodb/lib
foo $ ls -lt /usr/local/mongodb/lib
total 6152
-rwxr-xr-x 1 mongo 255312 Oct 26 2009 libgcc_s.so.1
-rwxr-xr-x 1 mongo 5900688 Oct 26 2009 libstdc++.so.6
Any ideas? I used to run version 2.0.3 with no issues....
The MongoDB 2.4.1 build is currently done on SmartOS (which is based on OpenSolaris/Solaris 11), and there are some known issues on Solaris 10.
Your problem may be related to SERVER-7404 in the MongoDB Jira but there could be other issues.
One of the community suggestions on SERVER-7404 may be useful:
After downloading and installing libstdc++6-4.7.2\,REV\=2013.03.28-SunOS5.10-i386-CSW.pkg from opencsw it starts as usual
If you do get this working it would be helpful to comment on the Jira issue so other users know the fix.
This binary looks like to have been tuned for a SunOS 5.11 kernel. You might want to try it under either Solaris 11 or an Illumos based OS to avoid this warning message.
Related
When I type in "mongo" in terminal
it cannot run and shows up these thing
MongoDB shell version: 2.4.9
Illegal instruction (core dumped)
then nothing happen.
I install mongodb in arch linux.
I have create /data/db.
What kind of processor is this running on? There have been issues in the past with unimplemented instructions on some older processor architectures.
Can you use gdb to examine the core file, or start the mongo process under gdb and reproduce the problem, and determine
what is the illegal instruction that is being executed?
what is the stack backtrace at the point where the illegal instruction occurs?
have you started mongod --dbpath "db location" first? – Eugene P yesterday
Did you get MongoDB from your system package manager or somewhere else? – sudo_O yesterday
This sounds like corruption, new versions of the mongo shell should produce another error if the MongoDB server isn't reachable. – Sammaye yesterday
I have used mongod --dbpath /data/db.
I get mongodb from pacakge manager, i have tried to compile from source, it also same.
mongod --dbpath /data/db
Tue Feb 25 13:27:46.024
Tue Feb 25 13:27:46.027 warning: 32-bit servers don't have journaling enabled by default. Please use --journal if you want durability.
Tue Feb 25 13:27:46.032
Tue Feb 25 13:27:46.128 [initandlisten] MongoDB starting : pid=23705 port=27017 dbpath=/data/db 32-bit host=xeraph.hk
Tue Feb 25 13:27:46.129 [initandlisten]
Tue Feb 25 13:27:46.131 [initandlisten] ** NOTE: This is a 32 bit MongoDB binary .
Tue Feb 25 13:27:46.133 [initandlisten] ** 32 bit builds are limited to le ss than 2GB of data (or less with --journal).
Tue Feb 25 13:27:46.134 [initandlisten] ** Note that journaling defaults t o off for 32 bit and is currently off.
Tue Feb 25 13:27:46.136 [initandlisten] ** See http://dochub.mongodb.org/c ore/32bit
Tue Feb 25 13:27:46.138 [initandlisten]
Tue Feb 25 13:27:46.139 [initandlisten] db version v2.4.9
Tue Feb 25 13:27:46.140 [initandlisten] git version: nogitversion
Tue Feb 25 13:27:46.141 [initandlisten] build info: Linux root-armv6-copy 3.4.76 -1-ARCH #1 SMP PREEMPT Wed Jan 15 15:31:14 MST 2014 armv7l BOOST_LIB_VERSION=1_5 5
Tue Feb 25 13:27:46.141 [initandlisten] allocator: system
Tue Feb 25 13:27:46.142 [initandlisten] options: { dbpath: "/data/db" }
Tue Feb 25 13:27:46.227 [websvr] admin web console waiting for connections on po rt 28017
Tue Feb 25 13:27:46.228 [initandlisten] waiting for connections on port 27017
The terminal pause there, then i login to another ssh terminal,
mongo
Also illegal instruction.
Scenario: Installed MongoDB 2.2.3 on the machine (Windows 64-bit)
Followed all the steps to enforce authentication on MongoDB server.
Added User to admin database
use admin
db.addUser('me_admin', '12345');
db.auth('me_admin','12345');
Ran database server (mongod.exe process) with the --auth option to enable
authentication
Followed all answers for similar question:
How to secure MongoDB with username and password
Issue: With new version 2.2.3 I am not able set up authentication. After following the same steps I was able to set up the authentication for the version 2.0.8 on the same machine. But its mentioned somewhere in MongoDB docs that "Authentication on Localhost varies slightly between before and after version 2.2"
Question: What is the change and how can enforce the authentication in new versions i.e. 2.2 onwards. Can anybody give some idea or solution to proceed the same with new MongoDB 2.2.3?
Update:
I had checked that authentication works same on 2.2.3 when I start mongod.exe process with --auth parameter from command prompt.
I was using auth=true parameter in config file as mentioned in docs, but this did not work.
Research done:
When mongod.cfg file contains following configurations
logpath=c:\mongodb\log\mongo.log, auth=true, profile=2
The log.txt file contains following logs
Mon Mar 11 15:06:35 Trying to start Windows service 'MongoDB'
Mon Mar 11 15:06:35 Service running
Mon Mar 11 15:06:35 [initandlisten] MongoDB starting : pid=7152 port=27017 dbpath=\data\db\ 64-bit host=AMOL-KULKARNI
Mon Mar 11 15:06:35 [initandlisten] db version v2.2.3, pdfile version 4.5
Mon Mar 11 15:06:35 [initandlisten] git version: f570771a5d8a3846eb7586eaffcf4c2f4a96bf08
Mon Mar 11 15:06:35 [initandlisten] build info: windows sys.getwindowsversion(major=6, minor=1, build=7601, platform=2, service_pack='Service Pack 1') BOOST_LIB_VERSION=1_49
Mon Mar 11 15:06:35 [initandlisten] options: { config: "C:\mongodb\mongod.cfg", logpath: "c:\mongodb\log\mongo.log auth=true profile=2", service: true }
Mon Mar 11 15:06:35 [initandlisten] journal dir=/data/db/journal
Mon Mar 11 15:06:35 [initandlisten] recover : no journal files present, no recovery needed
Mon Mar 11 15:06:35 [initandlisten] waiting for connections on port 27017
Mon Mar 11 15:06:35 [websvr] admin web console waiting for connections on port 28017
When I run from command prompt mongod --auth, following log will be displayed:
Mon Mar 11 15:09:40 [initandlisten] MongoDB starting : pid=6536 port=27017 dbpath=\data\db\ 64-bit host=AMOL-KULKARNI
Mon Mar 11 15:09:40 [initandlisten] db version v2.2.3, pdfile version 4.5
Mon Mar 11 15:09:40 [initandlisten] git version: f570771a5d8a3846eb7586eaffcf4c2f4a96bf08
Mon Mar 11 15:09:40 [initandlisten] build info: windows sys.getwindowsversion(major=6, minor=1, build=7601, platform=2, service_pack='Service Pack 1') BOOST_LIB_VERSION=1_49
Mon Mar 11 15:09:40 [initandlisten] options: { auth: true }
Mon Mar 11 15:09:40 [initandlisten] journal dir=/data/db/journal
Mon Mar 11 15:09:40 [initandlisten] recover : no journal files present, no recovery needed
Mon Mar 11 15:09:40 [initandlisten] waiting for connections on port 27017
Mon Mar 11 15:09:40 [websvr] admin web console waiting for connections on port 28017
Note: The change in the options:
options:{ config: "C:\mongodb\mongod.cfg", logpath:
"c:\mongodb\log\mongo.log auth=true profile=2", service: true } //Does not work
options: { auth: true } //Works
Interesting to observe is that,
When its ran from config file.
logpath=c:\mongodb\log\mongo.log, auth=true, profile=2
It got changed to:
logpath: "c:\mongodb\log\mongo.log auth=true profile=2", service: true
I know here is the issue. It should be like:
logpath: "c:\mongodb\log\mongo.log", auth=true, profile="2", service: true
So, the question is how to pass auth=true parameter from config file and run mongod.exe process as service on Windows7
The change is only minor as described under the part you quoted:
In general if there are no users for the admin database, you may connect via the localhost interface. For sharded clusters running version 2.2, if mongod is running with auth then all users connecting over the localhost interface must authenticate, even if there aren’t any users in the admin database.
Basically before 2.2 if you were in a sharded cluster you could connect to localhost and not be forced to auth if there are no users found in the admin database. This means that if you set-up a sharded cluster it might be wise to setup a default user, which you have already done.
Can anybody give some idea or solution to proceed the same with new MongoDB 2.2.3?
The new auth system will just be there, you don't need to do anything; it just will be.
Found out the solution.
To run MongoDB process (mongod.exe) as service with auth=true, following has to be taken care while registering MongoDB service itself (not mentioned in docs)
Service has to be registered with following command:
C:\mongodb\bin\mongod.exe --config C:\mongodb\mongod.cfg --auth --install
mongod.cfg file will have only logpath=c:\mongodb\log\mongo.log
Shared with you all so that effort & time will not be put on the same issue again.
Happy exploring to all.. :-)
Note this time log contains:
Mon Mar 11 15:58:06 Trying to start Windows service 'MongoDB'
Mon Mar 11 15:58:06 Service running
Mon Mar 11 15:58:06 [initandlisten] MongoDB starting : pid=6800 port=27017 dbpath=\data\db\ 64-bit host=AMOL-KULKARNI
Mon Mar 11 15:58:06 [initandlisten] db version v2.2.3, pdfile version 4.5
Mon Mar 11 15:58:06 [initandlisten] git version: f570771a5d8a3846eb7586eaffcf4c2f4a96bf08
Mon Mar 11 15:58:06 [initandlisten] build info: windows sys.getwindowsversion(major=6, minor=1, build=7601, platform=2, service_pack='Service Pack 1') BOOST_LIB_VERSION=1_49
Mon Mar 11 15:58:06 [initandlisten] options: { auth: true, config: "C:\mongodb\mongod.cfg", logpath: "c:\mongodb\log\mongo.log", service: true }
Mon Mar 11 15:58:06 [initandlisten] journal dir=/data/db/journal
Mon Mar 11 15:58:06 [initandlisten] recover : no journal files present, no recovery needed
Mon Mar 11 15:58:06 [initandlisten] waiting for connections on port 27017
Mon Mar 11 15:58:06 [websvr] admin web console waiting for connections on port 28017
On my developer machine I've reinstalled ubuntu and just copied files to /data/db from my old install.
After mongo --repair which seemingly went normal (no error messages or such) I see no databases I'm expecting to see.
How can I repair my database?
Here the first part of the log file:
Thu Dec 6 17:55:21 [initandlisten] MongoDB starting : pid=2123 port=27017 dbpath=/data/db/ 64-bit host=sog
Thu Dec 6 17:55:21 [initandlisten] db version v2.2.2, pdfile version 4.5
Thu Dec 6 17:55:21 [initandlisten] git version: d1b43b61a5308c4ad0679d34b262c5af9d664267
Thu Dec 6 17:55:21 [initandlisten] build info: Linux ip-10-2-29-40 2.6.21.7-2.ec2.v1.2.fc8xen #1 SMP Fri Nov 20 17:48:28 EST 2009 x86_64 BOOST_LIB_VERSION=1_49
Thu Dec 6 17:55:21 [initandlisten] options: { repair: true }
Thu Dec 6 17:55:21 [initandlisten] Unable to check for journal files due to: boost::filesystem::basic_directory_iterator constructor: No such file or directory: "/data/db/journal"
Thu Dec 6 17:55:21 [initandlisten] ****
Thu Dec 6 17:55:21 [initandlisten] ****
Thu Dec 6 17:55:21 [initandlisten] need to upgrade database fan-fiction with pdfile version 4.5, new version: 4.5
Thu Dec 6 17:55:21 [initandlisten] starting upgrade
Thu Dec 6 17:55:21 [initandlisten] fan-fiction repairDatabase fan-fiction
Thu Dec 6 17:55:21 [FileAllocator] allocating new datafile /data/db/_tmp_repairDatabase_1/fan-fiction.ns, filling with zeroes...
Thu Dec 6 17:55:21 [FileAllocator] creating directory /data/db/_tmp_repairDatabase_1/_tmp
Thu Dec 6 17:55:21 [FileAllocator] done allocating datafile /data/db/_tmp_repairDatabase_1/fan-fiction.ns, size: 16MB, took 0.001 secs
Thu Dec 6 17:55:21 [FileAllocator] allocating new datafile /data/db/_tmp_repairDatabase_1/fan-fiction.0, filling with zeroes...
Ok, I've copied files under root and forgot to chown them. Now everything works like charm.
after our vps got down and we boot it, mongod service didnt start automatically and we cannot start it by service mongod start,
file /var/log/mongo/mongod.log contains following log:
***** SERVER RESTARTED *****
Thu Oct 11 13:51:18
Thu Oct 11 13:51:18 warning: 32-bit servers don't have journaling enabled by default. Please use --journal if you want durability.
Thu Oct 11 13:51:18
Thu Oct 11 13:51:18 [initandlisten] MongoDB starting : pid=3821 port=27017 dbpath=/var/lib/mongo 32-bit host=server2.paransa.org
Thu Oct 11 13:51:18 [initandlisten]
Thu Oct 11 13:51:18 [initandlisten] ** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data
Thu Oct 11 13:51:18 [initandlisten] ** see http://blog.mongodb.org/post/137788967/32-bit-limitations
Thu Oct 11 13:51:18 [initandlisten] ** with --journal, the limit is lower
Thu Oct 11 13:51:18 [initandlisten]
Thu Oct 11 13:51:18 [initandlisten] ** WARNING: You are running in OpenVZ. This is known to be broken!!!
Thu Oct 11 13:51:18 [initandlisten]
Thu Oct 11 13:51:18 [initandlisten] db version v2.2.0, pdfile version 4.5
Thu Oct 11 13:51:18 [initandlisten] git version: f5e83eae9cfbec7fb7a071321928f00d1b0c5207
Thu Oct 11 13:51:18 [initandlisten] build info: Linux domU-12-31-39-01-70-B4 2.6.21.7-2.fc8xen #1 SMP Fri Feb 15 12:39:36 EST 2008 i686 BOOST_LIB_VERSION=1_49
Thu Oct 11 13:51:18 [initandlisten] options: { config: "/etc/mongod.conf", dbpath: "/var/lib/mongo", fork: "true", logappend: "true", logpath: "/var/log/mongo/mongod.log", pidfilepath: "/var/run/mongodb/mongod.pid" }
Thu Oct 11 13:51:18 [initandlisten] couldn't open /var/lib/mongo/mydb_main.ns errno:13 Permission denied
Thu Oct 11 13:51:18 [initandlisten] error couldn't open file /var/lib/mongo/mydb_main.ns terminating
Thu Oct 11 13:51:18 dbexit:
Thu Oct 11 13:51:18 [initandlisten] shutdown: going to close listening sockets...
Thu Oct 11 13:51:18 [initandlisten] shutdown: going to flush diaglog...
Thu Oct 11 13:51:18 [initandlisten] shutdown: going to close sockets...
Thu Oct 11 13:51:18 [initandlisten] shutdown: waiting for fs preallocator...
Thu Oct 11 13:51:18 [initandlisten] shutdown: closing all files...
Thu Oct 11 13:51:18 [initandlisten] closeAllFiles() finished
Thu Oct 11 13:51:18 [initandlisten] shutdown: removing fs lock...
Thu Oct 11 13:51:18 dbexit: really exiting now
as you may see, log says mongo server cant open *.ns file cause lake of permission
but if i run the server manually by following command:
mongod --dbpath=/var/lib/mongo -f /etc/mongod.conf
it seems everything is fine and about the log file:
***** SERVER RESTARTED *****
Thu Oct 11 14:02:06
Thu Oct 11 14:02:06 warning: 32-bit servers don't have journaling enabled by default. Please use --journal if you want durability.
Thu Oct 11 14:02:06
Thu Oct 11 14:02:06 [initandlisten] MongoDB starting : pid=4090 port=27017 dbpath=/var/lib/mongo 32-bit host=server2.paransa.org
Thu Oct 11 14:02:06 [initandlisten]
Thu Oct 11 14:02:06 [initandlisten] ** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data
Thu Oct 11 14:02:06 [initandlisten] ** see http://blog.mongodb.org/post/137788967/32-bit-limitations
Thu Oct 11 14:02:06 [initandlisten] ** with --journal, the limit is lower
Thu Oct 11 14:02:06 [initandlisten]
Thu Oct 11 14:02:06 [initandlisten] ** WARNING: You are running in OpenVZ. This is known to be broken!!!
Thu Oct 11 14:02:06 [initandlisten]
Thu Oct 11 14:02:06 [initandlisten] db version v2.2.0, pdfile version 4.5
Thu Oct 11 14:02:06 [initandlisten] git version: f5e83eae9cfbec7fb7a071321928f00d1b0c5207
Thu Oct 11 14:02:06 [initandlisten] build info: Linux domU-12-31-39-01-70-B4 2.6.21.7-2.fc8xen #1 SMP Fri Feb 15 12:39:36 EST 2008 i686 BOOST_LIB_VERSION=1_49
Thu Oct 11 14:02:06 [initandlisten] options: { config: "/etc/mongod.conf", dbpath: "/var/lib/mongo", fork: "true", logappend: "true", logpath: "/var/log/mongo/mongod.log", pidfilepath: "/var/run/mongodb/mongod.pid" }
Thu Oct 11 14:02:07 [websvr] admin web console waiting for connections on port 28017
Thu Oct 11 14:02:07 [initandlisten] waiting for connections on port 27017
and using --repair arg didnt help
(maybe because it could start manually with mongod --dbpath=/var/lib/mongo -f /etc/mongod.conf and adding --repair arg to the command, logs everything is fine!...)
any suggestion?
This is a permissions issue, you are running as mongod (or mongodb etc.) user when you start via service, and you are likely running as root (you confirm this in the comments above) when you are using sudo or invoking as root. You need to fix the permissions for all the files in that folder and not start the service as root, ever.
To fix the files based on what you have posted, assuming your relevant user is mongodb and the group is mongodb, you would do the following with sudo (or as root) - substitute for the appropriate user for your system:
chown -R mongodb:mongodb /var/lib/mongo
chown -R mongodb:mongodb /var/run/mongodb
chown mongodb:mongodb /var/log/mongo/mongod.log
Once you fix the permissions on these folders you should be able to start via service again. Note: if you post the output of ls -al /var/lib/mongo then I can give you the exact commands you need to run
sudo rm /data/db/mongod.lock
sudo mongod --dbpath /data/db --repair
sudo mongod --dbpath /data/db
Try deleting the *.lock file in "\data\db" folder before starting mongod.exe in CMD.
Stop the MongoDB service
sudo service mongodb stop
Remove the MongoDB lock file
sudo rm /var/lib/mongodb/mongod.lock
Change ownership from root to the MongoDB path
sudo chown -R mongodb:mongodb /var/lib/mongodb/
Access the mongodb Shell
sudo mongod --dbpath=/var/lib/mongodb
Start the MongoDB service
sudo service mongodb start
Test the mongo application
mongo
You can run automatically your mongodb forever from the rc.local, using this command:
su pi -c 'sudo mongod --repairpath your_path'
and don't worry about the unexpected shutdown.
I'm running an Ubuntu 12.04 server instance on VirtualBox on a OS X 10.7 host (MacBook Air 13"). The instance is configured with 512mb ram. The disk image is set to 8GB (dynamically allocated if that makes any difference) and is using 2.6GB.
I've just installed MongoDB from the 10gen repo as described here: http://docs.mongodb.org/manual/tutorial/install-mongodb-on-debian-or-ubuntu-linux/
I haven't changed any of the default settings as yet.
The mongod process is now running at 15-20% cpu constantly, before I've connected anything to it. I wouldn't normally have checked but it's now causing the fans to stay on whenever the VM is running.
Restarting mongodb makes no difference. Restarting the VM makes no difference.
The log is as follows:
Thu Jun 21 16:52:14 [initandlisten] MongoDB starting : pid=1737 port=27017 dbpath=/var/lib/mongodb 64-bit host=devbox
Thu Jun 21 16:52:14 [initandlisten] db version v2.0.6, pdfile version 4.5
Thu Jun 21 16:52:14 [initandlisten] git version: e1c0cbc25863f6356aa4e31375add7bb49fb05bc
Thu Jun 21 16:52:14 [initandlisten] build info: Linux ip-10-110-9-236 2.6.21.7-2.ec2.v1.2.fc8xen #1 SMP Fri Nov 20 17:48:28 EST 2009 x86_64 BOOST_LIB_VERSION=1_41
Thu Jun 21 16:52:14 [initandlisten] options: { config: "/etc/mongodb.conf", dbpath: "/var/lib/mongodb", logappend: "true", logpath: "/var/log/mongodb/mongodb.log" }
Thu Jun 21 16:52:14 [initandlisten] journal dir=/var/lib/mongodb/journal
Thu Jun 21 16:52:14 [initandlisten] recover : no journal files present, no recovery needed
Thu Jun 21 16:52:14 [initandlisten] waiting for connections on port 27017
Thu Jun 21 16:52:14 [websvr] admin web console waiting for connections on port 28017
I'm assuming 15-20% cpu usage at idle isn't normal, so I'd like to know if anyone has any suggestions on what to try to fix it?
edit
I've now converted the disk image to a fixed size VDI and it's made no difference, still at 15-20% CPU usage on the guest.
This is a bug in VirtualBox on OSX as far as I can tell, I switched to Parallels and haven't had an issue since.