当前位置: 首页 > news >正文

MongoDB的安装

MongoDB的安装

1、Windows下MongoDB的安装及配置

1.1 下载Mongodb安装包

下载地址:

https://www.mongodb.com/try/download

http://www.mongodb.org/dl/win32

MongoDB Windows系统64位下载地址:http://www.mongodb.org/dl/win32/x86_64

MongoDB Windows系统32位下载地址:http://www.mongodb.org/dl/win32/i386

1.2 安装MongoDB

下载后的安装包:mongodb-win32-x86_64-2008plus-3.4.24-signed.msi

安装比较简单,类似于普通软件,中间主要是选择用户自定义安装路径,然后不断下一步,安装至结束。

这里安装目录选择:C:\zsxsoftware

1.3 先创建数据库文件的存放位置

在 MongoDB 下创建 data,在 data 下再创建 db:C:\zsxsoftware\mongodb\data\db

在这里插入图片描述

因为启动 mongodb 服务之前需要必须创建数据库文件的存放文件夹,否则命令不会自动创建,而且不能启动成

功。

1.4 启动MongoDB服务

1、打开cmd命令行

2、进入C:\zsxsoftware\mongodb\bin目录

3、输入如下的命令启动mongodb服务:

$ mongod --dbpath C:\zsxsoftware\mongodb\data\db

在这里插入图片描述

4、在浏览器输入 http://localhost:27017(27017是mongodb的端口号) 查看,若显示:

在这里插入图片描述

则表示,连接成功。如果不成功,可以查看端口是否被占用。

但是在本地 windows 服务中,是没有配置上 mongodb 服务的,下面我们将 MongoDB 配置为服务。

1.5 配置本地windows mongodb 服务

这样可设置为开机自启动,可直接手动启动关闭,可通过命令行 net start MongoDB 启动,该配置会大大方

便。

1、先在 data 文件下创建一个新文件夹 log (用来存放日志文件)

在这里插入图片描述

2、在Mongodb新建配置文件 mongo.config

在这里插入图片描述

3、用记事本打开 mongo.config ,并输入:

dbpath=C:\zsxsoftware\mongodb\data\db
logpath=C:\zsxsoftware\mongodb\data\log\mongo.log

4、用管理员身份打开 cmd,跳转到 C:\zsxsoftware\mongodb\bin 目录下,输入:

$ mongod --config C:\zsxsoftware\mongodb\mongo.config --install --serviceName "MongoDB"

即根据刚创建的 mongo.config 配置文件安装服务,名称为 MongoDB。

在这里插入图片描述

完成后,再次查看本地的服务。

在这里插入图片描述

如果成功的话,会发现本地服务多了MongoDB服务。

5、服务的启动和关闭

启动 MongoDB 服务

$ net start MongoDB

在这里插入图片描述

关闭 MongoDB 服务

$ net stop MongoDB

在这里插入图片描述

移除 MongoDB 服务

C:\zsxsoftware\mongodb\bin\mongod.exe --remove

命令行下运行 MongoDB 服务器和配置 MongoDB 服务任选一个方式启动就可以。

1.6 MongoDB Compass

MongoDB Compass 是一个图形界面管理工具,我们可以在后面自己到官网下载安装,下载地址:

https://www.mongodb.com/download-center/compass

更多版本的下载:

https://github.com/mongodb-js/compass/releases

这里需要 MongoDB 的版本在 3.6 以上或者更高,否则 Compass 无法连接。

这里就不再介绍该软件的安装和使用。

1.7 MongoDB后台管理Shell

如果你需要进入 MongoDB 后台管理,你需要先打开 mongodb 装目录的下的bin目录,然后执行 mongo.exe 文

件,MongoDB Shell 是 MongoDB 自带的交互式 Javascript shell,用来对 MongoDB 进行操作和管理的交互式环

境。当你进入 mongoDB 后台后,它默认会链接到 test 文档(数据库):

C:\zsxsoftware\mongodb\bin>mongo
MongoDB shell version v3.4.24
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.24
Server has startup warnings:
2021-11-30T09:10:16.836+0800 I CONTROL  [initandlisten]
2021-11-30T09:10:16.836+0800 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2021-11-30T09:10:16.836+0800 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2021-11-30T09:10:16.836+0800 I CONTROL  [initandlisten]
>

