Centos7 manual de instalación y configuración de MongoDB

1. Descargue el paquete de instalación del sitio web oficial de MongoDB e instálelo

#上传安装包解压到安装目录
tar -zxvf mongodb-linux-x86_64-rhel70-4.4.1.tgz  -C /usr/local
# 进入到安装目录
cd /usr/local
#修改安装文件夹名称为mongodb
mv mongodb-linux-x86_64-rhel70-4.4.1 mongodb 

2. Crea las carpetas necesarias

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

# 赋予文件夹独写权限
chomd -R 777 /usr/local/mongodb/data/db
#赋予文件读写权限
chmod a+w -R /usr/local/mongodb/logs/mongodb.log

3. Empezar

# 切换至指定目录
cd /usr/local/mongodb/

3.1 Comienzo en primer plano

# 启动后控制台是阻塞的状态
bin/mongod --dbpath /usr/local/mongodb/data/db --logpath /usr/local/mongodb/logs/mongodb.log --logappend --port 27017 --bind_ip 0.0.0.0
# 结束前台启动
ctrl+c
3.2, inicio en segundo plano
# 控制台不会出现阻塞
bin/mongod --dbpath /usr/local/mongodb/data/db --logpath /usr/local/mongodb/logs/mongodb.log --logappend --port 27017 --bind_ip 0.0.0.0 --fork
# 结束后台启动
bin/mongod --dbpath /usr/local/mongodb/data/db --logpath /usr/local/mongodb/logs/mongodb.log --logappend --port 27017 --bind_ip 0.0.0.0 --fork --shutdown

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

测试是否启动,进入到/usr/local/mongodb使用客户端访问
连接命令:bin/mongo

3.3 Método del archivo de configuración (método recomendado)

cd /usr/local/mongodb
# 创建配置文件
vim bin/mongodb.conf
# 赋予文件可执行权限
chmod a+w -R /usr/local/mongodb/bin/mongodb.conf

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

# 配置完配置文件,启动指定配置文件
bin/mongod -f bin/mongodb.conf
# 停止方式
bin/mongod -f bin/mongodb.conf --shutdown

4. Configuración relacionada con MongoDB

# 打开环境变量文件
vim /etc/profile
# 找到环境变量的配置
/export
# 环境变量设置
JAVA_HOME=/usr/local/java/jdk1.8.0_261
CLASSPATH=$JAVA_HOME/lib/
MONGODB_HOME=/usr/local/mongodb
PATH=$PATH:$JAVA_HOME/bin:$MONGODB_HOME/bin
export PATH JAVA_HOME CLASSPATH

# 使环境变量立即生效
source /etc/profile

# 配置完环境变量的启动方式
mongod -f /usr/local/mongodb/bin/mongodb.conf
# 关闭服务
mongod -f /usr/local/mongodb/bin/mongodb.conf --shutdown

5. Operación de comando del proyecto MongoDB

use admin  #切换数据库
db.shutdownServer()  #关闭服务
# 创建用户(用户适用于任意数据库)
db.createUser({
    
    user: "uaad",pwd: "uaad",roles:[{
    
     role: "userAdminAnyDatabase", db: "admin" }]});
# 更改用户角色
db.updateUser("uaad",{
    
    roles:[{
    
     role: "userAdminAnyDatabase", db: "admin" },{
    
     role: "readWriteAnyDatabase", db: "admin" },{
    
     role: "dbAdminAnyDatabase", db: "admin" }]});
# 更改用户密码
db.updateUser("用户名"{
    
    "pwd":"新密码"});
db.changeUserPassword("用户名","新密码");
# 删除用户 需要具有userAdmin或userAdminAnyDatabase或root角色的用户才可以删除其他用户
db.dropUser("用户名称")
#### 在配置文件/usr/local/mongodb/bin/mongodb.conf新增身份认证命令
# 开启身份认证
auth = true
# 认证身份 设置的用户名和密码
db.auth("uaad","uaad");
#可视化工具下载安装(下载右边开源免费版本)
https://robomongo.org/download

6. Número de puerto abierto

firewall-cmd --zone=public --add-port=27017/tcp --permanent
firewall-cmd --reload   # 配置立即生效

7. Conexión del proyecto

Si se trata de una base de datos recién creada, debe verificar que debe configurar el usuario y la contraseña correspondientes para la base de datos antes de poder conectarse.

 # 新创建数据库lm_db
 use lm_db
 # 创建对应的用户
 db.createUser({
    
    user: "uaad",pwd: "uaad",roles:[{
    
     role: "dbAdmin", db: "lm_db" }]});

MongoDB actualmente tiene 7 roles integrados.

Roles de usuario de base de datos: lectura, lectura y escritura;
roles de administración de base de datos: dbAdmin, dbOwner, userAdmin;
roles de administración de clústeres: clusterAdmin, clusterManager, clusterMonitor, hostManager;
roles de respaldo y recuperación: respaldo, restauración;
todos los roles de base de datos: readAnyDatabase, readWriteAnyDatabase, userAdminAnyDatabase, dbAdminAnyDatabase
rol de superusuario: root; aquí hay varios roles que directa o indirectamente brindan acceso a los superusuarios del sistema (dbOwner, userAdmin, userAdminAnyDatabase)
Roles internos: __system
Las funciones correspondientes de estos roles son las siguientes:

Lectura: permite a los usuarios leer la base de datos especificada
readWrite: permite a los usuarios leer y escribir bases de datos especificadas
dbAdmin: permite a los usuarios realizar funciones de administración en la base de datos especificada, como creación de índices, eliminación, visualización de estadísticas o acceso al
sistema para recopilar system.users Write, puede crear, eliminar y administrar el usuario
clusterAdmin en la base de datos especificada: solo está disponible en la base de datos de administración y otorga permisos de administración de usuarios para todos los fragmentos y funciones relacionadas con el conjunto de réplicas.
readAnyDatabase: disponible solo en la base de datos de administración, otorgando al usuario permisos de lectura para todas las bases de datos
readWriteAnyDatabase: disponible solo en la base de datos de administración, otorgando al usuario permisos de lectura y escritura para
todas las bases de datos userAdminAnyDatabase: disponible solo en la base de datos de administración, otorgando al usuario permisos de administrador para todas las bases de datos
dbAdminAnyDatabase: disponible solo en la base de datos de administración, otorgando al usuario privilegios de dbAdmin para todas las bases de datos.
root: solo disponible en la base de datos de administración. super cuenta, super autoridad

Supongo que te gusta

Origin blog.csdn.net/qq_21875331/article/details/117189553
Recomendado
Clasificación