![MongoDB进阶与实战:微服务整合、性能优化、架构管理](https://wfqqreader-1252317822.image.myqcloud.com/cover/697/38209697/b_38209697.jpg)
第2章 体验MongoDB
2.1 安装MongoDB
接下来,为了快速体验MongoDB,将介绍如何安装MongoDB的方法。
2.1.1 Linux环境下的安装
1.下载安装包
访问官方网站的下载页面,找到对应于操作系统的版本,这里以CentOs为例,OS选择RHEL 7.0 Linuxbit-x64版本,Package选择TGZ格式(已编译好的二进制包),如图2-1所示。
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_26_1.jpg?sign=1738831189-AOdEjSpIvXCi4139uVCVmv3ydotCVCsE-0-5e74ba58d89db089884bdab5c33a923e)
图2-1 选择Linux版本
下载后,将得到安装包文件mongodb-linux-x86_64-rhel70-4.0.10.tgz。
2.创建运行用户、目录
执行如下命令,添加dbuser用户、dbgroup用户组。
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_27_1.jpg?sign=1738831189-z4xdSKRO10YQll6usQMtQRp63f92IDs5-0-b69a92bd5ae72a33bf7a5b08517b4c81)
3.解压、部署
将下载到的安装包解压后,部署到指定目录,代码如下:
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_27_2.jpg?sign=1738831189-CmiBZhENLZp5ZvqRlQbl0y7fKPifLpiZ-0-18e0b1452941cdfe5b2d7becadf29547)
这样,我们就已经将MongoDB安装到了/opt/local/mongodb这个目录,除此之外,还建立了以下子目录:
● conf作为配置文件目录。
● data作为数据文件目录。
● log作为日志文件目录。
接下来,将部署目录的权限授予已经创建数据库的用户。
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_27_3.jpg?sign=1738831189-f4YTuRGD7WDVybkCTSPJ695XFCdHXG9A-0-7417bc64c7b1c2ba0a30522feff5b74b)
通过su-命令可以将当前shell会话切换到dbuser用户,这样可以让数据库通过dbuser权限启动。
4.数据库配置
编辑conf/mongo.conf文件,内容如下:
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_27_4.jpg?sign=1738831189-pIkEhX9pBJK9v2VojSCThTGq7u0HJzH7-0-16a651a2701d0079ddd206039d0f52a8)
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_28_1.jpg?sign=1738831189-8SWvVVr6l2jFJNsX71c0pWzJnMovQTDA-0-b2064fe50ea3ea48e9365905a20d8923)
配置说明见表2-1。
表2-1 配置属性说明
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_28_2.jpg?sign=1738831189-k8J8N2Ihy03sTiwgtdV0LN06FcbhcQg6-0-b3f67e0b5c4978ca9c5809ddaa0e5cfd)
5.启动,创建数据库账号
执行mongod程序,启动数据库,代码如下:
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_28_3.jpg?sign=1738831189-zz5Xst8AWybqIcMOWGxA8GPfo3i4MdfM-0-28c181ac76d8f44fbcf39e3177595a1a)
-f选项表示将使用配置文件启动数据库进程,此时,数据库已经启动成功,执行mongo shell,将客户端连接到服务器,代码如下:
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_29_1.jpg?sign=1738831189-7p5R2UZh7rfygXH6QUATtJHFdoGFwLx4-0-859de01b14d9e915db2e433f509201a1)
创建管理员用户,代码如下:
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_29_2.jpg?sign=1738831189-NayAXNJuQpUbfjTS20WAOqIyS5TiY6TJ-0-e613219042b942165a094c7cec4450db)
创建应用数据库用户,代码如下:
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_29_3.jpg?sign=1738831189-7btJG0dq06T2HtFxtxjrKbeSihrvvakJ-0-7757ab85b5d8cca7d2c7207e2b1ecba2)
默认情况下,MongoDB不会启用鉴权,此时可以执行用户的添加操作。
最后,重启mongod,同时启用鉴权,代码如下:
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_29_4.jpg?sign=1738831189-ZfCqW5yTVheWWofTJ11CcbuwYKh0AB9D-0-0dc3761394d6e77118293d98ad6821df)
启用鉴权之后,连接MongoDB的相关操作都需要提供身份认证。
6.检查数据库版本
进入mongo shell,执行如下命令:
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_29_5.jpg?sign=1738831189-5xzr4xYjFBoq3Aa2gkvVMhVR0Yu824GB-0-1a5b161a6ab0bd0aef9ca1294cabb723)
至此,我们已经完成了所有步骤。
在步骤5中,创建数据库账号并不是必需的,但为了避免类似于“黑客赎金事件”的发生,建议读者养成使用鉴权的好习惯。
MongoDB安装后会包含的二进制程序,见表2-2。
表2-2 MongoDB二进制程序
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_30_1.jpg?sign=1738831189-PbU2iI70T97TCqkz1hwfJsxAGXbJqdMr-0-2dbd6664f296a23a156cfccb2011c5d6)
2.1.2 Windows环境下的安装
1.下载安装文件
访问MongoDB官方网站,找到对应当前Windows系统的安装文件,比如Windows 64-bit x64的版本,如图2-2所示。
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_30_2.jpg?sign=1738831189-DiXtLOASOk5nY0bIWmA3PhAtGOGywqTs-0-4e50ab9157b59625317f5af57b5f0d84)
图2-2 选择Windows版本
下载后,可以得到一个MSI文件,双击它便可以启动安装程序。
2.安装软件
第一步,会弹出选择安装模式的界面,为了更多地了解MongoDB,笔者建议选择Custom(定制)模式。这样可以看到具体的软件安装在哪里,日志、数据文件分别存放在什么目录,还能适当地做一些修改,如图2-3和图2-4所示。
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_31_1.jpg?sign=1738831189-Ee5VV3qvf16jMj4U1BWUpG0YbO28tHBv-0-4e9031d9e113686d9a7f7099ba7b811b)
图2-3 选择安装模式
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_31_2.jpg?sign=1738831189-gxPbuI1RpXY15e07ch7IZSlavkWc6pHH-0-3d335f74557a63921c3cd25a0f4886dd)
图2-4 定制化安装
默认情况下,MongoDB会被安装到C盘。建议读者将目录修改到一个合适的位置,如图2-4中把MongoDB安装到D:\MongoDB\Server\4.0这个目录。
第二步,会提示是否选择将MongoDB作为服务运行,为了方便管理,建议勾选上,如图2-5所示。
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_32_1.jpg?sign=1738831189-OU6Crl9HsIKIA1Z12ZceldOolZdkEEm9-0-e64efbd76bdda566e8feb11c56715487)
图2-5 选择MongoDB作为服务运行
第三步,单击“Next”按钮,会提示是否同时安装Compass,这是MongoDB官方提供的一款GUI工具,将在后面的章节中介绍。如果勾选了安装则需要从网络下载Compass软件,当然你也可以选择直接跳过,在以后需要时单独下载使用。跳过这一步之后单击“Install”按钮,就进入了安装过程界面,如图2-6所示。
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_32_2.jpg?sign=1738831189-tIckKdmzj7jucmtnbWA1IUX4qXiDdAwt-0-0399646ba5eb123335379bef00830600)
图2-6 安装MongoDB
安装完成后,会弹出提示安装成功的界面,单击“确定”按钮将其关闭。如果在前面勾选了“将MongoDB作为服务运行”这一选项,那么此时MongoDB服务会自动启动,如图2-7所示。
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_33_1.jpg?sign=1738831189-rnRZj0px7154EXndzYq4R0PMUKzFgHw0-0-54b9a8cb46c99f143e67782918b114c8)
图2-7 MongoDB进程
接下来,我们在命令行中执行mongo.exe程序来连接MongoDB服务:
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_33_2.jpg?sign=1738831189-3Wt3dkDfVC3ooGLG1dW4znDW4kkjGcNi-0-ea816bd50492fe46eb55971ed0459fdd)
输出内容如图2-8所示。
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_33_3.jpg?sign=1738831189-RL55OFPNxu6HkbqKwnBn1JjhqIAWgTQ6-0-3810c69b551a9f570f0ed809f3905754)
图2-8 使用mongo shell连接MongoDB
3.初始化用户
此时,我们已经能接入数据库了。为了更好地使用数据库,可以继续创建对应的数据库、用户,并设置自己的密码,在接入MongoDB的shell窗口中执行以下命令:
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_33_4.jpg?sign=1738831189-29G7i0aKgaGlzSQXLsFvgAtkxCHsNieV-0-cbff56fa2b48c45b990b3a621a981b50)
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_34_1.jpg?sign=1738831189-rGi69bjYQ7DXx2mnnprirS1WWle0Ch9J-0-6b84cd61eb80eaf89f7b12f297f1ce5e)
在Windows环境中安装的一些默认选项见表2-3。
表2-3 Windows版本安装选项
![](https://epubservercos.yuewen.com/6F449D/20118171608699906/epubprivate/OEBPS/Images/40827_34_2.jpg?sign=1738831189-4Na59StY3oVOYwNOkz1be3YzMZuXoMZU-0-63705722222166dc6d17285fee64f8a3)
如果需要调整这些值,则可以在编辑安装目录中的bin\mongod.cfg文件后,重启数据库使其生效。