Docs Menu
Docs Home
/ /

Solución de problemas

Importante

MongoDB 8.2 es la última versión menor. A partir de MongoDB 8.2, hay versiones menores disponibles para implementaciones locales (MongoDB Community y Enterprise) para casos de uso específicos. Para más información, consulte Control de versiones de MongoDB.

Para instalar la última versión de MongoDB compatible para uso on-premises, consulta las instrucciones de instalación.

Ocurre durante el Import the public key used by the package management system Paso de instalación de MongoDB Community Edition.

gpg: no valid OpenPGP data found.

Copie el comando exactamente como se documenta. La operación debería responder con OK.

Verifique que la clave GPG pública de MongoDB exista en su sistema:

sudo apt-key list

El resultado esperado se parece al siguiente:

/etc/apt/trusted.gpg
--------------------
pub rsa4096 2018-04-18 [SC] [expires: 2023-04-17]
E162 F504 A20C DF15 827F 718D 4B7C 549A 058F 8B6B
uid [ unknown] MongoDB 8.0 Release Signing Key <packaging@mongodb.com>

Se produce después sudo apt update de ejecutar durante la instalación de MongoDB Community Edition. Suele deberse a la falta de una clave GPG pública de MongoDB.

W: GPG error: https://repo.mongodb.org/apt/ubuntu <release>/mongodb-org/8.2 Release: \
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 4B7C549A058F8B6B
E: The repository 'https://repo.mongodb.org/apt/ubuntu <release>/mongodb-org/8.2 Release' \
is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

Repita el Import the public key used by the package management system paso de la sección "Instalar MongoDB Community Edition". Copie el comando y la clave exactamente como se indica.

Verificar la clave:

sudo apt-key list

Resultado esperado:

--------------------
pub rsa4096 2018-04-18 [SC] [expires: 2023-04-17]
E162 F504 A20C DF15 827F 718D 4B7C 549A 058F 8B6B
uid [ unknown] MongoDB 8.0 Release Signing Key <packaging@mongodb.com>

Se produce después sudo apt install -y mongodb-org Create a list file for MongoDB de ejecutar en el paso del procedimiento de instalación de MongoDB Community Edition. Suele deberse a un /etc/apt/sources.list.d/mongodb-org-8.2.list archivo faltante o mal configurado.

Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package mongodb-org
  1. Compruebe el contenido del archivo:

    cat /etc/apt/sources.list.d/mongodb-org-8.2.list
  2. Si el contenido no coincide con la documentación de su versión de Ubuntu, elimine el archivo y repita el paso Create a list file for MongoDB.

  3. Si el archivo no existe, créelo durante ese paso.

  4. Actualizar los repositorios y volver a intentar la instalación:

    sudo apt update
    sudo apt install -y mongodb-org

Ocurre durante sudo apt install -y mongodb-org el paso del procedimiento de instalación de MongoDB Community Edition. Suele deberse a un mongodb paquete de Ubuntu conflictivo ya instalado.

dpkg: error processing archive /var/cache/apt/archives/mongodb-org-server_8.2.0_amd64.deb (--unpack):
trying to overwrite '/usr/bin/mongod', which is also in package mongodb-server-core 1:3.6.3-0ubuntu1

Comprobar si hay conflicto:

sudo apt list --installed | grep mongo
mongodb/bionic,now 1:3.6.3-0ubuntu1 amd64 [installed]
mongodb-clients/bionic,now 1:3.6.3-0ubuntu1 amd64 [installed,automatic]
mongodb-server/bionic,bionic,now 1:3.6.3-0ubuntu1 all [installed,automatic]
mongodb-server-core/bionic,now 1:3.6.3-0ubuntu1 amd64 [installed,automatic]

Si el resultado muestra paquetes de Ubuntu como éste, elimínelos:

sudo apt remove mongodb
sudo apt purge mongodb
sudo apt autoremove

Nota

sudo apt purge mongodb Elimina los archivos de configuración predeterminados. Para conservar los archivos de configuración modificados, cópielos a otro directorio (p. ej., /home/your-user-name) antes de purgarlos.

Para paquetes mixtos:

Si la salida muestra mongodb-org mongodb los paquetes y, elimine mongodb-org primero y mongodb luego. Después de borrar todos los paquetes relacionados con MongoDB, vuelva a intentar instalar MongoDB Community Edition.

Ocurre al iniciar un. Suele deberse mongod mongod a otro proceso (normalmente otro) que utiliza el puerto configurado.

Socket is already in use
Failed to unlink socket file

Identificar el proceso:

El siguiente ejemplo utiliza ss para enumerar todos los sockets TCP (-t) y UDP (-u) abiertos en el estado LISTEN (-l) y el proceso que utiliza cada socket (-p) sin resolver ningún nombre de servicio o nombre de host (-n):

sudo ss -tulpn

Ejemplo de salida que muestra mongod en el puerto 27017:

Netid State Local Address:Port
udp UNCONN 127.0.0.53%lo:53 users:(("systemd-resolve",pid=663,fd=12))
udp UNCONN 10.1.16.87%enp0s3:68 users:(("systemd-network",pid=652,fd=15))
tcp LISTEN 127.0.0.53%lo:53 users:(("systemd-resolve",pid=663,fd=13))
tcp LISTEN 0.0.0.0:22 users:(("sshd",pid=819,fd=3))
tcp LISTEN 192.168.1.15:27017 users:(("mongod",pid=10027,fd=12))
tcp LISTEN 127.0.0.1:27017 users:(("mongod",pid=10027,fd=11))
tcp LISTEN ::]:22 users:(("sshd",pid=819,fd=4))

Puedes:

  • Cerrar el proceso existente

  • Seleccione un nuevo puerto para el mongod proceso en conflicto:
    1. Modificar en net.port el archivo de configuración

    2. Utilice en la línea de --port comandos

Ocurre en el mongod registro del proceso. Suele deberse a que un directorio de datos no existe o no es accesible mongod para.

Data directory ... not found
Attempted to create lock file on a read-only directory: ...

Al iniciarse como servicio (sudo systemctl start mongod o sudo service mongod start), esto puede significar:

  • dbPath en /etc/mongod.conf apunta a un directorio sin rwx permisos para el mongodb usuario o grupo

  • dbPath apunta a un directorio inexistente

Al iniciar desde la terminal, esto puede significar:

  • dbPath o apunta a un directorio --dbpath sin rwx permisos para el usuario o su grupo

  • El directorio no existe

Dependiendo de la causa, cree el directorio de datos o establezca los permisos y la propiedad adecuados.

  • Crear el directorio:

    Especifique el directorio de datos con storage.dbPath en el archivo de configuración o --dbpath en la línea de comando.

  • Establecer rutas predeterminadas:

    • apt Instalación del administrador de paquetes: El archivo de configuración predeterminado /etc/mongod.conf establece storage.dbPath en /var/lib/mongodb

    • mongod en la línea de comando --dbpath sin: /data/db

    Asegúrese de que el directorio de datos exista o cree el directorio utilizando mkdir antes de mongod iniciar.

  • Establecer permisos de directorio:

    Establecer permisos y propiedad apropiados:

    • El mongod rwx necesita permisos (lectura, escritura, ejecución)

    • Utilice chown y para configurar chmod user:group la propiedad y los permisos de antes de iniciar mongod

Volver

Community Edition

En esta página