MongoDB安装、配置、常用命令、授权、复制集、双击热备
第一章 安装mongodb-win32-x86_64-2008plus-ssl-4.0.5-signed.msi
1 当前实例安装软件包为:mongodb-win32-x86_64-2008plus-ssl-4.0.5-signed.msi
选择Custom安装模式
2 修改安装路径为:C:\mongodb
3 取消服务配置(后续手动配置)
4 取消安装MongoDB Compass复选框
5 执行安装
第二章 配置MongoDB
1 创建以下文件夹
C:\mongodb\data\db
C:\mongodb\log
2 安装mongodb服务
以管理员身份运行C:\Windows\System32\cmd.exe
进入C:\mongodb\bin
执行命令:
mongod --dbpath "c:\mongodb\data\db" --logpath "c:\mongodb\log\mongod.log" --install --serviceName "MongoDB"
3 启动MongoDB
执行命令:
net start MongoDB
4 关闭MongoDB
执行命令:
net stop MongoDB
5 删除服务(特殊情况下使用)
执行命令:
mongod --remove --serviceName "MongoDB"
6 测试安装是否成功
用浏览器请求路径:http://127.0.0.1:27017/ 出现如下界面则表示安装成功
第三章 MongoDB高级配置
执行命令可增加以下参数:
–bind_ip 192.168.0.223 (绑定IP,绑定当前IP后,MongoDB可远程访问)
–port 28072 (设置端口,线上环境出于安全考虑,建议调整端口)
–auth (启动权限认证,新增用户后再启动权限认证,避免无法登陆)
–replSet rs0 (启动复制集,MongoDB双击热备时可增添此参数启动)
举例:
1、基础服务配置参数
mongod --dbpath "c:\mongodb\data\db" --logpath "c:\mongodb\log\mongod.log" --install --serviceName "MongoDB"
2、绑定IP服务配置参数
mongod --dbpath "c:\mongodb\data\db" --logpath "c:\mongodb\log\mongod.log" --bind_ip 172.28.124.10 --install --serviceName "MongoDB"
3、启动权限认证集服务配置参数
mongod --dbpath "c:\mongodb\data\db" --logpath "c:\mongodb\log\mongod.log" --bind_ip 172.28.124.10 --auth --install --serviceName "MongoDB"
4、启动复制集服务配置参数
mongod --dbpath "c:\mongodb\data\db" --logpath "c:\mongodb\log\mongod.log" --bind_ip 192.168.0.13 --replSet rs0 --install --serviceName "MongoDB"
5、分别启动服务
执行命令:
net start MongoDB
或
通过windows服务启动
第四章 MongoDB常用命令
说明:此处使用Robo 3T软件作为客户端操作工具
1、使用Robo 3T 打开Open Shell
2、可以在如下位置执行Mongodb命令
show dbs (查看库)
show collections (查询集合)
show user (查询用户)
db.getCollection(“account”) (获取account集合)
db.getCollection('201901').remove({}) (移除201901集合内所有数据)
use admin (使用admin库)
db.getUsers() (获取用户)
db.createUser({user:"admin",pwd:"123456",roles:["root"]})
db.createUser({user:"admin",pwd:"123456",roles:["root"],mechanisms:["SCRAM-SHA-1"]}) (添加管理员账户,root权限)
db.createUser(
{
user:"admin",
pwd:"123456",
roles:["root"],
mechanisms:["SCRAM-SHA-1"]
}
)
db.createUser({user:"driadmin",pwd:"123456",roles:["readWrite"],mechanisms:["SCRAM-SHA-1"]}) (添加一般用户,readWrite权限)
db.createUser(
{
user:"driadmin",
pwd:"123456",
roles:[ { role:"readWrite",db:"dirdb"},{ role:"dbAdmin",db:"dirdb"},{ role:"userAdmin",db:"dirdb"},{ role:"dbOwner",db:"dirdb"}],
mechanisms:["SCRAM-SHA-1","SCRAM-SHA-256"]
}
)
db.updateUser("driadmin",{ roles:[{ role:"readWrite",db:"dirdb"},{ role:"dbAdmin",db:"dirdb"},{ role:"userAdmin",db:"dirdb"},{ role:"read",db:"dirdb"}] })
db.grantRolesToUser(
"driadmin",
[
{ role: "readWrite", db: "dridb" }
]
)
第五章 启动MongoDB复制集
1、前期准备工作:
1)准备两台服务器:service1 ip:192.168.0.13
service2 ip:192.168.0.223
2)配置host域名:C:\Windows\System32\drivers\etc\hosts
192.168.0.223 vm223
192.168.0.13 vm13
3)安装Mongodb(详情见第一章)
4)两台计算机上分别配置服务
mongod --dbpath "c:\mongodb\data\db" --logpath "c:\mongodb\log\mongod.log" --bind_ip 192.168.0.13 --replSet rs0 --install --serviceName "MongoDB"
mongod --dbpath "c:\mongodb\data\db" --logpath "c:\mongodb\log\mongod.log" --bind_ip 192.168.0.223 --replSet rs0 --install --serviceName "MongoDB"
注意:replSet 中S大写
–replSet rs0 中rs0 为复制集名称,两台计算机名称必须相同
5)启动服务
执行命令:net start MongoDB 或通过windows服务启动
6)配置主从MongoDB服务
说明:此处使用Robo 3T软件执行后续操作
1、使用Robo 3T 打开Open Shell
2、初始化主库,执行命令:
rs.initiate({_id:'rs0',members:[{_id:1,host:'vm13:27017'}]})
3、追加从库,执行命令:rs.add(‘vm223:27017’)
4、完成(可测试验证了)
第六章 MongoDB角色权限
1、创建用户:
use admin
db.createUser({user:"admin",pwd:"123456",roles:["root"]})
use dridb
db.createUser(
{
user:"driadmin",
pwd:"123456",
roles:[ { role:"readWrite",db:"dirdb"},{ role:"dbAdmin",db:"dirdb"},{ role:"userAdmin",db:"dirdb"},{ role:"dbOwner",db:"dirdb"}],
mechanisms:["SCRAM-SHA-1","SCRAM-SHA-256"]
}
)
2、授权:
db.grantRolesToUser(
"driadmin",
[
{ role: "readWrite", db: "dridb" }
]
)
3、授权后登陆:
mongo 172.28.124.10/dridb -udriadmin -p
不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈的积累!