중요
MongoDB 8.2 은 최신 마이너 출시하다 입니다. MongoDB 8.2부터 특정 사용 사례의 온프레미스 배포 (MongoDB Community 및 Enterprise) 에 마이너 릴리스를 사용할 수 있습니다. 자세한 내용은 MongoDB 버전 관리를 참조하세요.
온프레미스 사용이 지원되는 최신 MongoDB 버전을 설치하려면 설치 지침을 참조하세요.
공개 키 검색 오류
MongoDB Community Edition 설치의 Import the public key used by the package management system 단계에서 발생합니다.
gpg: no valid OpenPGP data found.
솔루션
문서에 설명된 대로 정확히 명령을 복사합니다. 작업은 OK로 응답해야 합니다.
시스템에 MongoDB 공개 GPG 키가 있는지 확인합니다.
sudo apt-key list
예상 출력은 다음과 유사합니다.
/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>
sudo apt update 오류
MongoDB Community Edition 설치 절차의 일부로 sudo apt update 를 실행 후 발생합니다. MongoDB 공개 GPG 키 누락으로 인해 발생하는 경우가 많습니다.
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.
솔루션
MongoDB Community Edition 설치의 Import the public key used by the package management system 단계를 반복합니다. 명령과 키를 문서화된 대로 정확하게 복사합니다.
키를 확인합니다.
sudo apt-key list
예상 출력:
-------------------- 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>
sudo apt install -y mongodb-org 오류
MongoDB Community Edition 설치 절차의 Create a list file for MongoDB 단계에서 sudo apt install -y mongodb-org 를 실행 후 발생합니다. /etc/apt/sources.list.d/mongodb-org-8.2.list 파일 누락되거나 잘못 구성되어 발생하는 경우가 많습니다.
Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package mongodb-org
솔루션
파일 내용을 확인합니다.
cat /etc/apt/sources.list.d/mongodb-org-8.2.list 내용이 Ubuntu 버전의 설명서와 일치하지 않으면 파일 제거 Create a list file for MongoDB 단계를 반복합니다.
파일 없는 경우 해당 단계에서 파일을 만듭니다.
리포지토리를 업데이트하고 설치를 다시 시도합니다.
sudo apt update sudo apt install -y mongodb-org
dpkg-deb: error 패키지 충돌
MongoDB Community Edition 설치 절차의 sudo apt install -y mongodb-org 단계에서 발생합니다. 종종 이미 설치된 Ubuntu mongodb 패키지 충돌로 인해 발생합니다.
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
솔루션
충돌 확인:
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]
출력에 다음과 같은 Ubuntu 패키지가 표시되면 해당 패키지를 제거 .
sudo apt remove mongodb sudo apt purge mongodb sudo apt autoremove
참고
sudo apt purge mongodb 기본값 구성 파일을 제거합니다. 수정된 구성 파일을 보존하려면 삭제하기 전에 다른 디렉토리 (예: /home/your-user-name)에 복사합니다.
혼합 패키지의 경우:
출력에 mongodb-org 및 mongodb 패키지가 모두 표시되면 먼저 mongodb-org 를 제거 다음 mongodb 패키지를 제거 . 모든 MongoDB 관련 패키지를 지운 후 MongoDB Community Edition 설치를 다시 시도합니다.
mongod 소켓 오류
mongod를 시작할 때 발생합니다. 구성된 포트를 사용하는 다른 프로세스 (일반적으로 다른 mongod)로 인해 발생하는 경우가 많습니다.
Socket is already in use
Failed to unlink socket file
솔루션
프로세스 식별합니다.
다음 예시 ss 를 사용하여 LISTEN (-l) 상태 의 열려 있는 모든 TCP(-t) 및 UDP(-u) 소켓과 각 소켓(-p)을 사용하는 프로세스 확인하지 않고 나열합니다. 서비스 이름 또는 호스트 이름(-n):
sudo ss -tulpn
포트 27017의 mongod 을(를) 표시하는 출력 예시:
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))
둘 중 하나를 수행하면 됩니다.
데이터 디렉토리 오류
mongod 프로세스 로그에서 발생합니다. 종종 존재하지 않거나 mongod에 액세스할 수 없는 데이터 디렉토리로 인해 발생합니다.
Data directory ... not found Attempted to create lock file on a read-only directory: ...
서비스(sudo systemctl start mongod 또는 sudo
service mongod start)로 시작할 때 이는 다음 MEAN 할 수 있습니다.
터미널에서 시작할 때 이는 다음 MEAN 할 수 있습니다.
솔루션
원인에 따라 데이터 디렉토리 만들거나 적절한 권한 및 소유권을 설정하다 .
디렉토리 만듭니다.
설정
storage.dbPath파일 에서 또는 명령줄 에서 을--dbpath사용하여 데이터 디렉토리 지정합니다.기본값 경로를 설정합니다:
apt패키지 관리자 설치: 기본값/etc/mongod.conf설정 파일storage.dbPath를/var/lib/mongodb로 설정합니다.
mongod을(를)시작하기 전에 데이터 디렉토리 존재하는지 확인하거나 을(를) 사용하여 디렉토리 생성하세요.mkdir디렉토리 권한을 설정합니다:
적절한 권한 및 소유권을 설정합니다.