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

管理类联考——数学——汇总篇——知识点突破——数据分析——记忆

文章目录 考点记忆/考点汇总——按大纲 整体目录大纲法记忆宫殿法绘图记忆法 局部数字编码法对号不对号 归类记忆法重点记忆法歌决记忆法口诀&#xff1a;加法分类&#xff0c;类类相加&#xff1b;乘法分步&#xff0c;步步相乘。 谐音记忆法涂色 理解记忆法比较记忆法转图像记…...

springboot+mybatis-plus实现读写分离

shigen坚持日更的博客写手&#xff0c;擅长Java、python、vue、shell等编程语言和各种应用程序、脚本的开发。坚持记录和分享从业两年以来的技术积累和思考&#xff0c;不断沉淀和成长。 最近shigen加班也比较严重&#xff0c;很多天文章没有更新了&#xff0c;各位读者和伙伴见…...

java将list转为逗号隔开字符串,将逗号连接的字符串转成字符数组,​将逗号分隔的字符串转换为List​(Java逗号分隔-字符串与数组相互转换)

一、通过testList.stream().collect(Collectors.joining(",")) &#xff0c;通过流转换&#xff0c;将list转为逗号隔开字符串 List<String> testList new ArrayList<>(); testList.add("test1"); testList.add("test2"); testList…...

2023高频前端面试题-CSS

1. CSS 选择器的优先级是怎么样的&#xff1f; CSS 选择器的优先级顺序&#xff1a; 内联样式 > ID选择器 > 类选择器 > 标签选择器 优先级的计算&#xff1a; 优先级是由 A、B、C、D 四个值来决定的&#xff0c;具体计算规则如下 A{如果存在内联样式则为 1&…...

我会在以下情况用到GPT

ChatGPT可以在各种情况下派上用场&#xff0c;包括但不限于以下情况&#xff1a; 获取信息&#xff1a;你可以使用ChatGPT来获取关于各种主题的信息&#xff0c;例如历史事件、科学知识、文化背景等。ChatGPT可以用作一个知识库&#xff0c;回答你的问题。 学习新知识&#xf…...

33:深入浅出x86中断机制

背景 我们知道使用0x10号中断&#xff0c;可以在屏幕上打印一个字符。 问题 系统中的 中断 究竟是什么&#xff1f; 生活中的例子 来看一个生活中例子&#xff1a; 小狄的工作方式 在处理紧急事务的时候&#xff0c;不回应同事的技术求助。老板的召唤必须回应&#xff0c;…...

docker docker-compose安装(centos7)

docker安装 1.卸载旧版 卸载旧版 yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine2.安装一个yum工具 yum install -y yum-utils3.配置docker的yum源 yum-config-manager -…...

Dockerfile文件详细教程

写在前面 Dockerfile是用来构建镜像的&#xff0c;他实际上就是把在linux下的命令操作写到了Dockerfile中&#xff0c;通过Dockerfile去执行设置好的操作命令&#xff0c;保证通过Dockerfile的构建镜像是一致的。 实战分析 该例子来自于 chromium 项目 主要干的事情&#xf…...

机器学习-模型评估与选择

文章目录 评估方法留出法交叉验证自助法 性能的衡量回归问题分类问题查准率、查全率与F1ROC与AUC 在机器学习中&#xff0c;我们通常面临两个主要问题&#xff1a;欠拟合和过拟合。欠拟合指模型无法在训练数据上获得足够低的误差&#xff0c;通常是因为模型太简单&#xff0c;无…...

分享一下办公自动化常用的思想

目录 网页获取数据需求①大体思路&#xff1a;PythonseleniumXpath 网页获取数据需求②大体思路&#xff1a;requests爬虫 批量生成需求①文件的移动、重命名②word、Excel批量生成 匹配需求 网页获取数据需求① 大体思路&#xff1a;PythonseleniumXpath 我们在利用Python做…...