Centos7安装MongoDB

下载

官网:https://www.mongodb.com/
下载地址:https://www.mongodb.com/try/download/community

1. 安装

将资源上传至服务器 /root ,解压至 /usr/local 并重命名为 mongodb

# 解压 mongodb 至指定目录
tar -zxvf /root/mongodb-linux-x86_64-rhel70-4.4.1.tgz -C /usr/local/
# 重命名解压目录为 mongodb
mv /usr/local/mongodb-linux-x86_64-rhel70-4.4.1/ /usr/local/mongodb

创建用于存放数据和日志的文件夹,并修改其权限增加读写权限。

# 创建存放数据的目录
mkdir -p /home/mongodb/data/db
# 创建存放日志的目录
mkdir -p /home/mongodb/logs
# 创建日志记录文件
touch /home/mongodb/logs/mongodb.log

2. 环境变量

每次操作 MongoDB 都需要进入具体的目录才行,比如启动服务,客户端进行连接等,可不可以在任意目录都能进行操作。答案当然是可以的,只需要将 MongoDB 相关目录添加至系统环境变量即可。

修改/etc/profile 编辑系统环境变量文件,添加以下内容:

# 添加环境变量
export MONGODB_HOME=/usr/local/mongodb
export PATH=$PATH:$MONGODB_HOME/bin

source /etc/profile 重新加载系统环境变量

3. 启动

1)前台启动

MongoDB 的默认启动方式为前台启动。所谓的前台启动就是 MongoDB 启动进程后会占用当前的终端窗口。

前台启动

mongod --dbpath /usr/local/mongodb/data/db/ --logpath /usr/local/mongodb/logs/mongodb.log --logappend --port 27017 --bind_ip 0.0.0.0

说明:

--dbpath :指定数据文件存放目录
--logpath :指定日志文件,注意是指定文件不是目录
--logappend :使用追加的方式记录日志
--port :指定端口,默认为 27017
--bind_ip :绑定服务 IP,若绑定 127.0.0.1,则只能本机访问,默认为本机地址

前台启动就是以守护进程的方式启动 MongoDB。命令中添加 --fork 即可

后台启动

mongod --dbpath /usr/local/mongodb/data/db/ --logpath /usr/local/mongodb/logs/mongodb.log --logappend --port 27017 --bind_ip 0.0.0.0 --fork

配置文件启动

/home/mongodb目录下增加一个 mongodb.conf 配置文件

# 数据文件存放目录
dbpath = /home/mongodb/data/db
# 日志文件存放目录
logpath = /home/mongodb/logs/mongodb.log
# 以追加的方式记录日志
logappend = true
# 端口默认为 27017
port = 27017
# 对访问 IP 地址不做限制,默认为本机地址
bind_ip = 0.0.0.0
# 以守护进程的方式启用,即在后台运行
fork = true

启动

# 指定配置文件的方式启动服务
mongod -f /home/mongodb/mongodb.conf

4.关闭服务

使用 --shutdown 参数即可关闭。

 # 命令启动方式的关闭
mongod --dbpath /home/mongodb/data/db/ --logpath /home/mongodb/logs/mongodb.log --logappend --port 27017 --bind_ip 0.0.0.0 --fork --shutdown
# 配置文件启动方式的关闭
mongod -f /home/mongodb/mongodb.conf --shutdown

函数关闭

连接到 MongoDB 服务后,切换到 admin 数据库,并使用相关函数关闭服务。

mongo
# 切换 admin 数据库
use admin
# 执行以下函数(2选1)即可关闭服务
db.shutdownServer()
db.runCommand("shutdown")

5.客户端访问

可以通过 bin 目录中的 mongo 来访问 MongoDB 服务器。

  命令为:mongo --host 连接的主机地址(默认127.0.0.1) --port 端口(默认27017)

help  帮助命令。
db.version()  查看版本信息。
show dbs  查看所有数据库。

[root@localhost conf]# mongo --host 127.0.0.1 --port 27001
MongoDB shell version v3.4.24-4-g68fadc9173
connecting to: mongodb://127.0.0.1:27001/
MongoDB server version: 3.4.24-4-g68fadc9173
>
> use admin
switched to db admin
>
> show users;
2022-08-14T10:59:22.643+0800 E QUERY    [thread1] Error: not authorized on admin to execute command { usersInfo: 1.0 } :
_getErrorWithCode@src/mongo/shell/utils.js:25:13
DB.prototype.getUsers@src/mongo/shell/db.js:1539:1
shellHelper.show@src/mongo/shell/utils.js:797:9
shellHelper@src/mongo/shell/utils.js:704:15
@(shellhelp2):1:1
> exit
bye
[root@localhost conf]# mongo --host 127.0.0.1 --port 27001
MongoDB shell version v3.4.24-4-g68fadc9173
connecting to: mongodb://127.0.0.1:27001/
MongoDB server version: 3.4.24-4-g68fadc9173
> use admin
switched to db admin
> db.auth('admin','12#qweASD')
1
> show users
{
        "_id" : "admin.admin",
        "userId" : BinData(4,"Ty65J4J9TPy5ySYrUrxdyQ=="),
        "user" : "admin",
        "db" : "admin",
        "roles" : [
                {
                        "role" : "root",
                        "db" : "admin"
                }
        ]
}
相关推荐
play_big_knife1 小时前
鸿蒙项目云捐助第二十八讲云捐助项目首页组件云数据库加载轮播图
数据库·华为·harmonyos·鸿蒙·云开发·鸿蒙开发·鸿蒙技术
qq_321665332 小时前
mysql 数据库迁移到达梦数据库
数据库·mysql
Hello.Reader3 小时前
Redis大Key问题全解析
数据库·redis·bootstrap
靖顺5 小时前
【OceanBase 诊断调优】—— packet fly cost too much time 的根因分析
数据库·oceanbase
liuxin334455665 小时前
学籍管理系统:实现教育管理现代化
java·开发语言·前端·数据库·安全
007php0076 小时前
linux服务器上CentOS的yum和Ubuntu包管理工具apt区别与使用实战
linux·运维·服务器·ubuntu·centos·php·ai编程
djykkkkkk6 小时前
ubuntu编译遇到的问题
linux·运维·ubuntu
qq_429856576 小时前
linux 查看服务是否开机自启动
linux·运维·服务器
行走的山峰7 小时前
ES和MONGODB备份脚本
mongodb·es
yuanbenshidiaos7 小时前
C++--------------树
java·数据库·c++