mongodb安装
mongodb安装
1、创建:/etc/yum.repos.d/mongodb-org-4.0.repo,gpgcheck=0设置为0,将baseurl切换为国内的镜像,加快下载速度。
[mongodb-org-4.0] name=MongoDB Repository baseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/$releasever/mongodb-org/4.0/x86_64/ gpgcheck=0 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc |
2、安装:yum install -y mongodb-org-4.0.4-1.el6,等待安装完成(使用yum list mongodb-org查看可选版本)
3、编辑配置mongod,/etc/mongod.conf,注意:后面有分隔符,此项需要在创建完管理员账号后才能开启:security: authorization: enabled
l 自定义日志路径:/cache7/mongodb/log/mongod.log (不存在创建)
l 自定义存储路径:/cache7/mongodb/db/ (不存在创建)
l 限制内存使用:wiredTiger: engineConfig: cacheSizeGB: 4
l 使用公司规定端口:$PORT
l 绑定本机IP:bindIp: $LOCAL_IP (本机IP)
l 开启权限访问:security: authorization: enabled(管理员创建完成之后再开启)
# where to write logging data. systemLog: destination: file logAppend: true path: /cache7/mongodb/log/mongod.log
# Where and how to store data. storage: dbPath: /cache7/mongodb/db/ journal: enabled: true # engine: # mmapv1: wiredTiger: engineConfig: cacheSizeGB: 4
# how the process runs processManagement: fork: true # fork and run in background pidFilePath: /var/run/mongodb/mongod.pid # location of pidfile timeZoneInfo: /usr/share/zoneinfo
# network interfaces net: port: $PORT bindIp: $LOCAL_IP # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting. security: authorization: enabled #operationProfiling:
#replication:
#sharding:
## Enterprise-Only Options
#auditLog:
#snmp: |
4、创建管理员用户
启动mongod:/usr/bin/mongod -f /etc/mongod.conf
[root@localhost bin]# mongo $LOCAL_IP:$PORT/admin
MongoDB Enterprise > db.createUser({
... user: "adminMongo",
... pwd: "#123admin",
... roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
... })
Successfully added user: {
"user" : " adminMongo ",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
创建app_user用户:(根据实际需求创建)
use appDB;
db.createUser({
user:'app_user',
pwd:'app_user123-',
roles:[{role:'readWrite',db:'appDB'}]
});
kill 进程号
server should be down...
5、修改/etc/mongod.conf,开启security: authorization: enabled,重启服务
[root@localhost bin]# /usr/bin/mongod -f /etc/mongod.conf
6、给admin赋备份权限:
db.updateUser( "adminMongo ", { roles : [ { "role" : "userAdminAnyDatabase", "db" : "admin" }, { "role" : "backup", "db" : "admin" } ], pwd: "#123admin" } ) |
导出备份命令:
mongodump -u adminMongo -p #123admin -h $LOCAL_IP --port $PORT --authenticationDatabase 'admin' -d user_app -o /backup/mongodb/ |
7、导入:
给admin赋目标DB(例如: user_app)读写权限
db.updateUser( " adminMongo ", {roles : [{ "role" : "userAdminAnyDatabase","db" : "admin" }, { "role" : "backup", "db" : "admin" },{ "role" : "readWrite", "db" : " user_app" }], pwd: "#123admin"} ) |
导入备份命令:
mongorestore --host $LOCAL_IP:$PORT -u adminMongo -p #123admin --authenticationDatabase admin -d user_app /backup/mongodb/user_app/ |