搭建mongodb副本集群,keyfile和ssl方式,用户认证模式

环境:

Microsoft Windows [版本 10.0.10586]

mongod 版本:

db version v3.2.1
git version: a14d55980c2cdc565d4704a7e3ad37e4e535c1b2
OpenSSL version: OpenSSL 1.0.1p-fips 9 Jul 2015
allocator: tcmalloc
modules: none
build environment:
    distmod: 2008plus-ssl
    distarch: x86_64
    target_arch: x86_64


1.建立3个文件夹1、2、3分别为主、备、备服务器


2.使用keyFile进行授权连接replica sets

#随机生成keyFile或者手动写入,key的长度必须是6-1024的base64字符,unix下必须相同组权限,windows下不需要
openssl rand -base64 1024 > mongodb.key
chmod 600 mongodb.key

3.配置文件

{
    "storage":
    {
        "dbPath": "D:/MongoDB3/1/db"
    },
    "net":
    {
        "port": 27001,
        "http":
        {
            "enabled":true
        }
    },
    "replication":
    {
        "replSetName":"s1"
    },
    "security":
    {
        "authorization": "enabled",
        "clusterAuthMode":"keyFile",
        "keyFile":"D:/MongoDB3/settings/mongodb.key"
    }
}


4.启动mongo

mongod --config="D:\MongoDB3\1\mongodb.cfg" 
mongod --config="D:\MongoDB3\2\mongodb.cfg" 	
mongod --config="D:\MongoDB3\3\mongodb.cfg"

5.连接主Mongo

mongo 127.0.0.1:27001

use admin
rs.initiate()
#确认
rs.conf()
#添加从库,使用本机局域网ip地址,使用127.0.0.1会出错
rs.add('192.168.10.105:27002')
rs.add('192.168.10.105:27003')

#或者一次性添加
rs.initiate({_id:"s1",members:[
{_id:0,host:"192.168.10.105:27001",priority:100},
{_id:1,host:"192.168.10.105:27002",priority:99},
{_id:2,host:"192.168.10.105:27003",priority:98},
]})

#查看配置信息
rs.status()

#移除库
rs.remove('192.168.10.105:27002')

6.添加用户及授权认证

db.createUser(
{
	user:"any", 
	pwd:"password",
	roles:[{role:"userAdminAnyDatabase",db:"admin"}]
}
);
db.auth("any","password")

7.连接副本
  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值