php无法连接mongodb 3.0问题解决
1 几个常用的role
- root mongodb最高权限
- userAdmin 自己建立的数据库账号管理权限
- read 只读权限
- readWrite 可读可写
2 遭遇的梗
为数据库建立了账号,php死活连不上,使用mongo能连接上,php就是连不上
3 正确的姿势
为了安全,我们常常给web应用赋予数据库最低的权限,保证数据库安全。能只用到读的绝对不加上写
首先建立一个root role的账号
配置mongodb no auth启动之后
use admin
db.createUser({
user:'root',
pwd:'root',
roles:[
{role:'root',db:'admin'}
]})
为我们新建的数据库(test)建立一个userAdmin
use test
db.createUser({
user:'001say',
pwd:'001say',
roles:[
{role:'userAdmin',db:'test'}
]})
建立数据库连接账号
use test
db.auth('001say','001say')
db.createUser({
user:'say001',
pwd:'say001',
roles:[
{role:'read',db:'test'}
]})
这样你就获得了一个只读权限的say001账号
使用MongoClient连接的时候,可能需要以下格式
$mongo = new MongoClient("mongodb://name:password@192.168.199.140:27017/test");
需要直接在连接中指定数据库,否则MongoClient会默认去连接admin数据库。你的权限不够,当然会导致连接失败
4 后续
第二步是不可缺少的,如果你直接用root权限新建的账号,是不可以连接到test这个数据库的。
mongodb提供了很细腻的权限管理,最小权限到对集合的操作。
如果还是连不上,可能需要一个最新的驱动。pecl
如果有遇到类似问题的,希望能帮到你~~
文章纯手打,如有错误,请联系我修改~~谢谢
php无法连接mongodb 3.0问题解决的更多相关文章
- mongoDB 3.0.3 以上GUI 连接认证问题
因为项目要用到mongoDB,今天尝试搭建了一下. 首先mongo还是很好装的,yum 或者手动下载都可以,我是yum安装的最新版本的3.0.4. 主要是安装完成之后,需要安装一个GUI管理工具,我尝 ...
- (原创) 使用pymongo 3.6.0连接MongoDB的正确姿势
0.疑惑 前两天使用pymongo连接MongoDB的时候发现了一个奇怪的现象:我本机MongoDB并没有打开,但是使用pymong.MongoClient()进行连接时,并没有异常,我的服务端也正常 ...
- 使用mongo-java-driver-3.0.2连接MongoDB数据库
这里使用的mongodb的java驱动版本是:3.0.2,文件名mongo-java-driver-3.0.2.jar 博客本地下载下载网址(也可以下载其它版本):http://central.ma ...
- java连接mongodb的一个奇葩问题及奇葩解决方式
昨天在eclipse中编写代码,本来连接mongodb进行各项操作都是正常的,但是有一会儿突然之间就没法连接了,还一直抱错,错误如下: 信息: Cluster created with setting ...
- docker node项目 连接mongodb
在弄docker部署node项目的时候遇到了连接mongdb的问题,记录一下问题解决办法 一.Docker 安装 MongoDB 1.查找Docker Hub上的mongo镜像 [root@VM_49 ...
- Ubuntu 18.04安装MongoDB 4.0(社区版)
Ubuntu 18.04(虚拟机VirtualBox上),MongoDB 4.0, 听室友说,23点有世界杯决赛呢!可是,孤要写博文的啊!以记录这忙乱的下午和晚间成功安装了一个软件到Linux上.—— ...
- CentOS7 安装MongoDB 3.0服务器
1,下载&安装 MongoDB 3.0 正式版本发布!这标志着 MongoDB 数据库进入了一个全新的发展阶段,提供强大.灵活而且易于管理的数据库管理系统.MongoDB宣称,3.0新版本不只 ...
- MongoDB 3.0 新特性【转】
本文来自:http://www.open-open.com/lib/view/open1427078982824.html#_label3 更多信息见官网: http://docs.mongodb.o ...
- MongoDB 3.0 用户创建
摘要: MongoDB 3.0 安全权限访问控制,在添加用户上面3.0版本和之前的版本有很大的区别,这里就说明下3.0的添加用户的方法. 环境.测试: 在安装MongoDB之后,先关闭auth认证,进 ...
随机推荐
- 监控应用服务器使用JMX监控Tomcat (推荐)
前言:做了一个监控应用服务器的项目(支持Tocmat.WebSphere.WebLogic各版本), 过程也算是磕磕绊绊,由于网上缺少相关资料,或者深陷于知识的海洋难以寻觅到有效的资料,因而走过不少弯 ...
- iOS开发-关闭/收起键盘方法总结
前言:作为IOS开发人员,需要经常和表单打交道.因此我对收起键盘的方法作了下总结,IOS收起键盘有三种方法(如果有其它收起键盘的方法请在留言区指错). 收起键盘的方法: 1.点击Return按扭时收起 ...
- UnicodeEncodeError: ‘gbk’ codec can’t encode character u’\u200e’ in position 43: illegal multibyte sequence
[问题] python中已获取网页: http://blog.csdn.net/hfahe/article/details/5494895 的html源码,其时UTF-8编码的. 提取出其标题部分: ...
- mongoDB GUI客户端工具大全
网易blog - MongoDB GUI客户端工具大全 oschina - MonjaDB 1.0.2 发布,MongoDB 的 GUI 客户端 oschina创建人红薯对MonjaDB官方文 ...
- sql 转 markdown
https://github.com/2liang/AutoBuildDocFromDB SQL脚本生成数据字典 http://www.jianshu.com/p/f491d0d3c503 这两个脚本 ...
- putty英文乱码---DM8168_ETV_V1.1(路视明)
配置參照http://jingyan.baidu.com/article/c74d600048ed620f6a595d12.html 注意事项: 假设出现 英文也乱码.那么就是波特率设置的问题,应该这 ...
- atitit.MIZIAN 陕北方言 特有词汇 大词典 attilax 整理 h--n v1 q31.xlsx
atitit.MIZIAN 陕北方言 特有词汇 大词典 attilax 整理 h--n v1 q31.xlsx 1 Mizian陕北方言 english英语 spain西班牙语 cantonese粤 ...
- Atitit.数据索引 的种类以及原理实现机制 索引常用的存储结构
Atitit.数据索引 的种类以及原理实现机制 索引常用的存储结构 1. 索引的分类1 1.1. 索引的类型 按查找方式分,两种,分块索引 vs编号索引1 1.2. 按索引与数据的查找顺序可分为 正 ...
- Python内置函数之isinstance()
isinstance(object,classinfo)用来判断对象是否为某种数据类型. 例子: >>> isinstance(,object) True >>> ...
- 李洪强-HEAD 和nil和NULL