MongoDB基本操作

redis简介

键值对存储数据库是NoSQL数据库的一种类型,也是最简单的NoSQL数据库。顾名思义,键值对存储数据库中的数据是以键值对的形式来存储的。常见的键值对存储数据库有Redis、Tokyo Cabinet/Tyrant、Voldemort以及Oracle BDB数据库。
Remote Dictionary Server,简称Redis,即远程字典服务器,它是一个开源的、高性能的、基于键值对的缓存与存储数据库,并且通过提供多种键值数据结构来适应不同场景下的缓存与存储需求。Redis数据库是基于ANSI C语言编写开发的,并且提供了多种语言API,例如Java、C/C++、C#、PHP、JavaScript、Perl、Python及Ruby等语言。

Redis数据库提供了多种数据结构,其中最常见的数据结构有String(字符串)、List(列表)、Set(集合)、Hash(散列)、Sorted Sets(有序集合)。

Redis是一个开源、跨平台的数据库,因此Redis数据库可以运行在Windows、Linux、Mac OS和BSD(Unix的衍生系统)等多个平台上,为我们提供数据库服务。不同的操作系统平台,部署Redis也会有所不同。
由于Redis官方不支持Windows平台,因此我们无法在Redis官网下载Redis安装包,但是,微软开发并维护了针对Win64的Windows版本。

1.下载

下载链接:https://github.com/microsoftarchive/redis/tags

选择要下载的版本,本教程下载的是win-3.2.504版本。msi为安装包,需要安装,zip为压缩包,不需要安装,只需要解压。本教程选择zip压缩包。Source code (tar.gz)是linux系统下的源码包,所以这里选择下载Source code (.zip)。

2:解压

加压后的redis包含5个redis可执行程序和一个核心配置文件。

可执行程序相关说明
redis.windows.confredis核心配置文件
redis-benchmark.exeredis性能测试工具
redis-check-aof.exeredis修复AOF文件工具
redis-check-dump.exeredis检测RDB文件(快照持久化文件)工具
redis-cli.exeredis命令行客户端
redis-server.exeredis服务器启动命令

3:启动redis服务

在redis目录下打开命令行窗口,即进入redis目录,在目录栏中输入cmd,按下回车键即可。

在命令行窗口中,输入:redis-server.exe redis.windows.conf ,启动redis服务。若是命令行窗口出现端口号6379则说明启动成功,否则失败。

redis服务默认监听的端口号为6379,因此我们成功启动了redis服务。若要关闭服务,只需要关闭命令行窗口即可。
4:启动redis客户端

至此,我们Redis安装部署(基于windows平台)就完成了。

 

MongoDB的基本操作可以大致分为以下几个方面:数据库操作、集合操作、文档操作。以下是针对这些方面的详细解答:

一、数据库操作

1. 创建数据库
  • 使用use 数据库名命令来创建或切换到指定数据库。如果数据库不存在,MongoDB会在需要时创建它。
2. 查看所有数据库
  • 使用show dbs命令来查看当前MongoDB中的所有数据库。注意,新创建的数据库不会立即显示在show dbs的结果中,除非在该数据库中至少插入了一个文档。
3. 删除数据库
  • 使用db.dropDatabase()函数来删除当前所在的数据库。执行此操作前,请确保已切换到要删除的数据库。

二、集合操作

1. 创建集合
  • MongoDB中的集合是文档的集合,类似于关系型数据库中的表。在MongoDB中,集合是隐式创建的,即当你向一个不存在的集合中插入文档时,MongoDB会自动创建该集合。
  • 如果你想显式地创建集合,可以使用db.createCollection(name, options)函数。其中,name是集合的名称,options是可选参数,用于指定集合的选项,如是否固定大小、最大文档数等。
2. 删除集合
  • 使用db.collection.drop()函数来删除指定集合。执行此操作前,请确保已切换到包含该集合的数据库。

三、文档操作

1. 插入文档
  • 使用db.collection.insert({document})db.collection.insertOne({document})命令来插入单个文档。其中,collection是集合的名称,document是要插入的文档。
  • 如果你想插入多个文档,可以使用db.collection.insertMany([{document1}, {document2}, ...])命令。
