在Ubuntu22.04中安装MongoDB6.0(2024年1月版)

一、MongoDB简介

MongoDB是一个基于分布式文件存储的数据库,采用C++语言编写,旨在为Web应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产品,是目前非关系数据库当中功能最丰富、最像关系数据库的数据库。
传统的关系数据库一般由数据库(database)、表(table)和记录(record)3个层次概念组成,而MongoDB由数据库(database)、集合(collection)和文档对象(document)3个层次组成。MongoDB中的集合对应关系型数据库中的表,但是集合中没有列、行和关系概念,这体现了模式自由的特点。MongoDB与关系数据库的概念对比如表1所示。

二、安装MongoDB6.0

  1. 更新Ubuntu22.04的软件包
    在Ubuntu22.04系统中,首先运行系统更新命令,以重建从现有仓库创建的APT软件包缓存。给定的命令还将更新系统中安装的软件包。具体命令如下:

     
      
    1. sudo apt-get update

    language-shell

    还要安装一些其他必需的软件包,命令如下:

     
      
    1. sudo apt-get install gnupg curl

    language-shell

  2. 添加GPG密钥
    需要添加GPG密钥,系统将需要该密钥来检查我们在本文中要安装的MongoDB软件包的真实性。命令如下:

     
      
    1. curl -fsSL https://pgp.mongodb.com/server-6.0.asc | sudo gpg -o /etc/apt/trusted.gpg.d//mongodb-server-6.0.gpg --dearmor

    language-shell

  3. 在Ubuntu 22.04上添加MongoDB仓库
    MongoDB是一种流行的数据库系统,但安装它的软件包不能直接使用Ubuntu 22.04的默认系统仓库。因此,我们需要手动在Ubuntu 22.04 Linux上添加6.0版本的仓库。命令如下:

     
      
    1. echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list

    language-shell

    添加仓库后,使用以下命令更新APT索引缓存:

     
      
    1. sudo apt-get update

    language-shell

    4.安装libssl1.1
    MongoDB的安装需要依赖libssl1.1。可以使用如下3条命令安装:

     
      
    1. echo "deb http://security.ubuntu.com/ubuntu focal-security main" | sudo tee /etc/apt/sources.list.d/focal-security.list
    2. sudo apt-get update
    3. sudo apt-get install libssl1.1

    language-shell

    5.在Ubuntu 22.04上安装MongoDB 6.0
    我们的系统现在已经准备好安装MongoDB服务器及其其他工具,例如shell、mongosh等。在Ubuntu 22.04终端中运行以下命令:

     
      
    1. sudo apt-get install mongodb-org

    language-shell

    安装过程会出现提示,输入“Y”进行安装。
    6.启动MongoDB服务
    启动MongoDB服务并检查MongoDB服务状态,具体命令如下:

     
      
    1. sudo systemctl start mongod
    2. sudo systemctl status mongod

    language-shell


    7.进入MongoDB Shell
    再新建一个终端窗口,执行如下命令进入MongDB Shell交互式执行环境:

     
      
    1. mongosh

    language-shell


    可以输入如下命令退出MongoDB Shell模式:

     
      
    1. test> exit

    language-shell

    或者也可以直接按键盘的Ctrl+C组合键,退出Shell命令模式。

三、MongoDB基础操作

1. 常用操作命令

常用的操作MongoDB数据库的相关命令包括:
(1)show dbs:显示数据库列表;
(2)show collections:显示当前数据库中的集合(类似关系数据库中的表table);
(3)show users:显示所有用户;
(4)use yourDB:切换当前数据库至yourDB;
(5)db.help() :显示数据库操作命令;
(6)db.yourCollection.help() :显示集合操作命令,yourCollection是集合名;
MongoDB没有创建数据库的命令,如果要创建一个名称为“School”的数据库,需要先运行“use School”命令,之后做一些操作,比如,使用命令“db.createCollection('teacher')”创建集合,这样就可以创建一个名称为“School”的数据库。

2.简单操作演示