由于它是一个JavaScript shell,您可以运行一些简单的算术运算:

> 2 + 2
4
>

db 命令用于查看当前操作的文档(数据库):

> db
test
>

插入一些简单的记录并查找它:

# 将数字10插入到runoob集合的x字段中
> db.runoob.insert({x:10})
WriteResult({ "nInserted" : 1 })
# 查找
> db.runoob.find()
{ "_id" : ObjectId("5604ff74a274a611b0c990aa"), "x" : 10 }
>

退出:

> exit
bye

2、Linux下MongoDB安装和配置详解

2.1 创建MongoDB的安装路径

/home/zhangshixing 创建文件夹 mongoDB

$ mkdir mongoDB

在这里插入图片描述

2.2 上传文件到Linux服务器上

1、在 https://www.mongodb.org/dl/linux 下载mongoDB对应版本的安装包

下载的安装包为:mongodb-linux-x86_64-3.4.24.tgz

2、通过工具上传到 linux 服务器上

在这里插入图片描述

2.3 解压文件

1、进入到/home/zhangshixing/mongoDB目录:

$ cd /home/zhangshixing/mongoDB

2、运行如下命令:

$ tar -zxvf mongodb-linux-x86_64-3.4.24.tgz

在这里插入图片描述

3、重命名

$ mv mongodb-linux-x86_64-3.4.24 mongodbserver

在这里插入图片描述

2.4 创建配置文件

1、创建数据库文件夹

$ cd /home/zhangshixing/mongoDB/mongodbserver
$ mkdir data

2、创建日志文件夹

$ cd /home/zhangshixing/mongoDB/mongodbserver
$ mkdir log

3、创建配置文件夹与配置文件

3.1 创建配置文件夹etc

$ cd /home/zhangshixing/mongoDB/mongodbserver
$ mkdir etc

在这里插入图片描述

3.2 创建配置文件mongodb.conf

$ cd /home/zhangshixing/mongoDB/mongodbserver/etc
$ vim mongodb.conf
dbpath=/home/zhangshixing/mongoDB/mongodbserver/data
logpath=/home/zhangshixing/mongoDB/mongodbserver/log/mongodb.log

2.5 启动MongoDB

1、mongodb安装好后第一次进入是不需要密码的,也没有任何用户,通过shell命令可直接进入,cd到mongodb

目录下的bin文件夹,执行命令./mongod即可,如下所示:

./mongod --config /home/zhangshixing/mongoDB/mongodbserver/etc/mongodb.conf

在这里插入图片描述

启动成功后,访问http://192.168.99.199:27017/ , 可以看到:

在这里插入图片描述

2、添加管理用户( mongoDB 没有无敌用户root,只有能管理用户的用户 userAdminAnyDatabase)

利用mongo命令连接mongoDB服务器端:

$ /home/zhangshixing/mongoDB/mongodbserver/bin
$ ./mongo

在这里插入图片描述

> use admin
switched to db admin
> db.createUser( {user: "pfnieadmin",pwd: "123456",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]});

在这里插入图片描述

注:添加完用户后可以使用show usersdb.system.users.find()查看已有用户。

在这里插入图片描述

在这里插入图片描述

3、添加完管理用户后,关闭MongoDB,并使用权限方式再次开启MongoDB,这里注意不要使用kill直接去杀掉

mongodb进程,(如果这样做了,请去data/db目录下删除mongo.lock文件),可以使用

db.shutdownServer()关闭。

在这里插入图片描述

4、使用权限方式启动MongoDB

在配置文件中添加:auth=true , 然后启动:

在这里插入图片描述

在这里插入图片描述

5、进入mongo shell,使用admin数据库并进行验证,如果不验证,是做不了任何操作的。

在这里插入图片描述

> use admin
> db.auth("pfnieadmin","123456")  #认证,返回1表示成功

在这里插入图片描述

2.6 将mongod路径添加到系统路径中,方便随处执行mongod命令

1、在/etc/profile文件中,添加

export PATH=$PATH:/home/zhangshixing/mongoDB/mongodbserver/bin

