2020-09-02

 

 

背景介绍

项目需支持MongoDB类型数据库,此类型数据库为非标准、通用的数据库,测试环境需测试人员参考生产环境数据库版本及集群类型去搭建。

一、Mongod及相关依赖文件的安装

集群类型:Replica set(副本集)

MongoDB 版本:3.0.8

Linux系统:linux 64bit

目录:/opt/mongodb

 

1.1 Mongodb安装:

tar -zxvf mongodb-linux-x86_64-rhel70-3.0.8.tgz -C /opt/mongodb/

mkdir /opt/mongodb/data

mkdir /opt/mongodb/logs

 

1.2 glibc-2.14 安装

tar xzf glibc-2.14.tar.gz

cd glibc-2.14

mkdir build

 

../configure  --prefix=/opt/glibc-2.14

make -j4

make install

 

cd /lib64/

rm -rf libc.so.6

 

export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH

ln -sf  /opt/glibc-2.14/lib/libc-2.14.so  /lib64/libc.so.6

#ln -sf 强制覆盖

 

1.3 libstdc++.so.6.0.20 安装

cd /usr/lib64/

上传libstdc++.so.6.0.20

#rm -rf libstdc++.so.6

ln -sf libstdc++.so.6.0.20  libstdc++.so.6

 

1.4 日期问题解决

Failed global initialization: BadValue Invalid or no user locale set. Please ensure LANG and/or LC_* environment variables are set correctly.

vim /etc/profile

export LC_ALL=C

source  /etc/profile

 

# tee /etc/environment <<- 'EOF'

 LANG=en_US.utf-8

 LC_ALL=

 EOF

# source /etc/environment

 

1.5 时区不对问题解决

ln -sf  /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

export TZ='Asia/Shanghai'

vim ~/.bashrc

export TZ='Asia/Shanghai'

 

1.6 初始化配置

./mongod

 

var config = {

  _id : "replPrd",

  members : [

     {_id : 1, host : "10.235.112.3:27017"},

     {_id : 2, host : "10.235.112.4:27017"},

  ]

}

rs.initiate(config)

 

二、MongoDB测试及常用命令

2.1集群添加节点

use admin

db.auth('admin','admin')

rs.add("10.237.7.171:27017")

rs.add("10.237.7.172:27017")

rs.add("10.237.7.173:27017")

 

2.2 集群删除节点:

rs.remove("10.47.213.180:27017")

rs.remove("10.47.213.181:27017")

rs.remove("10.47.213.184:27017")

 

2.3 关闭当前节点

db.shutdownServer()

 

2.4 创建用户数据库

use studentdb

db.createUser( { user: "test", pwd: "root123", roles: [ { role: "dbOwner", db: "studentdb" } ] })

db.auth('test','root123')

db.auth('admin','admin')

2.5 从节点读数据:

rs.slaveOk();

db.student.find().pretty()

2.6 超级管理员

use admin

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

2.7 所有数据库读写的权限

db.createUser({user:"zzw558",pwd:"zzw558",roles:[{role:"readWriteAnyDatabase",db:"admin"}]})

db.auth('zzw558','zzw558')

use studentdb

db.student.insert({_id:"1",content:"prd mongodb!",userid:"1",name:"di",visits:NumberInt(1234)});

 

2.8 给admin用户赋予集群管理的权限:

member:PRIMARY> db.grantRolesToUser("admin", ["clusterAdmin"])

 

2.9 开启权限认证需生成KEY

openssl rand -base64 741 > mongodb-keyfile 

chmod 600 mongodb-keyfile 

keyFile=/opt/mongodb/mongodb/conf/mongodb-keyfile

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值