MongoDB的简单使用及副本采集功能

MongoDB应用 10/05 阅读 821 views次 人气 0
摘要:

以下的内容包含:MongoDB的简单使用和MongoDB副本采集搭建。

MongoDB的简单使用:

1、创建一个数据库

use [databaseName] | use test 

2、查看所有数据库

show dbs 

3、给指定数据库添加集合,并添加记录

db.[documentName].insert({key:value})

db.[documentName].save({...})//更新

4、查看数据库中所以文档

show collections

5、查询数据库数据

查询所有————db.[documentName].find();

查询第一条数据 db.[documentName].findOne();

6、更改数据

db.[documentName].update({查询条件},{更新内容})

db.[documentName].update({name:Tom},{$set:{name:Sam})

例如:

var p = db.test.findOne();

db.test.update(p,{name:"Tom"})

7、删除操作

db.[documentName].remove({name:"Sam"})

8、删除集合

db.[databaseName].drop()

9、删除数据库

db.dropDatabase()

10、shell的help

db.help()

11、$set 修改器 局部修改 db.[documentName].update({name:Tom},{$set:{name:Sam})

$unset 去掉字段(field)db.[documentName].update({name:Tom},{$unsetset:{name:1})

$inc 实现局部修改的运算  db.[documentName].update({name:Tom},{$inc:{num:9})

$push 数组字段增加 db.[documentName].update({name:Tom},{$push:{name:Sam})

$pushAll 批量增加数组元素db.[documentName].update({name:Tom},{$pushAll:{name:["sam","Tom","Rose"]})

$addToSet 目标数组不存在此项,则添加

$pop 删除数组中值, 1 最后一个 -1第一个值

$pull 删除数组中值

$pullAll 批量删除


MongoDB副本采集搭建 (在Linux上搭建,windows没试过,但是大同小异)

功能:可以使多个mongo数据库数据同步,实现集群功能,即使一个数据库挂了,可以用其他节点数据库。

步骤:

1、创建数据库存放位置

命令:

mkdir -p /opt/mongodata/data

touch /opt/mongodata/logs

2、创建数据库

命令:

./mongod --dbpath=/opt/mongodata/data --fork --logpath=/opt/mongodata/logs --replSet=repset

3、在不同的服务器创建mongo数据库

和上面方式相同即可。 注意!!! --replSet=repset 后面的参数必须相同

4、进入任何一个服务器的数据库,配置副本采集。

说明:mongodb默认端口为27017,用 --port=? 即可修改。./mongo ip:port/user 指定ip、port、user登录

命令:

 ./mongo 
	use admin
	config={_id:"repset",members:[
	...{_id:0,host:"192.168.--.--:27017"},
	...{_id:1,host:"192.168.--.--:27017"},
	...{_id:2,host:"192.168.--.--:27017"},
	...
	...{_id:--,host:"192.168.--.--:27017"}]
	...}
	rs.initiate(config);

等待,如出现json字符串,带有"ok":1说明成功。

常识:节点_id的值最小的为主节点,并且只有主节点有读写权限,其他节点只读,不可更改数据。


评论

该文章不支持评论!

分享到: