MongoDB数据库-安装与配置

下载准备

MongoDB官方下载地址

写在前面

这里,我将介绍Windows版和Linux版的搭建过程。

{% button #Windows版安装, Windows版 %}

{% button #Linux版安装, Linux版 %}

Windows版

  1. 运行mongodb-windows-x86_64-4.4.2-signed.msi进行安装(本文默认解压到了 C:\MongoDB\Server\4.2)。

    安装比较容易,但有一个关键是,不要安装MongoDB Compass,这是MongoDB的官方图形用户界面,很大,下载速度很慢,而且有其他更好的替代品。

    难点在配置文件,启动Mongodb的服务以及将MongoDB设置成Windows服务,加载配置文件在windows的“服务”中找到。

    关于网上教程中普遍推荐新建一个data文件夹等等一些操作,我的看法是可有可无,因为到了我这个版本,mongodb会自己创建这些东西。当然,如果为了方便寻找数据库和日志,自己建一个也可以。

    这里我就简单描述一下:
    (这里我默认在 C:\MongoDB\ 创建了文件夹)
    C:\MongoDB\data\log目录,用来存放日志文件;
    C:\MongoDB\Server\4.2\log\mongodb.log 里的 mongodb.log ,用来存放日志信息;
    C:\MongoDB\Server\4.2\data\db目录,用来存放数据库数据。

  2. 在C:\MongoDB\Server\4.2\data目录下创建db文件夹(因为默认安装中没有这个文件夹,但后面要用)
    在C:\MongoDB\Server\4.2目录下创建mongo.config,在文件内部复制如下文本:

  3. 安装服务
    管理员权限打开cmd命令行,输入如下命令安装mongodb服务:

    sc create MongoDB binPath= "C:\MongoDB\Server\4.2\bin\mongod.exe --service --config=C:\MongoDB\Server\4.2\mongo.config" 
    

    如果一直显示[SC] CreateService 失败 1072:指定的服务已标记为删除。,那请先退出服务那个窗口,因为那个占用“频道”了。
    cd 进入C:\MongoDB\Server\4.2\bin文件夹,使用如下命令:

    cd C:\MongoDB\Server\4.2\bin
    
    mongod --config C:\MongoDB\Server\4.2\mongo.config --install --serviceName "MongoDB"
    

    继续使用如下命令:

    mongod --logpath "C:\MongoDB\Server\4.2\log\mongodb.log" --logappend --dbpath "C:\MongoDB\Server\4.2\data\db" --serviceName "MongoDB" --install
    

​ 然后在cmd里输入services.msc打开服务管理器,找到MongoDB服务,设置成自动启动,并启动。

​ 如果启动不成功,先删除服务,使用如下命令:

sc delete MongoDB

​ 然后再从第2步开始,重新排查各种配置项及操作


  1. 测试是否安装成功
    进入C:\MongoDB\Server\4.2\bin文件夹下,点击mongod.exe,如果闪一下退出,说明安装正常。
    然后在浏览器里访问这个地址http://localhost:27017/
    如果显示了

    It looks like you are trying to access MongoDB over HTTP on the native driver port.

    说明服务和端口正常。


配置环境变量(可省略)

  • 如果不配置环境变量,在使用mongo命令时要先 cd 进入C:\MongoDB\Server\4.2\bin 目录才能使用命令
  • 通过配置环境变量的方式,让mongo命令在所有文件夹内都可以访问
    在系统变量中找到path,双击打开后在变量值中的末尾增加输入C:\MongoDB\Server\4.2\bin;即可
    (Win10则双击打开后点击“编辑文本”同样在变量值中的末尾增加输入)!

远程连接MongoDB数据库(Windows版)

打开bin目录中的mongod.cfg文件进行编辑,其中bindIp:127.0.0.1改为0.0.0.0 不然别的地方访问不了,
取消security的#注释符,并添加authorization:enabled

然后以管理员身份在bin目录下执行如下命令,使配置生效

mongod --config "C:\MongoDB\Server\4.2\bin\mongod.cfg" --install

然后重启MongoDB服务

net stop mongodb		// 先关闭mongodb
net start mongodb		// 后开启mongodb

这里设置了0.0.0.0允许远程访问,所以最好加一层验证,添加一个mongo用户进行管理。
在bin目录打开cmd输入mongo执行命令

cd C:\MongoDB\Server\4.2\bin

mongo

use admin
db.createUser({
"user":"admin","pwd":"password",
  "roles":[
    {role:"userAdminAnyDatabase", db: "admin"}, 

{role:"readWriteAnyDatabase", db: "admin"}
]});
```

这里就添加了一个admin的用户,密码为password

{% note warning %}

另外远程访问的话,记得开启安全组和防火墙端口,可能会因为这个导致全盘皆输

{% endnote %}

Linux版

解压MongoDB压缩包

假设已将文件下载到 /home/ 目录下,打开终端,通过使用下面的命令

cd /home

tar -xzvf mongodb-linux-x86_64-rhel80-5.0.6.tgz

mv /home/mongodb-linux-x86_64-rhel80-5.0.6.tgz /home/software/mongodb-5.0.6

解压文件,从而在 /home/software 目录下生成 mongodb-5.0.6目录


配置MongoDB

为了快速使用mongodb命令, 可以配置环境变量。

编辑 ~/.profile/etc/profile 文件, 将mongodb/bin路径加入即可,打开终端,输入命令:

sudo vim /etc/profile

/etc/profile中,按i进入编辑模式,在最下面添加以下行,注意路径:

export PATH=$PATH:/home/software/mongodb-5.0.6/bin

ESC退出编辑模式,再输入:wq保存修改后,在终端运行以下命令使环境变量生效:

source /etc/profile

{% note info %}

注意:建议重启一下,不然,每新打开一个终端,都要输入source /etc/profile才能使用mongo命令

{% endnote %}

然后,是建立数据库的存放位置和日志文件的存放位置,在终端运行以下命令

//用于存放数据库
mkdir -p /home/data/mongo-db

//用于存放日志文件
mkdir -p /home/data/mongo-log

接着,在/home/software/mongodb-5.0.6目录下新建一个名为 mongodb.conf 的配置文件,写入如下配置内容:

vim mongodb.conf

i进入编辑模式,按ESC退出编辑模式,再输入:wq保存修改。

#端口
port=27017

#默认127.0.0.1为只允许本地连接;0.0.0.0为不限制;多个指定服务器用","连接
bind_ip=127.0.0.1

#数据库存文件存放目录 
dbpath=/home/data/mongo-db

#日志文件
logpath=/home/data/mongo-log/mongodb.log

#使用追加的方式写日志
logappend=true

#以守护程序的方式启用,即在后台运行
fork=true

#最大同时连接数
maxConns=100

#不启用验证
noauth=true

#每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。
#即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。
journal=true

#存储引擎有mmapv1、wiretiger、mongorocks
storageEngine=wiredTiger

用以下命令启动mongodb:

mongod --config /home/software/mongodb-5.0.6/mongodb.conf

这时mongod已经启动了(这代表mongodb已经开始在后台运行)

测试mongodb安装

继续在终端输入mongo进入交互程序:

mongo

行首出现 > 表示进入mongo的交互程序,此时输入:

show dbs;

出现

admin    0.000GB
config   0.000GB
local    0.000GB

即安装成功

关于 MongoDB用户 的命令

{% include_code lang:txt MongoDB用户命令.txt %}

MongoDB命令

{% include_code lang:txt mongodb.txt %}

posted @ 2022-10-21 17:58  星幕·云影  阅读(539)  评论(0编辑  收藏  举报