官方教程:https://docs.mongodb.com/manual/administration/install-on-linux/
菜鸟教程:https://www.runoob.com/mongodb/mongodb-tutorial.html
CentOS 安装 MongoDB 社区版
安装 MongoDB
- 配置 yum 包管理器
创建 /etc/yum.repos.d/mongodb-org-4.2.repo 文件,文件内容如下:
1 | [mongodb-org-4.2] |
- 重建 yum 缓存
1 | yum clean all |
- 安装 MongoDB
1 | sudo yum install -y mongodb-org |
也可以安装指定版本,如下:
1 | sudo yum install -y mongodb-org-4.2.3 mongodb-org-server-4.2.3 mongodb-org-shell-4.2.3 mongodb-org-mongos-4.2.3 mongodb-org-tools-4.2.3 |
你可以指定任何可用的 MongoDB 版本。但是,当有较新版本时,yum 会升级软件包。为防止意外升级,需要固定包装。要固定软件包,请在
/etc/yum.conf
文件中添加以下 exclude 指令:
1 | exclude=mongodb-org,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools |
配置 MongoDB
使用默认目录
默认情况下,MongoDB 使用 mongod 用户账户运行,并使用以下默认目录:
- 数据目录: /var/lib/mongo
- 日志目录: /var/log/mongodb
如果你是使用包管理安装的,将自动默创建这些默认目录,并将这些目录的所有者和组设置为 mongod。如果你是下载 tar 包进行安装,这些目录将不会被创建,你需要自己手动创建它们。
1 | sudo mkdir -p /var/lib/mongo |
使用自定义目录
要使用默认目录以外的数据目录或日志目录,请执行以下操作:
- 创建目录
- 修改配置文件
/etc/mongod.conf
中的以下字段
1 | storage.dbPath: 指定新的数据目录路径(例如 /some/data/directory) |
- 更改这些目录的所有者与所属组
1 | sudo chown -R mongod:mongod <directory> |
运行 MongoDB
要运行和管理 mongod 进程,你将使用操作系统的内置初始化西戎。Linux 的最新版本趋向于使用 systemd(使用systemctl 命令),而 Linux 的较早版本趋向于使用 System V init(使用 services 命令).
- 启动 MongoDB,使用如下命令启动 mongod 服务
1 | sudo systemctl start mongod |
如果启动时遇到类似如下错误: Failed to start mongod.service: Unit mongod.service not found.
首先运行如下命令:
1 | systemctl daemon-reload |
然后再次运行上面的启动服务命令。
- 查看 MongoDB 状态
1 | sudo systemctl status mongod |
- 配置 MongoDB 开机启动
1 | sudo systemctl enable mongod |
- 停止 MongoDB
1 | sudo systemctl stop mongod |
- 重启 MongoDB
1 | sudo systemctl restart mongod |
使用 MongoDB
在与 mongod 相同的主机上启动 mongo shell。你可以在没有任何命令行选项的情况下运行 mongo shell,以使用默认端口 27017 连接到在本地主机上运行的 mongod。
1 | [root@salt-master ~]# mongo |
注意
默认情况下,MongoDB 启动时将 bindIP 设置为 127.0.0.1,该绑定到 localhost 网络接口。这意味着 mongod 只能接受来自同一台计算机上运行的客户端连接。远程客户端将无法连接到 mongod,并且 mongod 将无法初始化副本集,除非将此值设置为有效的网络接口。
解决方法:
- 修改配置文件中的 bindIp 字段的值
- 命令行启动时添加参数 –bind_ip
MongoDB 社区版的包信息
MongoDB 社区版可以从其自己的专用存储库中获得,并且包含以下官方支持的软件包
包名 | 描述 |
---|---|
mongodb-org | 一个元软件包,它将自动安装下面列出的四个组件软件包 |
mongodb-org-server | 包含 mongod 守护程序,关联的 init 脚本和配置文件(/etc/mongod.conf) |
mongodb-org-mongos | 包含 mongos 守护程序 |
mongodb-org-shell | 包含 mongo shell 客户端 |
mongodb-org-tools | 包含以下 MongoDB 工具: mongoimport bsondump, mongodump, mongoexport, mongofiles, mongorestore, mongostat 和 mongotop |