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,监测端口已经在使用中,所以说启动已经完成。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/172365.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【安装tensorflow-CPU版本】

一、安装目的二、安装过程三、总结 一、安装目的 使自己的jupyter能用tensorflow 二、安装过程 首先打开anaconda prompt 接着输入conda list 查看自己是否安装了tensorflow 在 Python 中使用 pip 工具来升级 pip 自身并指定了使用清华大学的镜像源进行安装 python -m pip …

电脑报错由于找不到vcruntime140.dll文件怎么修复

VCruntime140.dll是一个重要的动态链接库文件,它对于许多应用程序的运行起着关键作用。如果计算机中丢失了这个文件,可能会导致一些程序无法正常启动或运行,从而影响到用户的正常使用。在本文中,我们将详细介绍vcruntime140.dll文…

Vue进阶(幺陆玖)项目部署后IE报 SCRIPT1002:语法错误 解决方案探讨

文章目录 一、前言二、组件懒加载2.1 什么是懒加载2.2 如何实现懒加载 三、延伸阅读 软件程序唤醒3.1 protocolCheck 实现3.2 自定义实现 四、拓展阅读 一、前言 Vue项目改造升级后,原本本地热部署后IE可正常打开的项目出现页面白屏且控制台给出SCRIPT1002:语法错误…

TensorFlow图像多标签分类实例

接下来,我们将从零开始讲解一个基于TensorFlow的图像多标签分类实例,这里以图片验证码为例进行讲解。 在我们访问某个网站的时候,经常会遇到图片验证码。图片验证码的主要目的是区分爬虫程序和人类,并将爬虫程序阻挡在外。 下面…

【微信小程序】实现投票功能(附源码)

一、Vant Weapp介绍 Vant Weapp 是一个基于微信小程序的组件库,它提供了丰富的 UI 组件和交互功能,能够帮助开发者快速构建出现代化的小程序应用。Vant Weapp 的设计理念注重简洁、易用和高效,同时提供灵活的定制化选项,以满足开发…

如何使用gpt提高效率

如何使用gpt提高效率 自动化替代人力工作减少创意工作需求技术依赖风险实际应用领域内容生成自动回答问题自动化编程个性化推荐 博主 默语带您 Go to New World. ✍ 个人主页—— 默语 的博客👦🏻 《java 面试题大全》 🍩惟余辈才疏学浅&…

[量化投资-学习笔记002]Python+TDengine从零开始搭建量化分析平台-MA均线的多种实现方式

MA 均线时最基本的技术指标,也是最简单,最不常用的(通常使用EMA、SMA)。 以下用两种不同的计算方法和两种不同的画图方法进行展示和说明。 MA 均线指标公式 MA (N)(C1 C2 C3 …C N )/N目录 方式一1.SQL 直接查询均值2.使用 pyp…

Unity游戏开发中打造游戏攻击技能架构与设计

一、技能系统的设计 在 MOBA 游戏中,每个英雄角色都会有多个技能,这些技能可以分为普通攻击和技能攻击两种。普通攻击是英雄角色的基本攻击方式,而技能攻击则需要消耗一定的资源(如蓝量)才能使用。在设计技能系统时&a…

TensorFlow学习:使用官方模型和自己的训练数据进行图片分类

前言 教程来源:清华大佬重讲机器视觉!TensorFlowOpencv:深度学习机器视觉图像处理实战教程,物体检测/缺陷检测/图像识别 注: 这个教程与官网教程有些区别,教程里的api比较旧,核心思想是没有变…

GoLong的学习之路(八)语法之Map

文章目录 Map初始化方式判断某个键是否存在map的遍历对value值遍历。对key值遍历 使用delete()函数删除键值对按照指定顺序遍历map元素为map的切片值为切片类型的map 做个题吧 Map 哈希表是一种巧妙并且实用的数据结构。它是一个无序的key/value对的集合,其中所有的…

Python环境下LaTeX数学公式转图像方案调研与探讨

目录 引言方案一:基于LaTeX环境方案二:基于KaTeX(推荐) 方案三:基于Matplotlib写在最后 引言 近来,涉及到一些公式识别的项目,输入是公式的图像,输出是LaTeX格式的数学公式字符串。 这类项目一般都采用深…

Powershell脚本自动备份dhcp数据库

文章目录 为什么要备份DHCP数据库呢?在PowerShell中自动备份DHCP数据库1,创建备份目录2,判断备份路径是否存在3,备份DHCP数据库4,完整自动备份脚本5,安排定期备份 推荐阅读 为什么要备份DHCP数据库呢&#…

国密 SM2 SSL 证书 Nginx 安装指南 linux版

一、获取国密证书 1、在您完成申请西部GDCA服务器证书的流程后,下载证书将获取一个证书包,有以下 *.***.com_sign.crt:签名证书 *.***.com_sign.key:签名证书私钥 *.***.com_encrypt.crt:加密证书 *.***.com_encr…

基于鸡群算法的无人机航迹规划-附代码

基于鸡群算法的无人机航迹规划 文章目录 基于鸡群算法的无人机航迹规划1.鸡群搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要:本文主要介绍利用鸡群算法来优化无人机航迹规划。 1.鸡群搜索算法 …

红队专题-从零开始VC++C/S远程控制软件RAT-MFC-远控介绍及界面编写

红队专题 招募六边形战士队员[1]远控介绍及界面编写1.远程控制软件演示及教程简要说明主程序可执行程序 服务端生成器主机上线服务端程序 和 服务文件管理CMD进程服务自启动主程序主对话框操作菜单列表框配置信息 多线程操作非模式对话框 2.环境:3.界面编程新建项目…

JavaScript_Pig Game切换当前玩家

const current0El document.getElementById(current--0); const current1El document.getElementById(current--1); if (dice ! 1) {currentScore dice;current0El.textContent currentScore;} else {} });这是我们上个文章写的代码,这个代码明显是有问题的&…

[量化投资-学习笔记003]Python+TDengine从零开始搭建量化分析平台-Grafana画K线图

在前面两个笔记: PythonTDengine从零开始搭建量化分析平台-数据存储 PythonTDengine从零开始搭建量化分析平台-MA均线的多种实现方式 中有提到使用 Grafana 画图,不过画的都是均线。除了均线,Grafana 非常人性的提供了 K线图模块 搭配 TDeng…

VScode 调试 linux内核

VScode 调试 linux内核 这里调试的 linux 内核是通过 LinuxSD卡(rootfs)运行的内核 gdb 命令行调试 编辑 /home/tyustli/.gdbinit 文件,参考 【GDB】 .gdbinit 文件 set auto-load safe-path /home/tyustli/code/open_source/kernel/linux-6.5.7/.gdbinit在 lin…

Cross Site Scripting (XSS)

攻击者会给网站发送可疑的脚本,可以获取浏览器保存的网站cookie, session tokens, 或者其他敏感的信息,甚至可以重写HTML页面的内容。 背景 XSS漏洞有不同类型,最开始发现的是存储型XSS和反射型XSS,2005,Am…

Linux中shell脚本中的运算

目录 一、运算符号 二、运算指令 三、练习 一、运算符号 加法-减法*乘法/除法%除法后的余数**乘方自加一--自减一 <小于<小于等于>大于>大于等于等于ji&#xff0c;jji*jj*i/jj/i%jj%i 二、运算指令 (()) ##((a12)) let ##let a12 expr ##expr 1 2 …