Mongodb数据库的安装部署及基本使用

2023-11-06

Mongodb数据库的安装部署及基本使用

一、Mongodb数据库介绍

1.Mongodb简介

MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的,它是一个面向集合的,模式自由的文档型数据库。

2.Mongodb适用场景

MongoDB是一个基于分布式文件存储的数据库。由C++语言编写,旨在为WEB应用提供可扩展的高性能数据存储解决方案。

3.MongoDB特性

  • 面向集合存储,易于存储对象类型的数据。
  • 模式自由
  • 支持动态查询
  • 支持完全索引,包含内部对象
  • 支持复制和故障恢复
  • 使用高效的二进制数据存储,包括大型对象(如视频等)
  • 自动处理碎片,以支持云计算层次的扩展性
  • 文件存储格式为BSON(一种JSON的扩展

二、检查本地系统环境

1.检查系统版本

[root@master ~]# cat /etc/os-release 
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"




2.检查yum仓库

[root@master ~]# yum repolist all
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id                                                  repo name                                                                     status
!base/7/x86_64                                           CentOS-7 - Base - mirrors.aliyun.com                                          enabled: 10,072
centosplus/7/x86_64                                      CentOS-7 - Plus - mirrors.aliyun.com                                          disabled
contrib/7/x86_64                                         CentOS-7 - Contrib - mirrors.aliyun.com                                       disabled
!extras/7/x86_64                                         CentOS-7 - Extras - mirrors.aliyun.com                                        enabled:    515
!mariadb                                                 MariaDB                                                                       enabled:     96
!updates/7/x86_64                                        CentOS-7 - Updates - mirrors.aliyun.com                                       enabled:  4,385
repolist: 15,068

三、Mongodb的安装

1.配置Mongodb的yum源

[root@server yum.repos.d]# cat mongodb.repo 
[mongodb-org]
name=MongoDB Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/mongodb/yum/el$releasever/
gpgcheck=0
enabled=1



2.安装Mongodb

yum install -y mongodb-org-server mongodb-org

3.修改绑定IP


[root@server yum.repos.d]# grep bind /etc/mongod.conf 
  bindIp: 0.0.0.0  # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.
[root@server yum.repos.d]#

4.启动Mongodb服务

systemctl start mongod.service
systemctl enable  mongod.service

四、检查Mongodb状态

1.查看Mongodb服务状态

[root@server ~]# systemctl status  mongod.service
● mongod.service - MongoDB Database Server
   Loaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2022-11-24 15:27:34 CST; 12min ago
     Docs: https://docs.mongodb.org/manual
 Main PID: 13566 (mongod)
   CGroup: /system.slice/mongod.service
           └─13566 /usr/bin/mongod -f /etc/mongod.conf

Nov 24 15:27:33 server systemd[1]: Starting MongoDB Database Server...
Nov 24 15:27:33 server mongod[13563]: about to fork child process, waiting until server is ready for connections.
Nov 24 15:27:33 server mongod[13563]: forked process: 13566
Nov 24 15:27:34 server mongod[13563]: child process started successfully, parent exiting
Nov 24 15:27:34 server systemd[1]: Started MongoDB Database Server.



2.检查Mongodb服务端口


[root@server ~]#  netstat -tunlp |grep 27017
tcp        0      0 127.0.0.1:27017         0.0.0.0:*               LISTEN      13566/mongod 

3.检查Mongodb版本


[root@server ~]# mongo  --version
MongoDB shell version v5.0.14
Build Info: {
    "version": "5.0.14",
    "gitVersion": "1b3b0073a0b436a8a502b612f24fb2bd572772e5",
    "openSSLVersion": "OpenSSL 1.0.1e-fips 11 Feb 2013",
    "modules": [],
    "allocator": "tcmalloc",
    "environment": {
        "distmod": "rhel70",
        "distarch": "x86_64",
        "target_arch": "x86_64"
    }
}


五、连接Mongodb

1.本地连接Mongodb数据库

[root@server ~]# mongo
MongoDB shell version v5.0.14
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("0db22758-cc95-44c1-ad0f-d86eaf743a35") }
MongoDB server version: 5.0.14
================
Warning: the "mongo" shell has been superseded by "mongosh",
which delivers improved usability and compatibility.The "mongo" shell has been deprecated and will be removed in
an upcoming release.
For installation instructions, see
https://docs.mongodb.com/mongodb-shell/install/
================
---
The server generated these startup warnings when booting: 
        2022-11-24T15:27:33.653+08:00: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine. See http://dochub.mongodb.org/core/prodnotes-filesystem
        2022-11-24T15:27:34.223+08:00: Access control is not enabled for the database. Read and write access to data and configuration is unrestricted
        2022-11-24T15:27:34.223+08:00: /sys/kernel/mm/transparent_hugepage/enabled is 'always'. We suggest setting it to 'never'
        2022-11-24T15:27:34.223+08:00: /sys/kernel/mm/transparent_hugepage/defrag is 'always'. We suggest setting it to 'never'
