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