下面的一些配置可能对服务器的影响较大,使用合理的配置来优化mongod服务。针对企业版的设置已经忽略,请自行阅读官方的网站。
分类目录归档:mongodb
mongodb中复制集的命令
mongodb复制集推荐文章
mongodb中的集群配置
mongodb中的集群配置,无法通过mongod.conf中配置,只能在mogo通过命令配置,下面介绍下在mogo中的定义的config.
mongodb中的管理实用命令
Mongodb中的操作方法的命令非常标准,这有助于我们能够理解、更好记住这些方法,达到熟练掌握。
1、用户
常识操作,无非包含了添、删、改、查。但有一个非常有意思的事情是,这些操作只能在相对应的db中,怎么理解呢?打比方说要给guohu库添加新用户,必需先执行use guohu,然后使用db.createUser()的方法,其他的方式类似。
Mongodb中配置实例
# where to write logging data.
systemLog:
#I=Info D=Debug W=Warning E=Error F=Fatal
#级别越高限制越小,当等于5时,会产生源源不断的D级别日志文件,例如[WTJournalFlusher] flushed journal
verbosity: 0
#生产环境中建议关闭,避免产生大量的日志记录
Mongodb的配置
配置适用于mongod、mongos,下面的介绍中只使用mongod举例说明,如有不同之处,会特别指出。
mongodb 3.0之后配置文件采用YAML格式,这种格式非常简单,使用<key>:<value>表示,开头使用“空格”作为缩进,不能使用tab。需要注意的是,“:”之后有value的话,需要紧跟一个空格,如果key只是表示层级,则无需在“:”后增加空格(比如:systemLog:后面既不需要空格)。按照层级,每行4个空格缩进,第二级则8个空格,依次轮推,顶层则不需要空格缩进。如果格式不正确,将会出现错误:
Mongodb和SQL的对应关系
MongoDB查询以及投影操作符的实践
Mongodb中的readConcern 与 readPreference的区别与原理
参考文章:http://www.mongoing.com/archives/3403
在这一篇文章提到,readPreference有5种策略:
primary
只从 primary 节点读数据,这个是默认设置primaryPreferred
优先从 primary 读取,primary 不可服务,从 secondary 读secondary
只从 scondary 节点读数据secondaryPreferred
优先从 secondary 读取,没有 secondary 成员时,从 primary 读取nearest
根据网络距离就近读取
PHP7中的MongoDB\Driver\ReadPreference
MongoDB读写分离(Read Preference)的几种模式
PHP7中的MongoDB\Driver\Query
这个类可以理解为是对query操作的描述.
final public MongoDB\Driver\Query::__construct ( array|object $filter [, array $queryOptions ] )
$filter:支持mongodb官方的所有查询操作,
详见:https://docs.mongodb.com/manual/tutorial/query-documents/
PHP7中的MongoDB\Driver\WriteConcern
这个是个对mongodb的写入性能、以及确保数据一致性的控制设置,非常重要的一个类
1、final public MongoDB\Driver\WriteConcern::__construct ( string|int $w [, integer $wtimeout [, boolean $journal ]] )
参数:$w
1:默认的writeConcern,数据写入到Primary就向客户端发送确认
0:对客户端的写入不需要发送任何确认,适用于性能要求高,但不关注正确性的场景
PHP7中的MongoDB\Driver\Manager
这个MongoDB中的操作入口类,包括了连接MongoDB服务器、write、query的操作.
final public MongoDB\Driver\Manager::__construct ( string $uri [, array $options [, array $driverOptions ]] )
PHP7中MongoDB\Driver\BulkWrite
这个类可以理解为是一个搜集类,从类名中也可以提现,bulk在有道中的释义“使扩大”。该类可以将insert(写)、update(更新)、delete(删除)的多条操作收集后,发送给
MongoDB\Driver\Manager::executeBulkWrite()使用。
Mongodb安装过程中的问题
1、** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is ‘always’.
** We suggest setting it to ‘never’