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的深入学习,你将能够充分利用其优势,为你的项目带来更高的性能和可靠性。

相关推荐
Leo.yuan13 分钟前
数据量大Excel卡顿严重?选对报表工具提高10倍效率
数据库·数据分析·数据可视化·powerbi
Runing_WoNiu22 分钟前
MySQL与Oracle对比及区别
数据库·mysql·oracle
天道有情战天下43 分钟前
mysql锁机制详解
数据库·mysql
看山还是山,看水还是。1 小时前
Redis 配置
运维·数据库·redis·安全·缓存·测试覆盖率
谷新龙0011 小时前
Redis运行时的10大重要指标
数据库·redis·缓存
CodingBrother1 小时前
MySQL 中单列索引与联合索引分析
数据库·mysql
精进攻城狮@1 小时前
Redis缓存雪崩、缓存击穿、缓存穿透
数据库·redis·缓存
小酋仍在学习1 小时前
光驱验证 MD5 校验和
数据库·postgresql
keep__go1 小时前
Linux 批量配置互信
linux·运维·服务器·数据库·shell
矛取矛求1 小时前
Linux中给普通账户一次性提权
linux·运维·服务器