2. 查询文档
  • 使用db.collection.find()命令来查询文档。find()方法可以接受一个查询条件作为参数,并返回满足条件的文档。
  • 如果你只想返回满足条件的第一个文档,可以使用db.collection.findOne()命令。
  • 使用pretty()方法可以将查询结果以更易读的格式输出。例如,db.collection.find().pretty()
3. 更新文档
  • 使用db.collection.updateOne()db.collection.updateMany()db.collection.replaceOne()命令来更新文档。这些命令都需要指定一个查询条件和一个更新文档。
4. 删除文档
  • 使用db.collection.deleteOne()db.collection.deleteMany()命令来删除文档。这些命令都需要指定一个查询条件来确定要删除的文档。

四、其他注意事项

  • MongoDB中的文档使用BSON(Binary JSON)格式存储,它支持嵌套文档和数组。
  • MongoDB中的集合和文档都不需要预先定义模式,即它们是模式自由的。
  • MongoDB支持索引,以提高查询性能。你可以使用db.collection.createIndex()命令来创建索引。
  • MongoDB的查询语言非常强大,支持各种条件查询、排序、限制返回结果数量等操作。

mongodb基本操作代码详细讲解

MongoDB的基本操作步骤主要包括连接到MongoDB服务器、选择数据库、操作集合(即类似于关系型数据库中的表)以及在这些集合中插入、查询、更新和删除文档(即记录)。下面我会详细解释每个步骤,并提供相应的代码示例。

1. 连接到MongoDB服务器

如果你正在使用MongoDB shell,通常你不需要显式地连接到服务器,因为它默认会连接到本地的MongoDB实例。但是,如果你需要连接到远程服务器或指定其他参数,你可以使用mongo命令并带上相应的连接字符串。

例如,连接到远程MongoDB服务器:

mongo --host hostname --port port --username username --password password --authenticationDatabase admin

在MongoDB shell内部,你不需要任何代码来保持连接。

2. 选择数据库

在MongoDB中,使用use命令来选择数据库。如果数据库不存在,MongoDB会在需要时创建它。

use myDatabase;

3. 操作集合

在MongoDB中,你不需要显式地创建集合。当你向一个不存在的集合中插入文档时,MongoDB会自动创建该集合。

插入文档

使用insertOneinsertMany方法来插入文档。

// 插入一个文档  
db.myCollection.insertOne({ name: "Alice", age: 30, city: "New York" });  
  
// 插入多个文档  
db.myCollection.insertMany([  
  { name: "Bob", age: 25, city: "Los Angeles" },  
  { name: "Charlie", age: 35, city: "Chicago" }  
]);
查询文档

使用find方法来查询文档。

// 查询所有文档  
db.myCollection.find().pretty();  
  
// 带条件的查询  
db.myCollection.find({ age: { $gt: 25 } }).pretty(); // 年龄大于25的文档  
  
// 查询并限制返回结果数量  
db.myCollection.find().limit(1).pretty(); // 只返回一个文档  
  
// 查询并排序结果  
db.myCollection.find().sort({ age: -1 }).pretty(); // 按年龄降序排序
更新文档

使用updateOneupdateManyreplaceOne方法来更新文档。

// 更新一个文档(将Alice的年龄更新为31)  
db.myCollection.updateOne({ name: "Alice" }, { $set: { age: 31 } });  
  
// 更新多个文档(将所有年龄大于25的文档的城市更新为"San Francisco")  
db.myCollection.updateMany({ age: { $gt: 25 } }, { $set: { city: "San Francisco" } });
删除文档

使用deleteOnedeleteMany方法来删除文档。

// 删除一个文档(删除名字为Bob的文档)  
db.myCollection.deleteOne({ name: "Bob" });  
  
// 删除多个文档(删除所有年龄大于30的文档)  
db.myCollection.deleteMany({ age: { $gt: 30 } });

4. 退出MongoDB shell

在MongoDB shell中,你可以使用exitquit命令来退出。

exit

或者

quit()

以上就是在MongoDB中进行基本操作的详细步骤和代码示例。希望这能帮助你更好地理解和使用MongoDB。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值