`
文章列表
首先这是正常的,因为SECONDARY是不允许读写的, 在写多读少的应用中,使用Replica Sets来实现读写分离。通过在连接时指定或者在主库指定slaveOk,由Secondary来分担读的压力,Primary只承担写操作。 对于replica set 中的secondary 节点默认是不可读的, [mongodb@ligh bin]$ mongo 127.0.0.1:33333 MongoDB shell version: 2.0.1 connecting to: 127.0.0.1:33333/test SECONDARY> db.user.find() ...
集群由三台服务器(假定ip地址为:serverA,serverB,serverC)组成,采用mongodb的复制集+分片(Replica Sets+Sharding) 实现集群的高可靠/高可用以及数据读写的负载均衡。 三台机器分成两个复制集,两个复制集组成一个集群的两个分片(shard1和shard2)。具体如下:   1、ServerA的s1-1 / ServerB的s1-2 / ServerC的s1-3 组成一个3节点的复制集s1   2、ServerA的s2-1 / ServerB的s2-2 / ServerC的s2-3 组成一个3节点的复制集s2   3、复制集s1和s2 组成有 ...
Mongodb的安全模式默认是关闭,此时它需要在一个可信任的运行环境中。 在可信任的环境中使用默认的关闭安全模式最简单,但是需要确保可信任的设备访问数据库的TCP端口, 这通常需要隔离数据库所在设备,使其完全无法 ...
Mongodb安全认证在单实例和副本集两种情况下不太一样,单实例相对简单,只要在启动时加上 --auth参数即可,但副本集则需要keyfile。   一、单实例 1.启动服务(先不要加auth参数) 2.登陆后切换到admin库并添加管理员账号   2.1  创建系统管理员用户 默认条件下,超级管理员只能用于帐号管理,不能进行其他数据库操作,可以通过自己给自己授权实现。生产环境中的管理员,如果某个帐号包含了角色userAdminAnyDatabase或者userAdmin,就应该仅仅用于帐号和角色管理,不应该再授予别的角色了。 (1)我们首先就要建立一个超级管理员,然后再用超级 ...
1.Mongo对象 Mongo对象内部实现了一个连接池。Mongo对象是线程安全的,因此可以只创建一个,在多线程环境下安全使用。因 此,我们可以用将Mongo变量作为一个Singleton类的成员变量,从而保证只创建一个连接池。Mongo.close方法将关闭当前所有活跃的连 接。所以要在web工程被从Tomcat或者GlassFish容器中注销的时候确保调用close方法。 2.DB对象 DB 对象可以通过Mongo.get方法获得,代表了和数据库的一个连接。默认情况下,当执行完数据库的查询或者更新操作后,连接将自动回到连接池中。不需要 我们手动调用代码放回池中。至于如何实现,我猜测 ...
问题描述:         向数据库中插入一条String类型的数据,在数据库中该字段定义为varchar2(64),一开始使用String.length()来进行数据的长 度校验,如果数据是纯英文,那么是没有问题的,但是如果数据中包含中文,校验可以通过,但是在数据入库时经常会报数据超长。   问题分析:         既然问题是数据超长,那么问题应该就是出在数据长度校验上,也就是出在String.length()这个方法上,来看看jdk是如何描述这个方法的: length public int length()返回此字符串的长度。长度等于字符串中 Unicode 代码单元的数量 ...
【MongoDB for Java】Java操作MongoDB 上一篇文章: http://www.cnblogs.com/hoojo/archive/2011/06/01/2066426.html介绍到了在MongoDB的控制台完成MongoDB的数据操作,通过前一篇文章我们对MongoDB有了全面的认识和理解。现在我们就用Java来操作MongoDB的数据。   开发环境: System:Windows IDE:eclipse、MyEclipse 8 Database:mongoDB 开发依赖库: JavaEE5、mongo-2.5.3.jar、junit-4.8.2. ...
singleton---单例模式 单例模式,在spring 中其实是scope(作用范围)参数的缺省设定值每个bean定义只生成一个对象实例,每次getBean请求获得的都是此实例 单例模式分为饿汉模式和懒汉模式   饿汉模式 spring singleton的缺省是饿汉模式:启动容器时(即实例化容器时),为所有spring配置文件中定义的bean都生成一个实例 懒汉模式 在第一个请求时才生成一个实例,以后的请求都调用这个实例 spring singleton设置为懒汉模式: <beans default-lazy-init="true" ...
最近根据Mongodb使用中出现的一些问题,对Mongodb的源码进行了一些简单的修改,记录如下: 高连接数解决方案:mongodb连接池优化 优化连接池使用效率,更细粒度的调整连接数设置,降低分片集群和复制集的连接数。 1.mongos,mongod启动参数添加connPoolTimeout参数,设置连接数超时时间。 2.添加connPoolTimeout 命令,设置超时时间 db.runCommand({ setParameter : 1, connPoolTimeout : 900 }) 3.mongos,mongod启动参数添加connPoolMaxPerHost 参数,设置 ...
com.mongodb.MongoOptions源代码,其中有connectionsPerHost和threadsAllowedToBlockForConnectionMultiplier两个重要的属性。    connectionsPerHost:每个主机的连接数    threadsAllowedToBlockForConnectionMultiplier:线程队列数,它以上面connectionsPerHost值相乘的结果就是线程队列最大值。如果连接线程排满了队列就会抛出“Out of semaphores to get db”错误。    connectionsPerHost默认 ...
项目中使用Mongodb存储图片及文件,在后台操作中没操作一个就实例化一个Mongo对象及连接池,也没有手动关闭,到时随着访问增加连接数不断增加(通过db.serverStatus().connections查看),最后导致mongodb拒绝web服务连接,web服务器抛出异常,经过改造后讲Mongodb的初始化通过spring实例化管理并设置成单例,代码中只要得到使用基本,不用重复实例化,随着服务器关闭,mongo对象及连接池关闭,连接数正常。   根据需要将mongo的相关增删改查 创建都封装到了MongoManager和DataProcessDao中,并打包加入到项目中   创建 ...
mongodb由C++写就,其名字来自humongous这个单词的中间部分,从名字可见其野心所在就是海量数据的处理。关于它的一个最简洁描述为:scalable, high-performance, open source, schema-free, document-oriented database。MongoDB的主要目标是在键/值存储方式(提供了高性能和高度伸缩性)以及传统的RDBMS系统(丰富的功能)架起一座桥梁,集两者的优势于一身。         安装及使用:   首先在Ubuntu上安装MongoDB。   下载MongoDB, 现在最新的生产版本1.7.0 ...
查询所有数据库列表 > show dbs 如果想查看当前连接在哪个数据库下面,可以直接输入db > db Admin想切换到test数据库下面 > use test switched to db test > db Test想查看test下有哪些表或者叫collection,可以输入 > show collections system.indexes user想知道mongodb支持哪些命令,可以直接输入help > help HELP       show dbs show database names       show collections    ...
事务配置 首先在/WEB-INF/applicationContext.xml添加以下内容: <!-- 配置事务管理器 --> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory"> <ref bean="mySessionFa ...
批处理启动副本集 @echo off d: cd\mongodb\bin mongod --port 27022 --dbpath "分片存放路径如 d:\mongodb\data" --logpath "日志存放路径如 d:\mongodb\log\log.log" --logappend --journal --replSet 副本集名如replSet01 --oplogSize 2048     备份(通过mongodump命令,可以借助dos动态创建文件夹和计划任务实现定时备份) @echo off md d:\mongobac ...
Global site tag (gtag.js) - Google Analytics