mongoexport 导出需要授权数据库中的集合 报错 Authentication failed.
当 mongo数据库启动服务时,使用了 认证机制,在使用mongoexport导出集合文件时,需要用户权限认证。
开启数据库认证服务: mongod --auth
导出mongo中集合文件:
mongoexport -d test -c rgc -o /mnt/g/rgc.json -u root -p dfdf --authenticationDatabase=test
参数:
- -d 需要导出的数据库
- -c 集合
- -o 导出文件位置及名称
- -u 用户名
- -p 密码
- --authenticationDatabase 需要导出的数据库
如果没有进行服务开启时数据库认证,则不需要 -u -p --authenticationDatabase= 这三个参数
如果执行成功显示:
2018-08-16T17:29:06.177+0800 connected to: localhost
2018-08-16T17:29:06.179+0800 exported 2 records
如果显示:
2018-08-16T17:29:02.783+0800 error connecting to db server: server returned error on SASL authentication step: Authentication failed.
则是因为 用户权限不足造成,两种或多种解决方法
- readWrite权限没有导出数据库的权限,需要给用户添加 dbOwner(在当前DB中执行任意操作)权限,命令如下:
db.createUser({user:'rgc',pwd:'dfdf',roles:[{role:'dbOwner',db:'test'}]}) # 给rgc用户设置密码,并且有 test 数据库的 dbOwner权限 【需要有添加用户的权限,可以先取消服务改为非认证机制】
然后进行如下操作,便可成功
mongoexport -d test -c rgc -o /mnt/g/rgc.json -u rgc -p dfdf --authenticationDatabase=test
- 使用root权限进行操作
db.createUser({user:'root',pwd:'dfdf',roles:[{role:'root',db:'admin'}]}) #添加root权限 【需要有添加用户的权限】
然后进行如下操作,便可成功
mongoexport -d test -c rgc -o /mnt/g/rgc.json -u root -p dfdf --authenticationDatabase=test
#相关连接:
https://docs.mongodb.com/manual/reference/built-in-roles/#dbAdminAnyDatabase
https://docs.mongodb.com/manual/reference/method/db.createUser/
https://docs.mongodb.com/manual/reference/program/mongoexport/
https://www.cnblogs.com/zxtceq/p/7690977.html
https://blog.csdn.net/u011191463/article/details/68485529
mongoexport 导出需要授权数据库中的集合 报错 Authentication failed.的更多相关文章
- 修改数据库中的内容报错:PropertyAccessException:Null value was assinged to a property of primitive type setter of
错误原因:totalTime的类型为int,数据库中为NULL,int 类型不能赋值为NULL,只能为0,所以报此异常. 解决方案:将totalTime的类型改为Integer,或者初始化为0
- jsp中引入jquery报错:Failed to load resource: the server responded with a status of 404 (Not Found)
问题描述: 今天自己在搭建spring.springMVC.hibernate框架,搭建完成后,在引入jquery时,发现jquery不管用.我的解决顺序是: 1.检查路径,发现路径没错,另外需要注意 ...
- 在Ubuntu中启动./jmeter-server报错Server failed to start: java.rmi.RemoteException: Cannot start. ranxf is a loopback address.解决方法
执行失败错误信息: root@ranxf:/home/ranxf/apache-jmeter-3.1/bin# ./jmeter-server Writing log file to: /home ...
- 解决sever 2008中tomcat的报错 init Failed to initialize end point associated with ProtocolHandler ["http-nio-80"]
错误现象: 01-Aug-2017 14:59:50.140 信息 [main] org.apache.coyote.AbstractProtocol.init Initializing Protoc ...
- python2 + selenium + eclipse 中,通过django生产数据库表的时候报错
python2 + selenium + eclipse 中,通过django生产数据库表的时候报错 解决: 1.查看自己电脑中,“开始-->控制面板-->管理工具-->服务--&g ...
- django在model中添加字段报错
在以下类中添加 description 字段后, class Colors(models.Model): colors = models.CharField(u'颜色', max_length=10) ...
- php中各种http报错的状态码分析
HTTP会经常遇见错误,本文主要和大家分享php中各种http报错的状态码,希望能帮助到大家. HTTP 错误 400 400 请求出错 由于语法格式有误,服务器无法理解此请求.不作修改,客户程序就无 ...
- 解决MyEclipse中的js报错的小方法
今天,下了个模版,但是导进去的时候发现js会报错.看了下其他都没有错误.而有一个js报错误,请原谅我有点红色强迫症,不能留一点红色 . 错误如下:Syntax error on token " ...
- 关于Entity Framework中的Attached报错相关解决方案的总结
关于Entity Framework中的Attached报错的问题,我这里分为以下几种类型,每种类型我都给出相应的解决方案,希望能给大家带来一些的帮助,当然作为读者的您如果觉得有不同的意见或更好的方法 ...
随机推荐
- win10磁盘/cpu占用100%问题
https://www.zhihu.com/question/27664545 https://www.zhihu.com/question/27664545 微软自己的解决办法 https://su ...
- Qt 学习-----helloword
(参考:http://www.qter.org/portal.php?mod=view&aid=27&page=3) 1. 打开“文件→新建文件或项目”菜单项(也可以直接按下Ctrl+ ...
- 2.4 逻辑运算符 &&(与)、||(或)、非(!)
一.逻辑运算符 &&(与).||(或).非(!) 逻辑运算符两边的表达式一定是布尔值,结果也是布尔值. 1.1.1 逻辑与 && => 表示并且.且的意思: tr ...
- synchronized各种使用场景
synchronized属于JVM锁机制 一.使用场景 在并发量比较小的情况下访问公共资源,使用synchronized是个不错的选择,但是在并发量比较高的情况下,其性能下降很严重 二.应用场景:同步 ...
- GitHub Desktop下载及使用
GitHub Desktop下载及使用 用了几次 GitHub Desktop 之后,发现不好用,其图形化界面功能有限.推荐使用Git for Windows,官方网站 https://git-f ...
- Thread.yield( )通俗理解
一. Thread.yield( )方法: 使当前线程从执行状态(运行状态)变为可执行态(就绪状态).cpu会从众多的可执行态里选择,也就是说,当前也就是刚刚的那个线程还是有可能会被再次执行到的,并不 ...
- Linux第四节课学习笔记
touch命令可修改文件atime和mtime,不能修改ctime.可用于修改文件后将修改时间改回之前修改时间. mkdir命令用于创建空白的目录,格式为“mkdir [选项] 目录”.加上参数-p可 ...
- javascript DOM document属性
DOM控制页面中的所有元素 每个载入浏览器的HTML文档都会成为Document对象,利用它可对HTML页面中的所有元素进行访问 常用属性: title:返回或设置当前文档的标题 常用方法 write ...
- IOS越狱插件汉化工具
提取插件文件“*.plist"进行制作汉化文件plist文件路径查看方法:安装插件后在cydia中查看该插件页底部“文件系统内容”使用文件管理软件提取(filza;ifile.....) 如 ...
- js入门关于js‘i++’‘++i’和‘i--’‘--i’计算的问题
一,i++和++i; i++是先赋值在运算,++i是先运算在赋值: 例如:var a=1 a++:在运算时是按照1计算的:但在下面再次出现时是按照2进行运算: ++a:在运算时是按照2计算的:在下面再 ...