2、执行source /etc/profile,使系统环境变量立即生效

2.7 将mongo路径软链到/usr/bin路径下,方便随处执行mongo命令

执行命令: ln -s /home/zhangshixing/mongoDB/mongodbserver/bin/mongo /usr/bin/mongo

2.6 和 2.7 只需要执行一个即可。

2.8 测试是否方便随处执行mongo命令

1、回到任意路径下,执行mongo命令,连接mongod服务

在这里插入图片描述

2、关闭mongod服务,执行db.shutdownServer()

在这里插入图片描述

解决办法,执行下面的语句,添加权限:

db.updateUser("pfnieadmin",{roles : [{"role" : "userAdminAnyDatabase","db" : "admin"},{"role" : "dbOwner","db" : "admin"},                     {"role" : "clusterAdmin", "db": "admin"}]})

在这里插入图片描述

然后在执行db.shutdownServer()

在这里插入图片描述

或者执行下面的命令关闭:

$ killall mongod

3、启动mongod服务

mongod --config /home/zhangshixing/mongoDB/mongodbserver/etc/mongodb.conf

2.9 MongoDB设置为系统服务并且设置开机启动

1、通过上面简单的操作,我们已经将MongoDB配置文件配置完成,那么接下里我们将为MongoDB设置系统服

务。

2、首先添加MongoDB系统服务,命令如下:vim /etc/rc.d/init.d/mongod

3、打开编辑器后,我们将下面的配置粘贴进去,然后保存

start() {  
/home/zhangshixing/mongoDB/mongodbserver/bin/mongod  --config /home/zhangshixing/mongoDB/mongodbserver/etc/mongodb.conf 
}  stop() {  
/home/zhangshixing/mongoDB/mongodbserver/bin/mongod --config /home/zhangshixing/mongoDB/mongodbserver/etc/mongodb.conf --shutdown  
}  
case "$1" in  start)  start  ;;  stop)  stop  ;;  restart)  stop  start  ;;  *)  echo  
$"Usage: $0 {start|stop|restart}"  exit 1  
esac 

4、保存完成之后,添加脚本执行权限,命令如下:chmod +x /etc/rc.d/init.d/mongod

5、启动MongoDB,service mongod start 如下图所示,则说明启动成功:

在这里插入图片描述

6、可以使用命令service mongod stop关闭MongoDB服务。

在这里插入图片描述

7、验证mongoDB是否启动,输入命令lsof -i :27017,监测端口已经在使用中,所以说启动已经完成。

在这里插入图片描述

相关文章:

MongoDB的安装

MongoDB的安装 1、Windows下MongoDB的安装及配置 1.1 下载Mongodb安装包 下载地址: https://www.mongodb.com/try/download http://www.mongodb.org/dl/win32 MongoDB Windows系统64位下载地址:http://www.mongodb.org/dl/win32/x86_64 MongoDB W…...

SQL查询优化---如何查询截取分析

慢查询日志 1、慢查询日志是什么 MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。 具体指运行时间超过long_query_time值的…...

vue3基础流程

目录 1. 安装和创建项目 2. 项目结构 3. 主要文件解析 3.1 main.js 3.2 App.vue 4. 组件和Props 5. 事件处理 6. 生命周期钩子 7. Vue 3的Composition API 8. 总结和结论 响应式系统: 组件化: 易于学习: 灵活性: 社…...

Vue 数据绑定 和 数据渲染

目录 一、Vue快速入门 1.简介 : 2.MVVM : 3.准备工作 : 二、数据绑定 1.实例 : 2.验证 : 三、数据渲染 1.单向渲染 : 2.双向渲染 : 一、Vue快速入门 1.简介 : (1) Vue[/vju/],是Vue.js的简称,是一个前端框架,常用于构建前端用户…...

【原创】解决Kotlin无法使用@Slf4j注解的问题

