MongoDB基础

本节主要学习了MongoDB的概述,应用场景,安装方式,目录结构,默认数据库,数据库操作,MongoDB数据备份


目录

一、概述

1、相关概念

2、特性

二、应用场景

三、安装

1、编译安装

2、rpm安装

3、启动数据库

四、目录结构

1、rpm -ql mongodb-org-server

2、rpm -ql mongodb-org-shell

3、rpm -ql mongodb-org-tools

五、默认数据库

六、数据操作

1、库操作

2、文档操作

查看集合 

创建集合 

删除集合   

插入数据(文档)

查询数据

删除数据

更新数据

更新文档进行数值递增 

七、MongoDB数据库备份

1、备份命令

1.mongodump

①选项

②语法

2.mongoexport

①选项

②语法

2、回复命令

1.mongorestore

①选项

②语法

2.mongoimport

①选项

②语法


一、概述

             mongodb是一个nosql数据库,它有高性能、无模式、文档型的特点。是nosql数据库中功能最丰富,最像关系数据库的。数据库格式为BSON

1、相关概念

2、特性

二、应用场景

游戏   物流   社交   物联网    视频直播    大数据

三、安装

1、编译安装

2、rpm安装

[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc

 安装:

yum install -y mongodb-org

3、启动数据库

systemctl start mongod.service

四、目录结构

1、rpm -ql mongodb-org-server

/etc/mongod.conf

主配置文件

 port: 27017        监听端口号

 bindIp: 127.0.0.1        监听地址

/run/mongodbPID文件
/usr/bin/mongod启动命令
/var/lib/mongo存储数据文件
/var/log/mongodb日志

 

2、rpm -ql mongodb-org-shell

/usr/bin/mongo    客户端命令

3、rpm -ql mongodb-org-tools

/usr/bin/mongodump备份数据库
/usr/bin/mongoexport备份文档
/usr/bin/mongoimport恢复文档
/usr/bin/mongorestore恢复数据库

五、默认数据库

admin:
    从权限的角度来看,这是"root"数据库。要是将一个用户添加到这个数据库,这个用户自动继承所有数据库的权限。
一些特定的服务器端命令也只能从这个数据库运行,比如列出所有的数据库或者关闭服务器。
local:
    这个数据库永远不会被复制,可以用来存储限于本地单台服务器的任意集合。
config:
    当Mongo用于分片设置时,config数据库在内部使用,用于保存分片的相关信息。

六、数据操作

1、库操作

查看数据库show databases
show dbs
显示当前所在数据库db
切换数据库use  dbName
数据库创建

隐式创建
不用主动创建,使用use newDB,会自动创建不存在的数据库

只有在库中创建集合后才会保存,并使用show dbs查看到

删除数据库db.dropdatabase()

 查看

 切换数据库

 删除数据库

2、文档操作

查看集合 

                   show tables

 

创建集合 

                  db.createCollection("test")

删除集合   

                   db.需要删除的集合名称.drop()

插入数据(文档)

                    db.集合名称.insert({key:value})        单行

                    db.集合名称.insertmany([{key:value},{key:value},{key:value}])        多行

 

    mongodb默认数字的数据类型float浮点型,若要改变为整型:NumberInt(数字)

 

查询数据

    全集合查询        db.集合名称.find({})        db.集合名称.find()

    条件查询        db.info.find({查询条件1key:value,查询条件2,...},{key1:1|0,key2:1|0,...})

                          key:1 显示,key:0 不显示

                          当显示的key只有一个时,key:1 只显示该key及对应value,key:0 显示除了该key之外其他所有keyvalue

    查询集合中有多少文档

        db.集合名称.count()

删除数据

    全文删除        db.集合名称.remove({})

    条件删除        db.集合名称.remove({key:value})

更新数据

    db.info.update({_id:"3"}, {$set:{nickname:"jack"}})    所有满足条件的文档都进行更新 

原:

修改后

    db.info.update({userid:"1003"},{$set:{nickname:"tom"}},{multi:true})

原来

替换 

更新文档进行数值递增 

db.info.update({userid:"1003"},{$inc:{likenum:NumberInt(1000)}})

创建

更新

七、MongoDB数据库备份

1、备份命令

1.mongodump

①选项

                -h=hostname:port

                -u=<username>

                -p=<password>

                --authenticationDatabase=<dbname>

                -d=<database>

                -o=<path>

②语法

mongodump -d dbName -h hostName:port -u userName -p Password -o backupDirectory

2.mongoexport

①选项

                -h=hostname:port
                -u=<username>
                -p=<password>
                --authenticationDatabase=<dbname>
                -d=<database>
                -o=<path>

②语法

mongoexport -d dbName -c tableName -h hostName:port -u userName -p Password -o backupDirectory/jsonFile.json

 

2、恢复命令

1.mongorestore

①选项

                -h=hostname:port
                -u=<username>
                -p=<password>
                --authenticationDatabase=<dbname>
                -d=<database>
                --drop 当目标数据库中存在同名集合则删除再恢复

②语法

mongorestore -h hostName -u username -p password -d dbName -c tableName bakcupDirector/bsonFile

2.mongoimport

①选项

                -h=hostname:port
                -u=<username>
                -p=<password>
                --authenticationDatabase=<dbname>
                -d=<database>
                --drop 当目标数据库中存在同名集合则删除再恢复        

②语法

mongoimport -d dbName -c tableName -h hostName:port -u userName -p Password  backupDirectory/jsonFile.json

查看生成文件

删除 

恢复


 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值