
第2章 体验MongoDB
2.1 安装MongoDB
接下来,为了快速体验MongoDB,将介绍如何安装MongoDB的方法。
2.1.1 Linux环境下的安装
1.下载安装包
访问官方网站的下载页面,找到对应于操作系统的版本,这里以CentOs为例,OS选择RHEL 7.0 Linuxbit-x64版本,Package选择TGZ格式(已编译好的二进制包),如图2-1所示。

图2-1 选择Linux版本
下载后,将得到安装包文件mongodb-linux-x86_64-rhel70-4.0.10.tgz。
2.创建运行用户、目录
执行如下命令,添加dbuser用户、dbgroup用户组。

3.解压、部署
将下载到的安装包解压后,部署到指定目录,代码如下:

这样,我们就已经将MongoDB安装到了/opt/local/mongodb这个目录,除此之外,还建立了以下子目录:
● conf作为配置文件目录。
● data作为数据文件目录。
● log作为日志文件目录。
接下来,将部署目录的权限授予已经创建数据库的用户。

通过su-命令可以将当前shell会话切换到dbuser用户,这样可以让数据库通过dbuser权限启动。
4.数据库配置
编辑conf/mongo.conf文件,内容如下:


配置说明见表2-1。
表2-1 配置属性说明

5.启动,创建数据库账号
执行mongod程序,启动数据库,代码如下:

-f选项表示将使用配置文件启动数据库进程,此时,数据库已经启动成功,执行mongo shell,将客户端连接到服务器,代码如下:

创建管理员用户,代码如下:

创建应用数据库用户,代码如下:

默认情况下,MongoDB不会启用鉴权,此时可以执行用户的添加操作。
最后,重启mongod,同时启用鉴权,代码如下:

启用鉴权之后,连接MongoDB的相关操作都需要提供身份认证。
6.检查数据库版本
进入mongo shell,执行如下命令:

至此,我们已经完成了所有步骤。
在步骤5中,创建数据库账号并不是必需的,但为了避免类似于“黑客赎金事件”的发生,建议读者养成使用鉴权的好习惯。
MongoDB安装后会包含的二进制程序,见表2-2。
表2-2 MongoDB二进制程序

2.1.2 Windows环境下的安装
1.下载安装文件
访问MongoDB官方网站,找到对应当前Windows系统的安装文件,比如Windows 64-bit x64的版本,如图2-2所示。

图2-2 选择Windows版本
下载后,可以得到一个MSI文件,双击它便可以启动安装程序。
2.安装软件
第一步,会弹出选择安装模式的界面,为了更多地了解MongoDB,笔者建议选择Custom(定制)模式。这样可以看到具体的软件安装在哪里,日志、数据文件分别存放在什么目录,还能适当地做一些修改,如图2-3和图2-4所示。

图2-3 选择安装模式

图2-4 定制化安装
默认情况下,MongoDB会被安装到C盘。建议读者将目录修改到一个合适的位置,如图2-4中把MongoDB安装到D:\MongoDB\Server\4.0这个目录。
第二步,会提示是否选择将MongoDB作为服务运行,为了方便管理,建议勾选上,如图2-5所示。

图2-5 选择MongoDB作为服务运行
第三步,单击“Next”按钮,会提示是否同时安装Compass,这是MongoDB官方提供的一款GUI工具,将在后面的章节中介绍。如果勾选了安装则需要从网络下载Compass软件,当然你也可以选择直接跳过,在以后需要时单独下载使用。跳过这一步之后单击“Install”按钮,就进入了安装过程界面,如图2-6所示。

图2-6 安装MongoDB
安装完成后,会弹出提示安装成功的界面,单击“确定”按钮将其关闭。如果在前面勾选了“将MongoDB作为服务运行”这一选项,那么此时MongoDB服务会自动启动,如图2-7所示。

图2-7 MongoDB进程
接下来,我们在命令行中执行mongo.exe程序来连接MongoDB服务:

输出内容如图2-8所示。

图2-8 使用mongo shell连接MongoDB
3.初始化用户
此时,我们已经能接入数据库了。为了更好地使用数据库,可以继续创建对应的数据库、用户,并设置自己的密码,在接入MongoDB的shell窗口中执行以下命令:


在Windows环境中安装的一些默认选项见表2-3。
表2-3 Windows版本安装选项

如果需要调整这些值,则可以在编辑安装目录中的bin\mongod.cfg文件后,重启数据库使其生效。