前言 主要还是辟谣之前的网上的用法,当然也会给出最终的使用方法。这可是Kotlin,关Slf4j何事!? 辟谣内容:创建注解来解决这个问题 例如: Target(AnnotationTarget.CLASS) Retention(AnnotationRetentio…...

CDN是如何实现全球节点同步的

当谈到内容交付网络(Content Delivery Network,CDN)加速时,我们必须了解CDN是如何实现全球节点同步的。CDN是一种网络架构,通过将内容分发到全球各地的服务器节点,以降低用户访问网站或应用程序时的延迟和提…...

Centos7 Linux系统下生成https的crt和key证书

linux下生成https的crt和key证书 步骤如下: x509证书一般会用到三类文,key,csr,crt Key 是私用密钥openssl格,通常是rsa算法。 Csr 是证书请求文件,用于申请证书。在制作csr文件的时,必须使…...

性能测试工具——Jmeter的安装【超详细】

目录 1、性能测试工具:JMeter和LoadRunner对比 2、为什么学习JMeter? 3、JMeter环境搭建 3.1、安装JDK 3.2、下载安装JMeter 3.3、配置环境变量 2.4、启动验证JMeter是否安装成功 4、认识JMeter的目录结构 1)bin目录:存放…...

系列三十、Spring AOP vs AspectJ AOP

一、关系 &#xff08;1&#xff09;当在Spring中要使用Aspect、Before、After等注解时&#xff0c;需要添加AspectJ的相关依赖&#xff0c;如下 <dependency><groupId>cglib</groupId><artifactId>cglib</artifactId><version>3.1</…...

面向对象设计模式——策略模式

策略设计模式&#xff08;Strategy Pattern&#xff09;是一种行为型设计模式&#xff0c;它允许在运行时选择算法的行为。该模式定义了一系列算法&#xff0c;将每个算法封装到一个独立的类中&#xff0c;使它们可以相互替换。策略模式使算法独立于客户端而变化&#xff0c;客…...

Kubernetes - Ingress HTTP 负载搭建部署解决方案(新版本v1.21+)

在看这一篇之前&#xff0c;如果不了解 Ingress 在 K8s 当中的职责&#xff0c;建议看之前的一篇针对旧版本 Ingress 的部署搭建&#xff0c;在开头会提到它的一些简介Kubernetes - Ingress HTTP 负载搭建部署解决方案_放羊的牧码的博客-CSDN博客 开始表演 1、kubeasz 一键安装…...

刚刚:腾讯云3年轻量2核2G4M服务器优惠价格366元三年

腾讯云3年轻量2核2G4M服务器&#xff0c;2023双十一优惠价格366元三年&#xff0c;自带4M公网带宽&#xff0c;下载速度可达512KB/秒&#xff0c;300GB月流量&#xff0c;50GB SSD盘系统盘&#xff0c;腾讯云百科txybk.com分享腾讯云轻量2核2G4M服务器性能、优惠活动、购买条件…...

