1、centos7平台安装MongoDB4

1.1安装mongdb4并启动

MongoDB 提供了 linux 各个发行版本 64 位的安装包,你可以在官网下载安装包。

安装前我们需要安装各个 Linux 平台依赖包。

Red Hat/CentOS:

  1. sudo yum install libcurl openssl

https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.10.tgz

这里我们选择 tgz 下载,下载完安装包,并解压 tgz(以下演示的是 64 位 Linux上的安装) 。

  1. wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.10.tgz # 下载
  2. # wget不存在 yum -y 表示默认选择是
  3. yum -y install wget
  4. tar -zxvf mongodb-linux-x86_64-rhel70-4.0.10.tgz # 解压
  5. mv mongodb-src-r4.0.10 /usr/local/mongodb4 # 将解压包拷贝到指定目录

MongoDB 的可执行文件位于 bin 目录下,所以可以将其添加到 PATH 路径中:

  1. export PATH=<mongodb-install-directory>/bin:$PATH

为你 MongoDB 的安装路径。如本文的 /usr/local/mongodb4

  1. export PATH=/usr/local/mongodb4/bin:$PATH

创建数据库目录

默认情况下 MongoDB 启动后会初始化以下两个目录:

  • 数据存储目录:/usr/local/mongodb4/data/db
  • 日志文件目录:/usr/local/mongodb4/logs

我们在启动前可以先创建这两个目录并设置当前用户有读写权限:

  1. sudo mkdir -p /usr/local/mongodb4/data/db
  2. sudo mkdir -p /usr/local/mongodb4/logs
  3. #进入日志目录
  4. cd /usr/local/mongodb4/logs
  5. #创建文件
  6. touch mongod.log
  7. sudo chown `whoami` /usr/local/mongodb4/data/db # 设置权限
  8. sudo chown `whoami` /usr/local/mongodb4/logs # 设置权限

接下来启动 Mongodb 服务:

  1. mongod --dbpath /usr/local/mongodb4/data --port 27017 --logpath /usr/local/mongodb4/logs/mongod.log --fork

打开 /var/log/mongodb/mongod.log 文件看到以下信息,说明启动成功。

  1. # tail -10f /var/log/mongodb/mongod.log
  2. 2020-07-09T12:20:17.391+0800 I NETWORK [listener] Listening on /tmp/mongodb-27017.sock
  3. 2020-07-09T12:20:17.392+0800 I NETWORK [listener] Listening on 127.0.0.1
  4. 2020-07-09T12:20:17.392+0800 I NETWORK [listener] waiting for connections on port 27017

MongoDB 后台管理 Shell

如果你需要进入 mongodb 后台管理,你需要先打开 mongodb 装目录的下的 bin 目录,然后执行 mongo 命令文件。

MongoDB Shell 是 MongoDB 自带的交互式 Javascript shell,用来对 MongoDB 进行操作和管理的交互式环境。

当你进入 mongoDB 后台后,它默认会链接到 test 文档(数据库):

  1. $ cd /usr/local/mongodb4/bin
  2. $ ./mongo
  3. MongoDB shell version v4.2.8
  4. connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
  5. Implicit session: session { "id" : UUID("2cfdafc4-dd56-4cfc-933a-187b887119b3") }
  6. MongoDB server version: 4.2.8
  7. Welcome to the MongoDB shell.
  8. ……

由于它是一个JavaScript shell,您可以运行一些简单的算术运算:

  1. > 2+2
  2. 4
  3. > 3+6
  4. 9

现在让我们插入一些简单的数据,并对插入的数据进行检索:

  1. > db.runoob.insert({x:10})
  2. WriteResult({ "nInserted" : 1 })
  3. > db.runoob.find()
  4. { "_id" : ObjectId("5f069bdb4e02f8baf90f1184"), "x" : 10 }
  5. >

第一个命令将数字 10 插入到 runoob 集合的 x 字段中。

如果要停止 mongodb 可以使用以下命令:

  1. mongod --dbpath /usr/local/mongodb4/data --port 27017 --logpath /usr/local/mongodb4/logs/mongod.log --shutdown

也可以在 mongo 的命令出口中实现:

  1. > use admin
  2. switched to db admin
  3. > db.shutdownServer()

1.2通过配置文件启动

创建mongodb.conf文件

  1. mkdir -p /usr/local/mongodb4/conf
  2. touch mongodb.conf

vim mongodb.conf

  1. #端口号
  2. port=27017
  3. #db目录
  4. dbpath=/usr/local/mongodb4/data/db
  5. #日志目录
  6. logpath=//usr/local/mongodb4/logs/mongodb.log
  7. #后台
  8. fork=true
  9. #日志输出
  10. logappend=true
  11. #允许远程IP连接
  12. bind_ip=0.0.0.0

4.启动测试

  1. #进入目录
  2. /usr/local/mongodb4/bin
  3. #启动
  4. mongod --config /usr/local/mongodb4/conf/mongodb.conf
  5. # 连接
  6. mongo
  7. #测试
  8. > db.runoob.insert({x:10})
  9. WriteResult({ "nInserted" : 1 })
  10. > db.runoob.find()
  11. { "_id" : ObjectId("60d2bfa3b57806d84bbf50d4"), "x" : 10 }

1.3Mongodb开机启动-自定义服务

(1).在/lib/systemd/system/目录下新建mongodb.service文件,内容如下

  1. [Unit] `` ` `Description=mongodb ``After=network.target remote-fs.target nss-lookup.target `` ` `[Service] ``Type=forking ``ExecStart=/mnt/app/mongodb/bin/mongod --config /mnt/app/mongodb/mongodb.conf``ExecReload=/bin/kill -s HUP $MAINPID ``ExecStop=/mnt/app/mongodb/bin/mongod --shutdown --config /mnt/app/mongodb/mongodb.conf``PrivateTmp=``true` ` ` `[Install] ``WantedBy=multi-user.target

(2).设置权限

  1. chmod 754 mongodb.service

(3).启动关闭服务,设置开机启动

  1. #启动服务
  2. systemctl start mongodb.service
  3. #关闭服务
  4. systemctl stop mongodb.service
  5. #开机启动
  6. systemctl enable mongodb.service