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"
                }
        ]
}
相关推荐
weixin_4715257835 分钟前
【gdb/sqlite3移植/mqtt】
linux·运维·服务器
大聪明-PLUS42 分钟前
TCP/IP 协议族—理论与实践(一)
linux·嵌入式·arm·smarc
稚辉君.MCA_P8_Java3 小时前
JVM第二课:一文讲透运行时数据区
jvm·数据库·后端·容器
阳光明媚sunny4 小时前
Room持久化库中,@Transaction注解的正确使用场景是?
android·数据库
北极糊的狐4 小时前
MySQL常见报错分析及解决方案总结(15)---Can’t connect to MySQL server on ‘localhost‘ (10061)
数据库·mysql
迎風吹頭髮4 小时前
Linux内核架构浅谈2- Linux内核与硬件交互的底层逻辑:硬件抽象层的作用
linux·架构·交互
濑户川4 小时前
Django5 与 Vue3 表单交互全解析:从基础到实战
数据库
weixin_438077494 小时前
langchain官网翻译:Build a Question/Answering system over SQL data
数据库·sql·langchain·agent·langgraph
孙同学要努力5 小时前
《Linux篇》进程状态——浅度、深度睡眠状态、僵尸状态、运行状态
linux·运维
-雷阵雨-5 小时前
MySQL——数据库操作攻略
数据库·mysql