`include指令【FPGA】

案例&#xff1a; 在Verilog中&#xff0c;include指令可以将一个文件的内容插入到当前文件中。 这个指令通常用于将一些常用的代码片段或者模块定义放在单独的文件中&#xff0c; 然后在需要使用的地方通过include指令将其插入到当前文件中。 这样可以提高代码的复用性和可维…...

iphone备份后怎么转到新手机,iphone备份在哪里查看

iphone备份会备份哪些东西&#xff1f;iphone可根据需要备份设备数据、应用数据、苹果系统等。根据不同的备份数据&#xff0c;可备份的数据类型不同&#xff0c;有些工具可整机备份&#xff0c;有些工具可单项数据备份。本文会详细讲解苹果手机备份可以备份哪些东西。 一、ip…...

JAVA毕业设计106—基于Java+Springboot的外卖系统(源码+数据库)

基于JavaSpringboot的外卖系统(源码数据库)106 一、系统介绍 本系统分为用户端和管理端角色 前台用户功能&#xff1a; 登录、菜品浏览&#xff0c;口味选择&#xff0c;加入购物车&#xff0c;地址管理&#xff0c;提交订单。 管理后台&#xff1a; 登录&#xff0c;员工管…...

SpringCore完整学习教程4,入门级别

本章从第4章开始 4. Logging Spring Boot使用Commons Logging进行所有内部日志记录&#xff0c;但保留底层日志实现开放。为Java Util Logging、Log4J2和Logback提供了默认配置。在每种情况下&#xff0c;记录器都预先配置为使用控制台输出和可选的文件输出。 默认情况下&…...

如何能在项目具体编码实现之前能尽可能早的发现问题并解决问题

在项目的具体编码实现之前尽可能早地发现并解决问题&#xff0c;可以大大节省时间和资源&#xff0c;提高项目的成功率。以下是一些策略和方法&#xff1a; 1. 明确需求和预期&#xff1a; 确保所有的项目需求都是清晰和明确的。需求模糊不清是项目失败的常见原因之一。与利益…...

Windows server服务器允许多用户远程的设置

在Windows Server上允许多用户同时进行远程桌面连接&#xff0c;您需要配置远程桌面服务以支持多用户并确保许可证和授权允许多用户连接。以下是在Windows Server上允许多用户远程桌面连接的步骤&#xff1a; 注意&#xff1a;这些步骤适用于 Windows Server 2012、Windows Ser…...

Vmware下的虚拟机NAT连接后仍然木有网络

问题描述 出现在主机能ping通&#xff0c;互联网ping不通的情况。 废话 假设已经设置了网络配置文件IPADDR。 那么&#xff0c;NAT后可以访问互联网的前提是&#xff1a;这个IPADDR的网段在Vmware软件设置的网段内。 解决 在Vmware虚拟网络设置选项卡中&#xff0c;进NAT配…...

2.Vue — 模板语法、数据绑定、el与data的写法、数据代理

文章目录 一、模板语法1.1 插值语法1.2指令语法 二、数据绑定语法2.1 单向数据绑定2.2 双向数据绑定 三、el与data的两种写法3.1 el3.2 data 四、数据代理4.1 Object.defineProperty4.2 Vue数据代理4.2.1 展示数据代理4.2.2 Vue数据代理 一、模板语法 root容器里面的代码被称为…...

python打卡day49

知识点回顾&#xff1a; 通道注意力模块复习空间注意力模块CBAM的定义 作业&#xff1a;尝试对今天的模型检查参数数目&#xff0c;并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...

3.3.1_1 检错编码(奇偶校验码)

从这节课开始&#xff0c;我们会探讨数据链路层的差错控制功能&#xff0c;差错控制功能的主要目标是要发现并且解决一个帧内部的位错误&#xff0c;我们需要使用特殊的编码技术去发现帧内部的位错误&#xff0c;当我们发现位错误之后&#xff0c;通常来说有两种解决方案。第一…...

微信小程序 - 手机震动

一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注&#xff1a;文档 https://developers.weixin.qq…...

将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?

Otsu 是一种自动阈值化方法&#xff0c;用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理&#xff0c;能够自动确定一个阈值&#xff0c;将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

Java多线程实现之Callable接口深度解析

Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...

Python爬虫(一):爬虫伪装

一、网站防爬机制概述 在当今互联网环境中&#xff0c;具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类&#xff1a; 身份验证机制&#xff1a;直接将未经授权的爬虫阻挡在外反爬技术体系&#xff1a;通过各种技术手段增加爬虫获取数据的难度…...

【论文阅读28】-CNN-BiLSTM-Attention-(2024)

本文把滑坡位移序列拆开、筛优质因子&#xff0c;再用 CNN-BiLSTM-Attention 来动态预测每个子序列&#xff0c;最后重构出总位移&#xff0c;预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵&#xff08;S…...

Swagger和OpenApi的前世今生

Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章&#xff0c;二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑&#xff1a; &#x1f504; 一、起源与初创期&#xff1a;Swagger的诞生&#xff08;2010-2014&#xff09; 核心…...

C# 求圆面积的程序(Program to find area of a circle)

给定半径r&#xff0c;求圆的面积。圆的面积应精确到小数点后5位。 例子&#xff1a; 输入&#xff1a;r 5 输出&#xff1a;78.53982 解释&#xff1a;由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982&#xff0c;因为我们只保留小数点后 5 位数字。 输…...

2025季度云服务器排行榜

在全球云服务器市场&#xff0c;各厂商的排名和地位并非一成不变&#xff0c;而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势&#xff0c;对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析&#xff1a; 一、全球“三巨头”…...