Mongo
Steven_liwen
本人性格开朗、自信、业余喜欢专研自己喜好事物。
展开
-
关于MongoDB最大连接数的查看与修改
一. MongoDB连接数在Linux平台下,无论是64位或者32位的MongoDB默认最大连接数都是819,WIN平台不知道,估计也没有人在 WIN平台下使用MongoDB做生产环境[root@localhost mongodb-3.0.4]# ./bin/mongoMongoDB shell version: 3.0.4connecting to: test> use原创 2016-04-22 16:47:26 · 7758 阅读 · 0 评论 -
mongodb:Applying renameCollection not supported in initial sync
记录一次mongodb副本集的异常情况:一、现象 在mongodb副本集中新增了一个数据节点,在新的数据节点数据同步完整后,新节点突然出现了dropAllDatabasesExceptLocal的操作,导致新节点的数据全部被删除。二、原因 经过查看新数据节点的日志,发现了报错:OplogOperationUnsupported: error applying bat...原创 2018-09-01 13:13:56 · 453 阅读 · 0 评论 -
mongodb 删除片键 code : 20 sharding already enabled for collection
问题现象mongodb分片集群指定片键删除了一个collection,再次为这个collection创建片键的时候,会报错{ "code" : 20, "ok" : 0, "errmsg" : "sharding already enabled for collection dbname.collection_201807"}解决办法解决办法就是在config库里面删除这个collection相关...原创 2018-07-06 10:23:26 · 903 阅读 · 0 评论 -
mongodb复制数据库和表
总结,数据表的复制 db.runCommand({cloneCollection:”commit.daxue”,from:”198.61.104.31:27017″});数据库的复制 db.copyDatabase(“user”,”user”,”198.61.104.31:27017″);对gridfs也OK哦。http://blog.csdn.net/xiaoping8411/article/d...原创 2018-06-26 11:49:19 · 5389 阅读 · 0 评论 -
解决mongodb secondary的读操作
一、使用shell有两种方法实现secondary的查询:1、> db.getMongo().setSlaveOk();2、echo "rs.slaveOk();" > ~/.mongorc.js这样连接后,可以直接查询。原创 2018-05-07 14:20:31 · 1548 阅读 · 0 评论 -
mongo eval方法执行需要认证解决办法
mongo删除数据后,仍然占用磁盘空间,导致无法获知真正仍可用的空闲磁盘空间的大小。为了释放空间,采用先复制集合数据,然后在删除旧集合的策略。由于copyTo()方法会把整个数据库锁住,所以采用eval()方法进行复制集合。db.runCommand({ eval: function(source, dest) {var count = 0; var errorId;var doc = db.ge...转载 2018-03-27 15:12:30 · 889 阅读 · 0 评论 -
mongodb 查询
mongodb 查询forEach(某个字段除以3)db.stat_delivery_201712.find({"day":20171212,"hour":{$gt:16}}).forEach(doc => {db.stat_delivery_201712.update({_id: doc._id}, {$set: {number: NumberLong(doc.numbe原创 2018-01-03 15:43:21 · 259 阅读 · 0 评论 -
MongoDB日志按照日期生成
在mongo分片集群中,大量数据写入时,配置节点会记录大量的日,为了便于管理,采用MongoDB日志切割的方法来解决。方法如下:先使用管理员账户进入到admin库use admin;然后在执行命令:db.runCommand({logRotate:1})注:可以写成脚本,使用crontab每日定时执行脚本如下:js文件vim logRotate.js原创 2017-10-26 17:09:40 · 2174 阅读 · 0 评论 -
mongodb的备份、恢复、迁移、回滚
一、 备份与恢复在创建MongoDB服务的时候,通过--dbpath指定目录就是存放mongdb数据库文件目录,我们可以通过复制这些文件实现数据库的冷备,但是这种方式不太安全。因此在冷备前,要关闭服务器。>use admin>db.shutdownServer()或者可以通过fsync方式使MongoDB将数据写入缓存中,然后再复制备份>use ad原创 2016-05-11 18:16:27 · 2275 阅读 · 0 评论 -
MongoDB用户的角色权限
1、当前库普通操作角色read 查询本库的权限readWrite 增删改查本库的权限2、当前库管理员操作角色dbAdmin 数据库对象的管理操作,但没有数据库的读写权限userAdmin 在本库下创建用户的权限dbOwner 本库所有操作的权限3、实例级别操作角色readAnyDatabase 查询本实例所有库的权限readWriteAnyDatabase 增删原创 2017-08-24 16:37:42 · 836 阅读 · 0 评论 -
mongodb删除集合后磁盘空间不释放
MongoDB删除集合后磁盘空间不释放,只有用db.repairDatabase()去修复才能释放。但是在修复的过程中如果出现了非正常的mongodb的挂掉,再次启动时启动不了的,需要先修复才可以,可以利用./mongod --repair --dbpath=/data/mongo/ 如果你是把数据库单独的放在一个文件夹中指定dbpath时就指向要修复的数据库就可以,修复可能要花费很长原创 2017-07-18 18:09:32 · 1378 阅读 · 0 评论 -
MongoDB设置权限
MongoDB 缺省是没有设置鉴权的,业界大部分使用 MongoDB 的项目也没有设置访问权限。这就意味着只要知道 MongoDB 服务器的端口,任何能访问到这台服务器的人都可以查询和操作 MongoDB 数据库的内容。在一些项目当中,这种使用方式会被看成是一种安全漏洞。本文介绍如何在单台 MongoDB 服务器上设置鉴权。设置完后,MongoDB 客户端必须用正确的用户名和密码登录,才能原创 2017-07-07 10:33:46 · 356 阅读 · 0 评论 -
MongoDB 生态 - 官方命令行工具
Mongo shellMongoDB 的命令行管理工具,也是 mongodb 最常用的工具,功能非常丰富,比如常用的show dbs / show tables / show users ...db.stats() 查看 db 的元数据信息db.colleciont.stats() 查看集合的元数据信息db.serverStatus() 查看数据库状态信息rs.conf() 查看复转载 2017-06-21 11:56:39 · 773 阅读 · 0 评论 -
Mongodb总是提示No suitable servers found
一、出错的原因操作系统开启了ipv6支持,但是mongodb未开启ipv6支持。二、解决办法有2个1、删除操作系中ipv6解析删除/etc/hosts 中 ::1 localhost 这一行2、开启mongod的ipv6支持参数如下:A、./bin/mongod --filePermissions 0777 --ipv6B、filePermissions翻译 2017-03-28 10:48:23 · 21948 阅读 · 2 评论 -
mongo - 副本集增加新成员
1. 当前状态C:\>mongo 127.0.0.1:2222MongoDB shell version: 1.8.3connecting to: 127.0.0.1:2222/testneu:PRIMARY> rs.conf(){ "_id" : "neu", "version" : 3, "members" : [原创 2017-02-08 18:35:20 · 675 阅读 · 0 评论 -
mongo数据导出
./mongoexport -h localhost:27017 -u al_user -p 123456 --authenticationDatabase admin -d vevideo_vt -c taxi_package_advert_20160813 --type=csv -f matching_id,datetime -o /data/taxi_package_advert_20160原创 2016-08-24 10:31:39 · 319 阅读 · 0 评论 -
mongo主从
参数说明:mongod为mongoDB的server程序,启动参数使用的主要有如下几个--fork fork出一个server端的daemon进程--port server监听端口--dbpath 数据文件目录--logpath 日志文件路径--logappend 日志追加到日志文件中,而不是覆盖写入 mongod在主从情况下可以设置转载 2016-06-29 10:24:52 · 1609 阅读 · 0 评论 -
mongodb修改用户密码的2种方法
一、 修改方法一:>use vevideo_vt>db.addUser('vt_user','passwd_888')有人会问,这个不是添加用户的方法吗。不错这是添加用户的方法,但是如果用户名相同,密码不同的话,就会更新密码。二、 修改方法二:>use vevideo_vt>db.changeUserPassword('vt_user','passwd_888');原创 2016-05-11 15:31:13 · 1407 阅读 · 0 评论 -
mongodb:error fetching oplog during initial sync
稍后再写原创 2018-09-01 13:17:09 · 529 阅读 · 0 评论