[root@master opt]# ?tar -xzvf mongodb-linux-x86_64-1.6.3.tgz?
[root@master opt]#?mv mongodb-linux-x86_64-1.6.3 mongodb
[root@master opt]#?cd mongodb
[root@master mongodb]#?ls
bin ?GNU-AGPL-3.0 ?README ?THIRD-PARTY-NOTICES
[root@master mongodb]#?cd bin/ ?
[root@master bin]#?ls
bsondump ?mongod ? ? mongoexport ?mongoimport ? mongos ? ? ?mongostat
mongo ? ? mongodump ?mongofiles ? mongorestore ?mongosniff
[root@master bin]#?
[root@master bin]#?./mongod
./mongod --help for help and startup options
Sun Jan ?3 09:01:55 MongoDB starting : pid=3458 port=27017 dbpath=/data/db/ 64-bit?
Sun Jan ?3 09:01:55 db version v1.6.3, pdfile version 4.5
Sun Jan ?3 09:01:55 git version: 278bd2ac2f2efbee556f32c13c1b6803224d1c01
Sun Jan ?3 09:01:55 sys info: Linux domU-12-31-39-06-79-A1 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
Sun Jan ?3 09:01:55?exception in initAndListen std::exception: dbpath (/data/db/) does not exist, terminating
Sun Jan ?3 09:01:55 dbexit:?
?
Sun Jan ?3 09:01:55 shutdown: going to close listening sockets...
Sun Jan ?3 09:01:55 shutdown: going to flush oplog...
Sun Jan ?3 09:01:55 shutdown: going to close sockets...
Sun Jan ?3 09:01:55 shutdown: waiting for fs preallocator...
Sun Jan ?3 09:01:55 shutdown: closing all files...
Sun Jan ?3 09:01:55 ? ? closeAllFiles() finished
?
Sun Jan ?3 09:01:55 dbexit: really exiting now
[root@master bin]# netstat -tnpl |grep 27017
解决方案:
[root@master mongodb]#?mkdir data
[root@master mongodb]#?mkdir log
[root@master mongodb]#?ls
bin ?data ?GNU-AGPL-3.0 ?log ?README ?THIRD-PARTY-NOTICES
[root@master mongodb]#?pwd
/opt/mongodb
[root@master bin]#?touch /opt/mongodb/log/mongodb.log
[root@master bin]# ./mongod --dbpath=/opt/mongodb/data/ ?--logpath=/opt/mongodb/log/mongodb.log?
all output going to: /opt/mongodb/log/mongodb.log
参数解释: --dbpath 数据库路径(数据文件)
--logpath 日志文件路径
--master 指定为主机器
--slave 指定为从机器
--source 指定主机器的IP地址
--pologSize 指定日志文件大小不超过64M.因为resync是非常操作量大且耗时,最好通过设置一个足够大的oplogSize来避免resync(默认的 oplog大小是空闲磁盘大小的5%)。
--logappend 日志文件末尾添加
--port 启用端口号
--fork 在后台运行
--only 指定只复制哪一个数据库
--slavedelay 指从复制检测的时间间隔
--auth 是否需要验证权限登录(用户名和密码)
?
控制台操作命令:
[root@master bin]#?./mongo
MongoDB shell version: 1.6.3
connecting to: test
>?show dbs ;
Sun Jan ?3 09:09:58 uncaught exception: don‘t know how to show [dbs ]
>?show dbs ?
admin
local
>?show tables
>?show collections?
>?db.c1.insert({name:"tom"})?
>?show dbs
admin
local
test
>?show tables
c1
system.indexes
>?db.c1.find()
{ "_id" : ObjectId("5689561782b514adcdb0546b"), "name" : "tom" }
>?
?
其他启动方式(参考使用):
1)通过配置文件配置:
vim mongodb.conf
? ? ?port=10001 【代表端口号,如果不指定则默认为 ? 27017 ? 】?
? ? ?dbpath= /data/mongodb/ ?【数据库路径】?
? ? ?logpath= /data/mongodb/ ?【日志路径】?
? ? ?logappend=true ?【日志文件自动累加,而不是覆盖】
启动命令:
? ? ?/usr/loca/mongodb/bin/mongod -f mongodb.conf
2)后台启动
? # --fork 选项将会通知 mongod 在后台运行
? /usr/local/mongodb/bin/mongod ?-port 10001 --dbpath /data/mongodb/ --logpath /var/mongodb/mongodb.log --fork
? #使用&后台启动
? /usr/local/mongodb/bin/mongod ?-port 10001 --dbpath /data/mongodb/ --logpath /var/mongodb/mongodb.log &
?
【MongoDB】的安装与基本操作
原文:http://gaojingsong.iteye.com/blog/2268304