MongoDB在Linux下的安装与基本操作指南

MongoDB是一款高性能、开源的NoSQL数据库系统,特别适合处理大规模数据存储应用。本文将详细介绍MongoDB在Linux系统(以Ubuntu为例)上的安装步骤,以及如何进行基本的数据库操作,帮助你快速上手MongoDB。

一、在Linux上安装MongoDB

1.1 添加MongoDB仓库

首先,我们需要添加MongoDB的APT仓库到Ubuntu系统中。

Bash

深色版本

复制代码
1sudo apt-get update
2sudo apt-get install -y gnupg
3sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
4echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list

注意:以上命令使用的是MongoDB 3.6版本的仓库。如果你想安装其他版本,你需要修改仓库地址中的版本号。

1.2 更新系统包列表

使用下面的命令来更新你的系统包列表:

Bash

深色版本

复制代码
1sudo apt-get update

1.3 安装MongoDB

接下来,使用以下命令来安装MongoDB:

Bash

深色版本

复制代码
1sudo apt-get install -y mongodb-org

1.4 启动MongoDB服务

安装完成后,启动MongoDB服务:

Bash

深色版本

复制代码
1sudo systemctl start mongod

1.5 设置MongoDB开机自启

为了让MongoDB在系统启动时自动启动,执行:

Bash

深色版本

复制代码
1sudo systemctl enable mongod

1.6 验证MongoDB服务状态

使用以下命令检查MongoDB服务是否正在运行:

Bash

深色版本

复制代码
1sudo systemctl status mongod

如果一切正常,你将看到MongoDB服务正在运行的信息。

二、MongoDB基本操作

2.1 连接到MongoDB

MongoDB默认监听在本地的27017端口。在命令行中,使用以下命令连接到MongoDB:

Bash

深色版本

复制代码
1mongo

2.2 显示所有数据库

一旦连接到MongoDB,你可以使用show dbs命令来查看当前系统中所有的数据库:

Bash

深色版本

复制代码
1show dbs

2.3 创建数据库

MongoDB采用"创建即使用"的方式来创建数据库,当你在一个尚未存在的数据库上执行插入、更新或查询操作时,MongoDB会自动创建该数据库。例如,创建一个名为test的数据库:

Bash

深色版本

复制代码
1use test

2.4 插入文档

在MongoDB中,数据是以文档的形式存储的,文档由字段和值组成。插入一条文档到test数据库的users集合中:

Bash

深色版本

复制代码
1db.users.insert({ name: "John Doe", age: 30 })

2.5 查询文档

查询users集合中所有的文档:

Bash

深色版本

复制代码
1db.users.find()

查询年龄为30的用户:

Bash

深色版本

复制代码
1db.users.find({ age: 30 })

2.6 更新文档

更新users集合中名字为John Doe的用户的年龄:

Bash

深色版本

复制代码
1db.users.update({ name: "John Doe" }, { $set: { age: 31 } })

2.7 删除文档

删除users集合中名字为John Doe的用户:

Bash

深色版本

复制代码
1db.users.remove({ name: "John Doe" })

2.8 删除数据库

删除test数据库:

Bash

深色版本

复制代码
1db.dropDatabase()

三、结束语

通过本文,你已经学会了如何在Linux环境下安装MongoDB,以及如何进行基本的数据库操作。MongoDB提供了丰富的功能和灵活的数据模型,非常适合处理大规模的、非结构化或半结构化的数据。随着对MongoDB的深入学习,你将能够充分利用其优势,为你的项目带来更高的性能和可靠性。

相关推荐
l1t9 小时前
DeepSeek总结的DuckDB 2.0.0 中的隐藏亮点
大数据·数据库·duckdb
~城南花已开~10 小时前
Redfish 事件接收服务搭建指南(Ubuntu Server 实测)
linux·服务器·python·ubuntu
程序员塔塔喵10 小时前
【MySQL篇|第八篇】索引底层实现
数据库·mysql·adb·索引
倔强的石头10610 小时前
【Linux指南】进程通信系列(四):命名管道 FIFO —— 让陌生进程按名字见面
linux·服务器·网络
段一凡-华北理工大学10 小时前
高炉能源系统智能化:热风炉、煤气与极致能效~系列文章03:热风炉烧炉与风温的决定因素
大数据·linux·人工智能·能源·热风炉·高炉能源优化
_小许_10 小时前
Linux 常用命令速查:CentOS 与 Ubuntu 双线对照
linux·ubuntu·centos
updayday85410 小时前
电脑换了硬盘、加了内存,资产台账却没更新 - Ping64 硬件资产管理
大数据·网络·数据库·安全·智能路由器
hhhjhl10 小时前
mime-types 跨端三方库仓颉适配全流程
数据库
广州智造10 小时前
Radioss中破坏模型FAILTAB1的详细介绍
数据库·人工智能·算法·机器学习·仿真软件·radioss
李兆龙的博客10 小时前
从一到无穷大 #101:SSD 的工作原理——从 NAND 到数据库读写
数据库·ssd·存储