下面以一个School数据库为例进行操作演示,将在School数据库中创建两个集合teacher和student,并对student集合中的数据进行增、删、改、查等基本操作。需要说明的是,文档数据库中的集合(Collection),相当于关系型数据库中的表(table)。

(1)切换到School数据库

命令如下:

 
  1. use School

language-shell

注意,MongoDB无需预创建School数据库,在使用时会自动创建。

(2)创建集合

创建集合(Collection)的命令如下:

 
  1. db.createCollection('teacher')

language-shell

执行上述命令的屏幕截图如图9所示。
 


图9 创建集合
实际上,MongoDB在插入数据的时候,也会自动创建对应的集合,无需预定义集合。

(3)插入数据

插入数据的具体命令如下:

 
  1. db.student.insertOne({_id:1, sname: 'zhangsan', sage: 20}) #_id可选

language-shell

运行完以上命令,student已自动创建,这也说明MongoDB不需要预先定义集合(collection),在第一次插入数据后,集合会被自动创建。此时,可以使用“show collections”命令查询数据中当前已经存在的集合,如图10所示。
 


图10 show collections命令执行结果

(4)查找数据

查找数据所使用的基本命令格式如下:

 
  1. db.youCollection.find(criteria, filterDisplay)

language-shell

其中,criteria表示查询条件,是一个可选的参数;filterDisplay表示筛选显示部分数据,如显示指定某些列的数据,这也是一个可选的参数,但是,需要注意的是,当存在该参数时,第一个参数不可省略,若查询条件为空,可用{}做占位符。
(a)查询所有记录

 
  1. db.student.find()

language-shell

该命令相当于关系数据库的SQL 语句“select * from student”。
(b)查询sname='zhangsan'的记录

 
  1. db.student.find({sname: 'zhangsan'})

language-shell

该命令相当于关系数据库的SQL 语句“select * from student where sname='zhangsan'”。
(c)查询指定列sname、sage数据

 
  1. db.student.find({},{sname:1, sage:1})

language-shell

该命令相当于关系数据库的SQL 语句“select sname,sage from student”。其中,sname:1 表示返回sname列,默认_id字段也是返回的,可以添加_id:0 (意为不返回_id),写成{sname: 1, sage: 1,_id:0 },就不会返回默认的_id字段了。

(d)AND条件查询

 
  1. db.student.find({sname: 'zhangsan', sage: 20})

language-shell

该命令相当于关系数据库的SQL 语句“select * from student where sname = 'zhangsan' and sage = 20”。
(e)OR条件查询

 
  1. db.student.find({$or: [{sage: 20}, {sage: 25}]})

language-shell

该命令相当于关系数据库的SQL 语句“select * from student where sage = 22 or sage = 25”。

(5)修改数据

修改数据的基本命令格式如下:

 
  1. db.youCollection.updateOne(criteria, objNew, upsert, multi )

language-shell

对于该命令做如下说明:
(1)criteria:表示update的查询条件,类似sql update查询内where后面的条件;
(2)objNew : update的对象和一些更新的操作符(如$set)等,也可以理解为SQL语句中的update语句中的set后面的内容。
(3)upsert : 如果不存在update的记录,是否插入objNew,true表示插入,默认是false,表示不插入。
(4)multi: MongoDB默认是false,只更新找到的第一条记录,如果这个参数为true,就会把按条件查出来的多条记录全部更新。默认是false,只修改匹配到的第一条数据。
上面各个参数中,其中criteria和objNew是必选参数,upsert和multi可选参数。
这里给出一个实例,语句如下:

 
  1. db.student.updateOne({sname: 'zhangsan'}, {$set: {sage: 22}}, false, true)

language-shell

该命令相当于关系数据库的SQL 语句“update student set sage =22 where sname = 'zhangsan';”。执行该命令的屏幕截图如图11所示。
 


图11 修改数据

(6)删除数据

 
  1. db.student.deleteOne({sname: 'zhangsan'})

language-shell

