![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mongodb
张国星就是个弱智
我是张国星,我就是个弱智
展开
-
mongodb索引
索引类型唯一性索引db.users.createIndex({roleid:1}, {unique:true})db.users.createIndex({roleid:1}, {unique:true, dropDups:true})// dropDups在遇到重复索引键时自动丢弃文档唯一性索引保证了集合中所有索引项的唯一性,当插入数据时,如果索引项重复,插入会失败稀疏索引对文档中不存在的字段数据不启用索引;这个参数需要特别注意,如果设置为true的话,在索引字段中不会查询出不包含对应字段原创 2020-12-03 14:24:47 · 176 阅读 · 0 评论 -
连接虚拟机中的mongodb
场景在本机中使用虚拟机,在虚拟机中启动了mongodb服务, 现在想通过本机连接虚拟机中的mongodb问题在本机中直接连接虚拟机中的mongodb发现无法连接解决方案虚拟机中的端口未向外开放sudo firewall-cmd --zone=public --query-port=28017/tcp// 查询端口是否开放sudo firewall-cmd --zone=public --add-port=28017/tcp --permanent// --permanent 永久开放/原创 2020-12-01 15:16:56 · 1639 阅读 · 0 评论 -
Mongodb事务
写关注writeConcern:决定一个写操作落到多少个节点上才算成功。w取值包括:0: 发起写操作不关心是否成功1~集群最大数据节点数:写操作需要被复制到指定节点数才算成功majority:写操作需要被复制到大多数节点才算成功all:全部节点确认发起写操作的程序会被阻塞知道写操作到达指定的节点数为止journal定义为写操作如何才算成功true:写操作落到journal文件才算成功false:写操作到达内存及算成功wtimeout如果写操作在指定毫秒内无法复制就会返回一原创 2020-11-29 14:12:17 · 2225 阅读 · 0 评论 -
mongo备份
mongodb的所有数据都放在数据目录下,要想备份mongodb,只需要简单创建数据目录中所有文件的副本就可以了。mongo的话是可以不关服务器就行备份的,但是这样的话不太安全,最好是先把服务器关了。使用mongodump可以就行数据库备份mongodump -d test -o backup %%将数据库test备份到backup使用mongorestore就行数据库的恢复mongo...原创 2019-03-29 12:00:54 · 1150 阅读 · 0 评论 -
mongodb账号认证
mongo启动使用mongod 启动mongodb服务器,有多个启动选项--dbpath指定数据目录,默认是/data/db,每个单独的服务器需要一个独立的数据目录--port服务器监听的端口号,默认是27017--logpath指定日志的输出路径,而非输出到命令行--config指定配置文件安全与认证...原创 2019-03-29 10:45:05 · 235 阅读 · 0 评论 -
mongodb分片
mongodb分片原创 2019-04-08 14:22:05 · 165 阅读 · 0 评论 -
mongo聚合
db.c.count() 返回集合中的文档数量db.runCommand({“distince”:“c”,“key”:“age”}) 获得指定集合中给定键的不同值db.test.group({ $keyf:function(doc){return {age:doc.age};}, %%指定分组依据的键,也可以这样用:"key":"age" initial:{num:0},%%每一组redu...原创 2019-03-28 14:16:46 · 223 阅读 · 0 评论 -
mongodb复制集
1.主从复制mongod --dbpath /data --port --10001 --master 启动主服务器mongod --dbpath /slave --pory --10002 --slave --source localhost:10001 启动从节点 也在启动从节点时也可以不使用–source来添加源,而是随后添加use localdb.sources.insert(...原创 2019-04-01 14:25:57 · 145 阅读 · 0 评论 -
mongodb基本操作
创建集合db.createCollection(name,Opt) 可以自己创建一个集合,Opt是创建时的指定参数,可省略。直接插入数据会自动创建集合插入db.foo.insert({key:123}) 插入时如果没有指定"_id",会自动添加一个唯一的ObjectID,insert相同_id的数据会出错db.foo.insert([{key:1},{key:2}]) 插入多个文档时使用批...原创 2019-03-27 17:45:29 · 210 阅读 · 0 评论