当前位置: 首页 > 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容器里面的代码被称为…...

网络编程(Modbus进阶)

思维导图 Modbus RTU&#xff08;先学一点理论&#xff09; 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议&#xff0c;由 Modicon 公司&#xff08;现施耐德电气&#xff09;于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API&#xff0c;用于在函数组件中使用 state 和其他 React 特性&#xff08;例如生命周期方法、context 等&#xff09;。Hooks 通过简洁的函数接口&#xff0c;解决了状态与 UI 的高度解耦&#xff0c;通过函数式编程范式实现更灵活 Rea…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?

在建筑行业&#xff0c;项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升&#xff0c;传统的管理模式已经难以满足现代工程的需求。过去&#xff0c;许多企业依赖手工记录、口头沟通和分散的信息管理&#xff0c;导致效率低下、成本失控、风险频发。例如&#…...

在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module

1、为什么要修改 CONNECT 报文&#xff1f; 多租户隔离&#xff1a;自动为接入设备追加租户前缀&#xff0c;后端按 ClientID 拆分队列。零代码鉴权&#xff1a;将入站用户名替换为 OAuth Access-Token&#xff0c;后端 Broker 统一校验。灰度发布&#xff1a;根据 IP/地理位写…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 &#xff08;忘了有没有这步了 估计有&#xff09; 刷机程序 和 镜像 就不提供了。要刷的时…...

linux 错误码总结

1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...

ElasticSearch搜索引擎之倒排索引及其底层算法

文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...

OpenLayers 分屏对比(地图联动)

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能&#xff0c;和卷帘图层不一样的是&#xff0c;分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...

Python Ovito统计金刚石结构数量

大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...