该命令相当于关系数据库的SQL 语句“delete from student where sname='chenliu'”。
执行该命令过程的屏幕截图如图12所示。
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要在Ubuntu 22.04安装MongoDB,可以按照以下步骤进行操作: 1. 打开终端,输入以下命令以添加MongoDB的官方仓库: ``` wget -qO - https://www.mongodb.org/static/pgp/server-5..asc | sudo apt-key add - echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5. multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-5..list ``` 2. 更新软件包列表: ``` sudo apt-get update ``` 3. 安装MongoDB: ``` sudo apt-get install -y mongodb-org ``` 4. 启动MongoDB服务: ``` sudo systemctl start mongod ``` 5. 验证MongoDB是否已经成功安装: ``` mongo --eval 'db.runCommand({ connectionStatus: 1 })' ``` 如果成功安装,将会看到类似以下的输出: ``` MongoDB shell version v5..3 connecting to: mongodb://127...1:27017/?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("..."), "lsid" : { "id" : UUID("...") }, "name" : "..." } MongoDB server version: 5..3 { "authInfo" : { "authenticatedUsers" : [ ], "authenticatedUserRoles" : [ ] }, "ok" : 1, "$clusterTime" : { "clusterTime" : Timestamp(164053576, 1), "signature" : { "hash" : BinData(,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="), "keyId" : NumberLong() } }, "operationTime" : Timestamp(164053576, 1) } ``` 以上就是在Ubuntu 22.04安装MongoDB的步骤。 ### 回答2: Ubuntu22.04是一个新本的Ubuntu操作系统,它的安装方式与以往本基本相同。要在Ubuntu22.04安装mongodb,需要使用apt-get命令进行安装,在终端输入以下命令: sudo apt-get install mongodb 然后按照提示输入管理员密码,即可安装mongodb。在安装过程,会自动安装MongoDB的客户端和管理工具,同时会为MongoDB创建一个系统用户和组。 安装成功后,可以使用以下命令来启动MongoDB: sudo service mongodb start 要验证MongoDB是否已经成功安装和运行,可以运行以下命令: mongo 这样就可以进入MongoDB的交互式Shell,对MongoDB进行管理和操作。 在安装后,可以使用以下命令来停止MongoDB服务: sudo service mongodb stop 如果需要重新启动MongoDB服务,可以运行以下命令: sudo service mongodb restart 在安装MongoDB后,还可以通过修改配置文件来修改MongoDB的配置选项,比如数据目录、日志路径等等。配置文件的路径是/etc/mongodb.conf。 总之,在Ubuntu22.04安装MongoDB非常简单,只需使用apt-get命令即可完成安装安装完成后,可以使用MongoDB的各种客户端工具来对MongoDB数据库进行管理和操作,使得数据管理变得更加轻松便捷。 ### 回答3: 要在Ubuntu22.04安装MongoDB,需要按照以下步骤进行操作: 第一步,添加MongoDB软件源。在终端输入以下命令: ``` sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927 sudo echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list sudo apt update ``` 这个命令添加了MongoDB的官方软件源。 第二步,安装MongoDB。终端输入: ``` sudo apt-get install -y mongodb-org ``` 这个命令将会安装MongoDB以及相关的工具和驱动程序。 第三步,启动MongoDB服务。终端输入: ``` sudo systemctl start mongod ``` 这个命令将会启动MongoDB服务。 第四步,设置MongoDB服务在系统启动时自动启动。终端输入: ``` sudo systemctl enable mongod ``` 这个命令将会设置MongoDB服务在系统启动时自动启动。 现在,MongoDB已经在Ubuntu22.04上成功安装!可以使用mongo客户端来连接数据库了。输入以下命令连接MongoDB: ``` mongo ``` 这个命令将会连接到默认的MongoDB实例,并进入交互式shell。 这就是在Ubuntu22.04安装MongoDB的完整流程。需要注意的是,如果已经安装了其他本的MongoDB,需要卸载它们以防止本冲突。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值