最近工作终于到了使用mongodb,以前从来没有接触过mongodb,只知道它属于nosql类型的数据库,这里将安装记录如下:
1、到官网下载安装文件:
这里下载版本为:mongodb-linux-x86_64-2.6.6.gz
[root@localhost tools]# ll mongodb-linux-x86_64-2.6.6.gz
-rw-r--r-- 1 root root 116039527 Dec 23 2014 mongodb-linux-x86_64-2.6.6.gz
[root@localhost tools]# tar xf mongodb-linux-x86_64-2.6.6.gz
[root@localhost tools]# ll mongodb-linux-x86_64-2.6.6*
-rw-r--r-- 1 root root 116039527 Dec 23 2014 mongodb-linux-x86_64-2.6.6.gz
mongodb-linux-x86_64-2.6.6:
total 64
drwxr-xr-x 2 root root 4096 Jul 22 02:48 bin
-rw-r--r-- 1 1046 1046 34520 Dec 8 2014 GNU-AGPL-3.0
-rw-r--r-- 1 1046 1046 1359 Dec 8 2014 README
-rw-r--r-- 1 1046 1046 17793 Dec 8 2014 THIRD-PARTY-NOTICES
[root@localhost tools]#
[root@localhost tools]# mv mongodb-linux-x86_64-2.6.6 /usr/local/mongodb
[root@localhost tools]# cd /usr/local/mongodb/
[root@localhost mongodb]# pwd
/usr/local/mongodb
[root@localhost mongodb]#
2、定义配置文件:
[root@localhost mongodb]# mkdir conf
[root@localhost mongodb]# cd conf
[root@localhost conf]# vim mongodb.conf
port = 30000
bind_ip = 192.168.19.25
dbpath = /data/mongo/data/db
logpath = /data/mongo/data/log/log
logappend = true
fork = true
pidfilepath = /data/mongo/data/mongod.pid
[root@localhost conf]#
[root@localhost conf]# mkdir -p /data/mongo/data/
[root@localhost conf]# mkdir -p /data/mongo/data/log
[root@localhost conf]# mkdir -p /data/mongo/data/db
配置文件解释:
#port = 30000 监听端口
#bind_ip = 192.168.19.25 在哪个ip地址上启动
#dbpath = /data/mongo/data/db 定义数据库文件路径
#logpath = /data/mongo/data/log/log 定义日志存放路径
#logappend = true 定义日志存放方式
#fork = true 定义mongodb进程启动方式,这里以守护进程方式启动
#pidfilepath = /data/mongo/data/mongod.pi 定义进程pid文件存放路径
3、添加环境变量:
[root@localhost mongodb]# cd bin/
[root@localhost bin]# pwd
/usr/local/mongodb/bin
[root@localhost bin]# vim /etc/profile
export PATH=/usr/local/mongodb/bin:$PATH
[root@localhost bin]# source /etc/profile
[root@localhost bin]#
4、启动mongodb
[root@localhost bin]# mongod -f /usr/local/mongodb/conf/mongodb.conf
about to fork child process, waiting until server is ready for connections.
forked process: 1735
child process started successfully, parent exiting
[root@localhost bin]#
[root@localhost bin]# netstat -lnput|grep mongo
tcp 0 0 192.168.19.25:30000 0.0.0.0:* LISTEN 1735/mongod
[root@localhost bin]#
[root@localhost ~]# mongo --host 192.168.19.25 --port 30000
MongoDB shell version: 2.6.6
connecting to: 192.168.19.25:30000/test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
>
出现以上界面表示mongo安装成功,至此mongo安装完毕,至于一些常用命令可以到/usr/local/mongo/bin目录下查看,
[root@localhost ~]# cd /usr/local/mongodb/bin/
[root@localhost bin]# ll
total 283568
-rwxr-xr-x 1 1046 1046 23603184 Dec 8 2014 bsondump
-rwxr-xr-x 1 1046 1046 11900240 Dec 8 2014 mongo
-rwxr-xr-x 1 1046 1046 23773296 Dec 8 2014 mongod
-rwxr-xr-x 1 1046 1046 23676016 Dec 8 2014 mongodump
-rwxr-xr-x 1 1046 1046 23619312 Dec 8 2014 mongoexport
-rwxr-xr-x 1 1046 1046 23667776 Dec 8 2014 mongofiles
-rwxr-xr-x 1 1046 1046 23644016 Dec 8 2014 mongoimport
-rwxr-xr-x 1 1046 1046 23614480 Dec 8 2014 mongooplog
-rwxr-xr-x 1 1046 1046 23424896 Dec 8 2014 mongoperf
-rwxr-xr-x 1 1046 1046 23713104 Dec 8 2014 mongorestore
-rwxr-xr-x 1 1046 1046 18433232 Dec 8 2014 mongos
-rwxr-xr-x 1 1046 1046 23663984 Dec 8 2014 mongostat
-rwxr-xr-x 1 1046 1046 23607088 Dec 8 2014 mongotop
[root@localhost bin]#
例如mongodump和mongorestore用来导出导入数据:
导出:
./mongodump -h 192.168.0.240 --port 30000 -d dbname -o /data/mongo-data
导入:
./mongorestore -h 192.168.88.152 --port 30000 -d dbname -o /root/mongodb/dataname
注释:如果是第一次导入导出,-o参数可以忽略
补充内容:
MongoDB 提供几种关闭服务的命令,具体为以下:
一 使用 Crtl+C 关闭
[mongo@redhatB data]$ mongod --dbpath=/database/mongodb/data/ --logpath=/var/applog/mongo_log/mongo.log --logappend --port=27017 --journal > start_mongo.log 2>&1 光标:键入 Crtl+C 关闭 |
备注:如果以前台方式启动 MongoDB 服务,使用“Crtl+C” 服务会关闭,这种关闭方式会等待
当前进行中的的操作完成,所以依然是干净的关闭方式。
二 使用数据库命令关闭
--2.1 开启服务
[mongo@redhatB data]$ mongod -f /database/mongodb/data/mongodb_27017.conf forked process: 18155 all output going to: /var/applog/mongo_log/mongo.log child process started successfully, parent exiting |
--2.2 登陆数据库
[mongo@redhatB data]$ mongo MongoDB shell version: 2.2.1 connecting to: test |
--2.3 关闭 MongoDB 服务
> use admin; switched to db admin > db.shutdownServer(); |
三 使用 mongod 命令关闭
[mongo@redhatB data]$ mongod --shutdown --dbpath /database/mongodb/data/ killing process with pid: 17747 |
备注:mongod 命令的 shutdown 选项能干净的关闭 MongoDB 服务。
四 使用 kill 命令
--4.1 查看 mongo 相关进程
[mongo@redhatB data]$ ps -ef | grep mongo root 17573 14213 0 05:10 pts/1 00:00:00 su - mongo mongo 17574 17573 0 05:10 pts/1 00:00:00 -bash mongo 18288 1 0 06:12 ? 00:00:00 mongod -f /database/mongodb/data/mongodb_27017.conf mongo 18300 17574 6 06:13 pts/1 00:00:00 ps -ef mongo 18301 17574 0 06:13 pts/1 00:00:00 grep mongo |
--4.2 kill mongo 服务进程
[mongo@redhatB data]$ kill 18288 [mongo@redhatB data]$ ps -ef | grep pmon |
备注:可以使用操作系统的 kill 命令,给 mongod 进程发送 SIGINT 或 SIGTERM 信号,
即 "kill -2 PID," 或者 “kill -15 PID“。
建议不要使用 ”kill -9 pid“,因为如果 MongoDB 运行在没开启日志(--journal)的情况下,
可能会造成数据损失。
五 参考
http://www.mongodb.org/display/DOCS/Starting+and+Stopping+Mongo
http://docs.mongodb.org/manual/reference/mongod/
http://www.cnblogs.com/taobataoma/archive/2007/08/30/875743.html
本文转自027ryan 51CTO博客,原文链接:http://blog.51cto.com/ucode/1828805,如需转载请自行联系原作者