https://www.mongodb.com/download-center?jmp=nav下载对应OS的版本,tar -xzvf解压
对于最新版本比如3.4,windows 7下可能回报api-ms-win-crt-runtimel1-1-0.dll。
注:推荐percona版本。
mongodb 指定配置文件
mongod --config /etc/mongo.conf
或:nohup mongod -f mongodb.cnf &
典型配置(单机)
[root@dev logs]# cat /etc/mongo.conf
port = 27017
dbpath = /usr/local/mongodb-linux-x86_64-rhel70-3.4.3/db
logpath = /usr/local/mongodb-linux-x86_64-rhel70-3.4.3/logs/mongo.log
smallfiles = true
directoryperdb = true # 初始化后不能修改
storageEngine = wiredTiger # 3.0后增加,默认为mmap
fork = true
logappend = true
journal = true
bind_ip=0.0.0.0 # 否则远程无法访问。
后台模式启动,建议配置文件设置,不是命令行
mongod --fork
指定日志文件,建议配置文件设置,不是命令行
mongod --logpath /logs/mongo.log
每个db一个目录,建议配置文件设置,不是命令行
mongod --logpath
mongodb停止
> use admin;
switched to db admin
> db.shutdownServer()
server should be down...
导入csv数据
mongoimport --type csv -d test -c postalCodes --headerline --drop pincodes.csv
类select分页查询
use spider;
db.stat.find({state:'Gujarat'}/*条件*/,{_id:0, city:1, state:1,pincode:1}/*查询字段*/).sort({city:1}).skip(10).limit(10)
使用ttl索引是的文档expire
mongod --shutdown
集合重命名
db.log1.renameCollection('log')
查看集合的统计信息
db.log.stats()
查看db的统计信息
db.stats()
性能工具
mongotop
mongostat
当前正在执行的语句
db.currentOp().inprog
kill某操作
db.killOp(<operation id>)
capped collection
capped collections是性能出色的有着固定大小的集合(定容集合),以LRU(Least Recently Used最近最少使用)规则和插入顺序进行 age-out(老化移出)处理,自动维护集合中对象的插入顺序,在创 建时要预先指定大小。如果空间用完,新添加的对象将会取代集合中最旧的对象。
可以插入及更新,但更新不能超出 collection 的大小,否则更新失败。不允许删除,但是可 以调用 drop() 删除集合中的所有行,但是 drop 后需要显式地重建集合。在 32 位机上,一 个capped collection的最大值约为482.5M,64 位上只受系统文件大小的限制。
使用mongobooster访问。