---
---
        Enable MongoDB's free cloud-based monitoring service, which will then receive and display
        metrics about your deployment (disk utilization, CPU, operation statistics, etc).

        The monitoring data will be available on a MongoDB website with a unique URL accessible to you
        and anyone you share the URL with. MongoDB may use this information to make product
        improvements and to suggest MongoDB products and deployment options to you.

        To enable free monitoring, run the following command: db.enableFreeMonitoring()
        To permanently disable this reminder, run the following command: db.disableFreeMonitoring()
---
> 



2.查看默认数据库

  • admin: 从权限的角度来看,这是"root"数据库。超级管理员的库,存储用户信息。
  • local:这个数据永远不会被复制,可以用来存储限于本地单台服务器的任意集合。
  • config: 当Mongo用于分片设置时,config数据库在内部使用,用于保存分片的相关信息。

>  show dbs;
admin   0.000GB
config  0.000GB
local   0.000GB


六、Mongodb数据库的基本操作

1.创建一个数据库

> use school;
switched to db school

2.进入某个数据库

> use shcool;
switched to db shcool

3.向数据库中插入数据

> db.class.insert({ "name": "王笑笑", "age": "18", "genden": "female" });
WriteResult({ "nInserted" : 1 })

4.查看数据库列表


> show dbs;
admin   0.000GB
config  0.000GB
local   0.000GB
shcool  0.000GB

5.查询表中数据

> db.class.find()
{ "_id" : ObjectId("637f239ac5eeb43eb6901899"), "name" : "王天天", "age" : "18", "genden" : "female" }
{ "_id" : ObjectId("637f23b9c5eeb43eb690189a"), "name" : "王笑笑", "age" : "18", "genden" : "female" }


6.删除数据库

> use school;
switched to db school
> db.dropDatabase();
{ "ok" : 1 }



7.创建单个集合


> use school;
switched to db school
> db.createCollection("class")
{ "ok" : 1 }

8.删除单个集合


> show tables;
aabb
aacc
class
> db.aabb.drop()
true
> show tables;
aacc
class

七、Mongodb数据的增删查改

1.向集合中插入文档数据——增


> db.mall.insert({  "type":  "phone",  "price":  "3799","xinghao":  "huawei", "desc":  "abbbb" })
WriteResult({ "nInserted" : 1 })


2.查找数据——查

①查找一个集合中所有数据

> db.class.find()
{ "_id" : ObjectId("637f281942616feb174fa1a8"), "name" : "王笑笑", "age" : "18", "genden" : "female" }
{ "_id" : ObjectId("637f28a442616feb174fa1a9"), "name" : "李一一", "age" : "16", "genden" : "female" }


②查询单个文档数据


> db.class.find({"name" : "王笑笑"})
{ "_id" : ObjectId("637f281942616feb174fa1a8"), "name" : "王笑笑", "age" : "18", "genden" : "female" }


③查看集合内容,以固定格式显示


>  db.class.find().pretty();
{
	"_id" : ObjectId("637f281942616feb174fa1a8"),
	"name" : "王笑笑",
	"age" : "18",
	"genden" : "female"
}
{
	"_id" : ObjectId("637f28a442616feb174fa1a9"),
	"name" : "李一一",
	"age" : "16",
	"genden" : "female"
}
> 


