首先不得不说一下,现在的抄袭问题是真的太多了,由于本人mongo设置了帐号密码,导致远程登录一直在报错,然后百度了半天,发现的都是同一个版本,几乎都是一模一样抄的,瞬间就无语,所以只能一个人瞎折腾,首先先说一下,原生PHP 如何远程登录mongo
1.首先在Mongo的conf配置中bind_ip 设置为0.0.0.0 这样远程登录第一步完成了,若不设置密码,那本地连接就能登录了。
2.将配置中的auth=true 打开,这样就能开启帐号密码验证了。下图就是我得配置
3.进入mongo中创建帐号,首先就是先确定好自己用的是那张表,比如:我自己建了一个表:young.那我就使用young表,
use young 然后开始创建帐号密码,
db.createUser({ user: "root", pwd: "root", roles: [ { role: "userAdminAnyDatabase", db: "admin" }]})
这句话意思就是:在young表创建一个帐号为root ,密码为root的帐号,该帐号只允许访问young表。
接着就是开始设置权限。
db.grantRolesToUser( "root" , [ { role: "dbOwner", db: "young" } ])
给帐号root 在young表中设置所有权限。
设置完成后,退出,重启一下mongo.接下来就是开始PHP连接mongo了。
下面贴两个版本,一个是Laravel 的设置,一个贴原生PHP7.2 版本得设置以及操作
原生PHP7.2连接mongo laravel 中的配置执行mongo语句
执行语句其中collection中的是表中的集合.
由于我提前创建了数据,因此可以查看到数据
得到的数据相信看完了以后,大致的流程应该明白了。整个流程一句一句手码的,绝非抄袭。也不会和百度上那样说的连他自己都不知道。有问题可以+QQ:601902897
网友评论