• mongodb 在认证(auth)的情况下,配置主从(master & slave)


    mongodb 在认证(auth)的情况下,配置主从(master & slave)
    2017年04月27日 15:29:39
    阅读数:697
    说明:对于mongo用认证,主从配置,是一个非常常用的搭配,但是从往上找的资料并不是很完整,个人认为资料比较老,很少有 mongo 3.0 以上的完整说明,所以怒开博客,写下了完整的配置,亲测可用。

    master配置
    本机 :192.168.100.23:27017

    /etc/mongodb/mongo.conf

    port = 27017
    dbpath = /data/mongodb_t
    logpath = /var/log/mongodb_t.log
    logappend = true
    journal = true
    fork = true

    1. 以上配置单机打开mongo,对admin数据库进行设置
      据资料, 必须建立全局用户root,个人感觉是超级管理员; 必须对local数据库建立repl用户。

    mongo –port 27017

    use admin
    db.createUser({user:"root", pwd:"123456", roles:[{role:"root", db:"admin"}]})
    db.createUser({user:"repl", pwd:"123456", roles:[{role:"dbOwner", db:"local"}]})
    show users
    {
    "_id" : "admin.root",
    "user" : "root",
    "db" : "admin",
    "roles" : [
    {
    "role" : "root",
    "db" : "admin"
    }
    ]
    }
    {
    "_id" : "admin.repl",
    "user" : "repl",
    "db" : "admin",
    "roles" : [
    {
    "role" : "dbOwner",
    "db" : "local"
    }
    ]
    }

    exit
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    2、 修改配置文件
    添加以下三项:

    port = 27017
    dbpath = /data/mongodb_t
    logpath = /var/log/mongodb_t.log
    keyFile=/srv/mongodb/keyfile
    logappend = true
    journal = true
    fork = true
    keyFile=/srv/mongodb/keyfile #添加keyfile
    auth = true #打开认证
    master = true #打开主库配置

    3、添加keyfile
    主要目的是对主从之间的验证

    cd /srv/mongodb/
    openssl rand -base64 741 >>keyfile
    chmod 700 keyfile

    4、重启数据库
    salve配置
    本机:与主库不再同一台设备上面,同一局域网

    /etc/mongodb/mongo.conf

    port = 27017
    dbpath = /data/mongodb_t
    logpath = /logs/mongo/mongodb_t.log
    logappend = true
    journal = true
    fork = true

    1. 同master第一步
    2. 修改配置文件
      port = 27017
      dbpath = /data/mongodb_t
      logpath = /logs/mongo/mongodb_t.log
      logappend = true
      journal = true
      fork = true
      auth = true
      slave = true
      keyFile=/srv/mongodb/keyfile
      source = 192.168.100.23:27017

    3、添加keyfile
    cd /srv/mongodb/

    将主库设备上面的keyfile拷贝到这个目录下

    chmod 700 keyfile

    4、重启数据库
    重启之后,登陆数据库,就能看到与主库的同步了
    如果shell登陆, 需要

    rs.slaveOk()

    参考:
    http://lovelace.blog.51cto.com/1028430/1441040/
    http://442951480.blog.51cto.com/3779798/1643606/

  • 相关阅读:
    【BZOJ4676】Xor-Mul棋盘 拆位+状压DP
    【BZOJ4688】One-Dimensional 矩阵乘法
    【BZOJ4704】旅行 树链剖分+可持久化线段树
    【BZOJ4709】[Jsoi2011]柠檬 斜率优化+单调栈
    【BZOJ4711】小奇挖矿 树形DP
    【BZOJ4715】囚人的旋律 DP
    【BZOJ4712】洪水 树链剖分优化DP+线段树
    服务器相关 HTTP 请求错误
    RSA算法
    公钥和私钥解释
  • 原文地址:https://www.cnblogs.com/5min/p/9008879.html
Copyright © 2020-2023  润新知