3.更改数据——改

①更新集合中文档数据


> db.mall.find().pretty();
{
	"_id" : ObjectId("637f277b42616feb174fa1a7"),
	"type" : "phone",
	"price" : "3799",
	"xinghao" : "huawei",
	"desc" : "abbbb"
}
> db.mall.find({"type" : "TV"})
{ "_id" : ObjectId("637f277b42616feb174fa1a7"), "type" : "TV", "price" : "3799", "xinghao" : "huawei", "desc" : "abbbb" }

①新文档替换旧文档

查看文档的ID号


> db.class.find()
{ "_id" : ObjectId("637f281942616feb174fa1a8"), "name" : "王笑笑", "age" : "18", "genden" : "female" }
{ "_id" : ObjectId("637f28a442616feb174fa1a9"), "name" : "李一一", "age" : "16", "genden" : "female" }


将将新文档替换ID为"637f281942616feb174fa1a8"

db.class.save({
    "_id" : ObjectId("637f281942616feb174fa1a8"),
    "title" : "MongoDB",
    "description" : "MongoDB 是一个 Nosql 数据库",
    "by" : "Runoob",
    "url" : "http://www.runoob.com",
    "tags" : [
            "mongodb",
            "NoSQL"
    ],
    "likes" : 110
})



查看集合内文档内容

> db.class.find()
{ "_id" : ObjectId("637f281942616feb174fa1a8"), "title" : "MongoDB", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "Runoob", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "NoSQL" ], "likes" : 110 }
{ "_id" : ObjectId("637f28a442616feb174fa1a9"), "name" : "李一一", "age" : "16", "genden" : "female" }
> 


4.删除数据——删

db.class.remove({"likes" : 110}, {justone: true})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Mongodb数据库的安装部署及基本使用 的相关文章

