liunx mongodb配置远程访问
配置账户,授权登录
./mongo启动的时候是默认不需要授权登录的
创建admin数据库,创建用户,设置账号,密码,权限
> use admin
switched to db admin
> db.createUser({user:"root",pwd:"123456",roles:["root"]})
Successfully added user: { "user" : "root", "roles" : [ "root" ] }
附:添加用户时各个角色对应权限
1.数据库用户角色:read、readWrite;
2.数据库管理角色:dbAdmin、dbOwner、userAdmin;
3.集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4.备份恢复角色:backup、restore
5.所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、
dbAdminAnyDatabase
6.超级用户角色:root
不知道选什么就 root 好了,具体业务在区分配置文件修改
增加
security: authorization: enabled //冒号后面需要空一格
修改 bindIp bindIp: 0.0.0.0 表示所有IP都可以访问, 有些MongoDB版本,可以在bindIP添加多个IP,目前我的版本
3.4的不支持
重启MongoDB
如果出现
not authorized on admin to execute command
应该是权限不够
------------------------------------------
可以进入Mongo测试
db.auth(‘news’,‘news’) 测试是否正确,
----------------------------------
PHP 连接MongoDB dsn 结构
mongodb://username:password@host:prot/dbname