CentOS下MongoDB部署

MongoDB部署

#官网下载地址: https://www.mongodb.org/dl/linux/x86_64
wget download.op.uzoo.cn/mongodb-linux-x86_64-3.4.9.tgz
tar zxvf mongodb-linux-x86_64-3.4.9.tgz
mv mongodb-linux-x86_64-3.4.9.tgz mongobin

MongoDB配置

mkdir -p /mnt/mongodb_23000/{data,log}  

#mongo_23000.cnf配置文件如下
processManagement:
##是否后台启动
fork: true
systemLog:
destination: file
##日志存储位置
path: /mnt/mongodb_23000/log/db.log
logAppend: true
storage:
##journal配置
journal:
enabled: true
##数据文件存储位置
dbPath: /mnt/mongodb_23000/data
##是否一个库一个文件夹
#directoryPerDB: true
##数据引擎
engine: wiredTiger
##WT引擎配置
wiredTiger:
engineConfig:
##WT最大使用cache(根据服务器实际情况调节)
cacheSizeGB: 1
##是否将索引也按数据库名单独存储
#directoryForIndexes: true
##表压缩配置
#collectionConfig:
#blockCompressor: snappy
#索引配置
#indexConfig:
#prefixCompression: true
##端口配置
net:
port: 23000
##慢查询日志
operationProfiling:
slowOpThresholdMs: 100
mode: "slowOp"
##安全
security:
##启用auth认证
authorization: enabled
##指定keyFile
#keyFile: /data/mongodb_27017/key
#####分片副本集配置
#replication:
#oplog大小
#oplogSizeMB: 2048
#复制集名称
#replSetName: repset01
#分片配置
#sharding:
##分片角色
# clusterRole: shardsvr

MongoDB启动

cat start.sh 

#!/bin/bash
/mnt/mongobin/bin/mongod --config /mnt/mongodb_23000/mongo.cnf

添加管理员账户并授予最高权限

1.登录MongoDB

/mnt/mongobin/bin/mongo  127.0.0.1:23000/admin

2. 添加并认证管理员(role:root表示最高权限)

use admin
db.createUser({
user:"admin",
pwd:"password",
roles:[{
role:"root",
db:"admin"
}]
})
db.auth("admin", "password")

3. 测试登录

/mnt/mongobin/bin/mongo  127.0.0.1:23000/admin -uadmin -ppassword

添加普通账户并授予DB最高权限

1.添加用户并认证用户(要注意的是“dbAdmin”其实是没有读写权限的)

use test_db
db.createUser({
user:"test_user",
pwd:"123456",
roles:[{
role:"dbAdmin",
db:"test_db"
},{
role:"readWrite",
db:"test_db"
}]
})
db.auth("test_user", "123456")

2.测试登录

/mnt/mongobin/bin/mongo  127.0.0.1:23000/testdb -utest_user -p123456

备份DB

/mnt/mongodb/bin/mongodump -h 127.0.0.1 --port 23000 -u root -p 123456 --gzip --authenticationDatabase=admin -d databasename -o $BACKUP_FILE

发表评论

电子邮件地址不会被公开。