随机推荐

  • 原生Android何去何从

    lt 原生Android何去何从 gt By 我承认永不变 一 Android发展方向 1 跨平台开发 科技日益发展 未来的世界 不可估量 在此发表一下我的意见 虽然很不想承认 但是却不得不承认跨平台开发会成为主流 跨平台应用的优点显而易见
  • 华为OD机试真题 Java 实现【表示数字】【牛客练习题】

    一 题目描述 将一个字符串中所有的整数前后加上符号 其他字符保持不变 连续的数字视为一个整数 数据范围 字符串长度满足1 n 100 二 输入描述 输入一个字符串 三 输出描述 字符中所有出现的数字前后加上符号 其他字符保持不变 四 解题思
  • linux中编译tslib1.4出错:./autogen.sh: 4: autoreconf: not found

    autogen sh 4 autoreconf not found 是在不同版本的 tslib 下执行 autogen sh 产生 它们产生的原因一样 是 因为没有安装automake 工具 ubuntu 10 04 用下面的命令安装好就可
  • Java微信小程序的授权登陆

    前提 获取服务号的公众号平台 中的 开发配置 进去 获取小程序的 AppId 与 AppSevrect 登陆授权作用域分为两种 一 静默登陆 scope参数值为 snsapi base 只能获取到用户openid 好处是静默认证 无需用户手
  • Qt窗口之QMainWindow、QDialog、QWidget

    在 Qt 中 我们将窗口和控件统称为部件 Widget 窗口是指程序的整体界面 可以包含标题栏 菜单栏 工具栏 关闭按钮 最小化按钮 最大化按钮等 控件是指按钮 复选框 文本框 表格 进度条等这些组成程序的基本元素 一个程序可以有多个窗口
  • android面试-事件分发

    回答思路 首先事件是哪几个事件 视图的结构 事件分发的整个流程 事件类型 首先事件分为按下 移动 抬起 还有一个cancel 非人为的结束 视图结构 首先得有个结构模型概念 ViewGroup和View组成了一棵树形结构 最顶层为Activ
  • 中台战略-第九章、数字营销的技术架构与路径

    文章目录 第九章 数字营销的技术架构与路径 9 1基于中台架构 构建立体数字营销云 9 2 数字营销技术架构和设计理念 9 2 1 数字营销云应用介绍 1 全域会员i CDP 2 智能营销i Marketing 3 全渠道销售i Comme
  • 在线沙箱网站 在线恶意文件监测网站 病毒在线监测网站 apk分析在线网站

    沙箱 https www joesandbox com windows 沙箱 VirSCAN https www virscan org language de 只能传20M以内的文件 VirusTotal https www virust
  • 【注释模板】IDEA中JAVA类、方法注释模板教程

    文章目录 TOC 1 引言 2 JAVA创建类时注释模板配置 2 1 打开IDEA 依次点击File gt Setting 2 2 在Settings界面中依次点击Editor gt File and Code Templates 并在Fi
  • 关于示波器产生奇特波形的解释

    转发 https blog csdn net y511374875 article details 80583585
  • 让机器“看山是山”:脑启发的视觉计算

    编者按 人生之三境界的第一层 看山是山 看水是水 本质上展示了人 看见 的过程 以及思绪与理解在这一过程中所起的作用 看见 对于人类而言 似乎是一个很简单自然的事情 其实则不然 从地球上第一个长出眼睛的生物三叶虫 走到今天的人类视觉 经历了
  • office365 无法登录_office365、office2019微软账号无法登录如何解决?

    我相信很多人肯定被这个问题折磨得头大 因为微软服务器在国外的原因 所以部分设备很难登入 但是OneNote Office365 Ofice等软件如果是绑定了微软账号的 需要登入微软账号才可以激活和保存数据 日常帮助很多订阅客户处理过这个问题
  • 【数据结构】循环队列的实现(附带详细注释)

    前言 数据结构系列首页 是数据结构系列文章的首页 其中会逐步更新各种数据结构的实现 有兴趣的选手可以一看 首页中不仅有各种数据结构的实现 还有学习数据结构必备的基础知识 如果有选手觉得自己的基础不太牢固 可以先将搞定基础知识 之后再攻克数据
  • 剑指 Offer 68 - I. 二叉搜索树的最近公共祖先 -- 递归

    0 题目描述 leetcode原题链接 剑指 Offer 68 I 二叉搜索树的最近公共祖先 1 递归解法 终止条件 当 root 为空时 返回 None 当 p q 都在 root 的右子树中 则开启递归 root right 并返回 否
  • 企业大数据CDH集群安全----sentry

    Sentry安装 1 cm中选择添加服务 选择sentry 2 选择要安装sentry的主机 3 配置数据库 HDFS配置 开启启动访问控制列表 选中打勾 开启检查HDFS权限服务 开启sentry服务 hive配置 修改hive配置参数
  • 获取IronSource的广告源Pod和Maven版本

    接入IronSource库后 现在可以选择Maven或者Pod的形式导入相关广告源 Ironsource官网上有一个入口 可以方便的获取接入广告源的Maven和Pod Android https developers ironsrc com
  • Object.keys()、Object.values()、Object.entries()的用法

    一 Object keys obj 参数 要返回其枚举自身属性的对象 返回值 一个表示给定对象的所有可枚举属性的字符串数组 处理对象 返回可枚举的属性数组 let person name 张三 age 25 address 深圳 getNa
  • java参数校验常见注解介绍

    一 NotEmpty NotBlank NotNull区别介绍 NotEmpty 常用于集合 字符串等 不能为空 且长度必须大于0 NotBlank 用于字符串上 不能为空 且长度必须大于0 NotNull 字面意思 一般用于基本类型 不为
  • 聊聊编程是什么

    前言 前言不看没关系 不影响 半夜睡不着 想写点啥 浅聊下我理解的编程的 我认为编程就是解决问题 就像互联网是依附于实体业 是处理解决实际问题的 刚学编程的时候总是很恐慌的 天赋不够 我这么认为的原因 一是当时流行一种说法叫不是热爱编程的是
  • Mongodb数据库的安装部署及基本使用

    Mongodb数据库的安装部署及基本使用 一 Mongodb数据库介绍 1 Mongodb简介 2 Mongodb适用场景 3 MongoDB特性 二 检查本地系统环境 1 检查系统版本 2 检查yum仓库 三 Mongodb的安装 1 配