環境
centos 6.5,64位
mongodb 3.2.9
下載Mongodb
到官網 https://www.mongodb.com/download-center 下載,選擇:
https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.4.6.tgz
image.png
解壓
解壓并mv到 /home/applications/mongodb-3.2.9
配置
配置mongodb.conf
cd /home/applications/mongodb-3.2.9
vim mongodb.conf
mongodb.conf內容
dbpath=/home/applications/mongodb-3.2.9/db
logpath=/home/applications/mongodb-3.2.9/logs/mongodblog
port=27037 #默認端口為27017
#fork=true
#auth=true #第一次登錄不需要開啟身份驗證,待創建用戶后再設置為auth=true
nohttpinterface=false
rest=true #開啟28037端口的web接口服務
profile=2 #開啟操作性能日志收集,2為記錄慢查詢日志
slowms=50 #查詢耗時閥值為50ms,db.getProfilingStatus() 查看開啟后的效果,需要重啟mongodb才會生效
logappend=true #日志追加,再次啟動mongodb后日志不會覆蓋
verbose=true
vvvv=true
diaglog=3
nssize=128 #命名空間的文件從配置為128M開始,默認16M,最大為2G
創建數據庫路徑和日志存儲路徑
mkdir -p /home/applications/mongodb-3.2.9/db /home/applications/mongodb-3.2.9/logs
目錄列表
$ ll /home/applications/mongodb-3.2.9
drwxr-xr-x. 2 root root 4096 Sep 13 17:39 bin
drwxrwxrwx. 5 root root 4096 Sep 19 23:49 db
-rw-r--r--. 1 root root 34520 Aug 17 01:27 GNU-AGPL-3.0
-rw-r--r--. 1 root root 74431371 Sep 20 12:44 logs
-rw-r--r--. 1 root root 233 Sep 19 15:39 mongodb.conf
-rw-r--r--. 1 root root 16726 Aug 17 01:27 MPL-2
-rw-r--r--. 1 root root 1359 Aug 17 01:27 README
-rw-r--r--. 1 root root 35910 Aug 17 01:27 THIRD-PARTY-NOTICES
啟動
bin/mongod -f /home/applications/mongodb-3.2.9/mongodb.conf &
登錄
/home/applications/mongodb-3.2.9/bin/mongo localhost:27037
shell幫助命令
> help
創建用戶
參考
http://www.cnblogs.com/zhoujinyi/p/4610050.html
https://docs.mongodb.com/manual/reference/command/createUser/
創建超級管理員用戶
db.createUser({
user : 'root',
pwd : 'root',
roles : [{
role : 'root',
db : 'admin'
}
]
});
成功創建用戶后再次登陸
use admin
db.auth('root','root')
show dbs
show collections
稀疏索引
創建
db.coll.createIndex({ss:1},{sparse:true}); //默認為partial indexes
稀疏索引上進行null相關的判斷(等于,不等于})或者sort時,不不實用hint強制指定索引時,將不使用索引
db.coll.find({ss:{$ne:null}}).explain(); //不使用索引
db.coll.find().sort({ss:1}).explain(); //不使用索引
db.coll.find().sort({ss:1}).hint({ss:1}).explain(); //強制使用索引,但 ss字段為空的或者不存在該字段的數據不返回