安装MongoDB
本文以“mongodb-linux-x86_64-2.6.10.tar.gz”为例介绍安装MongoDB的方法。
步骤 1 以root用户登录服务器
步骤 2 上传软件包
通过SSH或XFTP等上传工具,将MongoDB的安装包“mongodb-linux-x86_64-2.6.10.tar.gz”上传到服务器的“/usr/local”目录下。
步骤 3 进入“/usr/local”目录
cd /usr/local
步骤 4 解压缩安装包
tar -xzvf mongodb-linux-x86_64-2.6.10.tar.gz
解压完成,在当前目录下生成“mongodb”文件夹。
1.2 启动MongoDB
步骤 1 以root用户登录服务器
步骤 2 进入“/usr/local/mongodb”目录
cd /usr/local/mongodb
步骤 3 修改配置文件
修改conf目录下的配置文件,修改相关端口配置以及日志、数据库路径
cd /conf
vi mongo.conf
配置如下:(详见1.3MongoDB配置文件描述)
directoryperdb=true
dbpath=/usr/local/mongodb/db
logpath=/usr/local/mongodb/log/mongodb.log
logappend=true
fork=true
port=27017
步骤 4 回到/usr/local/mongodb主目录,赋予可执行权限
chmod a+x *.;
步骤 5 启动服务
./star.sh直接启动或者 ./mongod –f ./conf/mogo.conf自定义配置启动
步骤 6 关闭服务
./stop.sh直接关闭(如果修改过启动端口,则需要修改脚本中的端口号)
./bin/mongo admin --port 27017 --eval "db.shutdownServer()"
注意:正式运营时,严禁使用kill命令来关闭MongoDB服务!!!!!!!!!!
1.3 MongoDB配置文件描述
配置项: | 描述 |
directoryperdb | 是否将数据库按目录分别创建 |
dbpath | 数据库目录路径,建议未当前目录的db文件夹 |
logpath | 日志文件路径,建议为当前目录的log文件下,文件名问mongodb.log |
logappend | 日志是否以追加形式打开,当重新启动时,mongdb默认会覆盖掉之前的日志,建议为true |
fork | 以子进程形式在后台启动,默认为true |
port | 端口号,默认端口号为27017,可以根据实际修改 |
1.4 MongoDB常用运维命令
mongodump备份命令
命令语法:
mongodump -h dbhost --port dbhost –u username –p password -d dbname -o dbdirectory
选项 | 描述 |
-h | MongoDB所在服务器,可以直接带端口例如127.0.0.1:27017 |
--port | 端口,可选,默认为27017 |
-u | 用户名 |
-p | 密码 |
-d | 需要备份的数据库名称 |
-o | 备份数据存放的位置,在备份完成后,系统自动在该目录下建立一个以数据库名称为名的文件夹,这个目录里面存放该数据库实例的备份数据。 |
将数据库test备份到/usr/local/hrx/dump文件夹下
示例:./bin/mongodump -d test -o /usr/local/hrx/dump
mongorestore恢复命令
命令语法:
mongodump -h dbhost -d dbname -o dbdirectory
选项 | 描述 |
-h | MongoDB所在服务器,例如127.0.0.1:27017 |
-d | 需要恢复的数据库名称 这个名称可以和备份前的数据库名称不一样,建议前后保持一样 |
--dbdirectory | 备份数据所在的位置 |
--drop | 恢复前先删除当前数据。就是说备份之后的数据都会被删除!慎用! |
将上面备份的数据恢复
示例:
./bin/mongorestore -h 127.0.0.1:37017 -d test --directoryperdb /usr/local/hrx/mongodb/dump/test/
mongoexport导出命令
命令语法:
./bin/mongoexport –d dbname -c collection -f field1,field2… -q {query} -o file
选项 | 描述 |
-d | 数据库名 |
-c | 集合名 |
-f | 可选,需要导出的字段 |
-q | 可选,过滤条件 |
-o | 导出的数据文件路径和名称 |
--csv | 默认导出为json格式,该选项为导出csv格式 |
从demo数据库中的param表导出type类型为3的数据
示例:
./bin/mongoexport -d demo -c param -f type,key,value -q {type:3} -o /usr/local/hrx/param.dat
mongodbimport导入命令
命令语法:
./bin/mongoimport –d dbname –c collection –f field --type=csv --file filename
选项 | 描述 |
-d | 数据库名 |
-c | 集合名 |
-f | 字段映射,可选 |
--type | 默认为json,导入csv时可选 |
--file | 文件位置和名称 |
将csv文件中的数据导入到itms数据库中的param表,字段映射为_id,type,key,value,meno,rank
示例:
./bin/mongoimport –d itms –c param -f _id,type,key,value,meno,rank --type=csv --file test.csv