如何在Arch Linux上安装MongoDB 4.0

安装 MongoDB 4.0 数据库

  1. 从源编译 。使用 AUR 软件包mongodb,也可以使用mongodb-tools‘ 。请注意,这大约需要 180GB,这是一个很长的编译过程 。使用 4 核,大约需要 7 个小时 。这是推荐的方法,因为它使用 Arch 的编译标志 。
  2. 使用 MongoDB 的预构建二进制文件 。使用 AUR 软件包mongodb-bin并可能使用mongodb-tools-bin 。这将跳过整个编译阶段,从 mongodb.org 下载预构建的二进制文件,并将其与必要的配置文件打包在一起 。
安装软件包后,启动 MongoDB,并使其在每次启动后启动 。在第一次启动期间,它将为日志和其他数据预分配文件,这可能需要一段时间才能完成数据库的建立:
# systemctl enable --now mongodb测试连接连接到 MongoDB:
$ mongo退出:
> exit防火墙注意事项尽管配置防火墙始终是一个好主意,但是默认情况下,MongoDB 默认仅侦听27017localhost 上的端口,因此它将不接收外部流量 。
需要认证默认情况下,MongoDB 允许任何人无需任何身份验证即可连接到它,这显然存在安全风险 。
创建一个根数据库用户:
$ mongo> use admin> db.createUser(... {... user: "root",... pwd: "YOUR-NEW-PASSWORD",... roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]... }... )> exit编辑/etc/mongodb.conf,如果使用包mongodb添加:
security:authorization: "enabled"如果使用软件包mongodb-bin添加:
auth = true重新启动 MongoDB:
# systemctl restart mongodb现在,尽管您仍然可以在不进行身份验证的情况下连接到 MongoDB,但没有它,它将无法执行任何操作:
$ mongodb> db.getUsers()... Error: command usersInfo requires authentication :以 root 身份连接到 MongoDB:
$ mongodb -u root或者,连接到 MongoDB,然后在其中进行身份验证:
$ mongodb> use admin> db.auth("root", "<YOUR-DATABASE-ROOT-PASSWORD>")重要提示:升级【如何在Arch Linux上安装MongoDB 4.0】由于 MongoDB 现在是 AUR 的一部分,因此pacman在升级整个 Arch 系统时,不会自动编译并将其升级到新版本 。您将需要手动重新编译新版本并安装新软件包 。在这样做之前,请务必先查看 MongoDB 的发行说明,以了解是否需要采取任何其他步骤 。同样,在升级之前备份数据库也是个好主意 。

    推荐阅读