IT

mongodb에 강력하지 않습니다. errno : 61 연결이 거부되었습니다.

lottoking 2020. 9. 8. 08:13
반응형

mongodb에 강력하지 않습니다. errno : 61 연결이 거부되었습니다.


최근에 Homebrew 와 함께 mongodb-2.6.0을 설치했습니다 . 사용하여 설치 한 후 mongo명령 을 사용하여 연결을 시도했습니다 . 딱 수없는 다음 오류가 표시됩니다.

Failed to connect to 127.0.0.1:27017, reason: errno:61 Connection refused

Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed at src/mongo/shell/mongo.js:146

exception: connect failed

mongodb 서비스가 Mac에서 실행되지 않을 때 보관할 수 없습니다. 그것을 시작하기 위해 노력했습니다.

brew services start mongodb

그리고 작동했습니다.

편집 : homebrew에 대한이 PR에 대한 토론에 따르면 : https://github.com/Homebrew/homebrew/issues/30628

brew services더 이상 사용되지 않는 것, 나는 SO를 둘러싼 고 이제 다음 질문에 대한 답을 찾았습니다 .Linux / OS X에서 mongod 서비스를 시작하는 올바른 방법은 무엇입니까?


나는 똑같은 문제가 발생하고 여기에 에이 오류를 피하기 위해 명확한 단계별 프로세스가 있습니다.

1 단계 -설치 (MongoDB를 설치 한 경우이 단계를 이미지 실행) :

brew update
brew install mongodb

2 단계 -Mongo Daemon 실행 :

mkdir -p /data/db
sudo mongod

3 단계 -Mongo Shell 인터페이스 실행 :

mongo

이 순서로 mongo오류없이 명령 을 듣습니다 . 또한 이 블로그 에서 오류 추적과 그 해결책 에 대해 자세히 설명했습니다 .


문제를 해결하기 위해 "brew install mongodb"를 사용 후 brew가 제공하는 지침을 따릅니다.

로그인시 mongodb를 시작 비용 :

ln -sfv /usr/local/opt/mongodb/*.plist ~/Library/LaunchAgents

그런 다음 지금 mongodb를로드 비용 :

launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist

또는 launchctl을 사용할 경우 필요하지 않은 경우 다음을 사용할 수 있습니다.

mongod --config /usr/local/etc/mongod.conf

마지막 명령을 예방할 수 있습니다. 작동하지 않고 두 번째 명령을 실행해야합니다. 미래에 나를 구하기 위해. 나도 첫 번째 명령을 실행했습니다. 도움이 되셨기를 바랍니다.

Hrishi의 사용 방법을 편집brew services mongodb start 합니다. 나는 그들이 몽고 문서에 작성 생각한다.


mongo 셸을 사용할 수 있습니다.

몽고

그런 다음 이전 탭으로 돌아가 다시 시도하십시오. mongoshell을 설정하는 데 문제가있는 경우 mongo 쉘에서 다음 링크를 확인하십시오. http://docs.mongodb.org/manual/tutorial/manage-mongodb-processes/ 또는 mongodb 설치에 대한 링크 : http : / /docs.mongodb.org/manual/tutorial/install-mongodb-on-os-x /


mongod명령 줄에서 전화 할 때 동일한 문제가 발생했습니다 .

대신 호출 하여이 문제를 해결했습니다 sudo mongod.


동일한 오류가 발생했지만 근본 원인이 다릅니다. 다른 사람이 문제에 부딪 힐 경우를 대비하여 여기에 해결책을 게시 할 것이라고 생각했습니다. 실행 중에 Mac이 부적절하게 종료 된 후이 오류가 발생했습니다 mongorestore -d foo dump/foo/.

TL; DR : 나는 손상된 제거하여 문제를 해결 foo.ns와 함께 파일을 foo.0, foo.1... 내 데이터 폴더에서 /usr/local/var/mongodb/. 그런 다음 mongo 서버를 다시 시작하고 brew services restart mongodb정상으로 돌아 왔습니다.

세부 정보 : brew 또는 launchctl을 통해 mongodb 서비스를 시작하거나 다시 시작하려고해도 계속 오류가 발생했습니다. 결국 실행을했는데 mongod --dbpath /usr/local/var/mongodb 서비스가 실제로 시작되지 않았고 시작 시퀀스에 다음 오류가 포함되었습니다 [initandlisten] bad .ns file: /usr/local/var/mongodb/foo.ns [initandlisten] User Assertion: 10079:bad .ns file length, cannot open database . 잘못된 .ns파일과 나머지 데이터 파일을 제거했고 다음에 서비스를 시작할 때 좋았습니다. .


나를 위해 osx에서 실행중인 이전 인스턴스를 종료 한 다음 다시 시작해야했습니다.

$>ps -aef | grep mongo
502  8047     1   0 11:52AM ??         0:00.23 /usr/local/opt/mongodb/bin/mongod --config /usr/local/etc/mongod.conf 

$>sudo kill 8047

$>sudo mongod

homebrew를 사용하여 mongo 3.6으로 업그레이드 한 후이 오류가 발생했습니다.

로그 /usr/local/var/log/mongodb/mongo.log에 메시지가 포함되어 shutting down with code:62있습니다. 이 오류 코드는 기존 데이터베이스가 너무 오래되어 현재 버전의 mongo로 실행할 수 없음을 의미합니다.

다른 질문 에서 두 가지 해결책을 찾았습니다 .

업그레이드하기로 결정했습니다. 제 경우에는 3.4로 다운 그레이드하고 mongo 콘솔에서 명령을 실행 한 다음 다시 업그레이드해야했습니다. Mongo에서는 한 번에 하나의 주요 버전을 업그레이드해야하므로 이전에 얼마나 오래 있었는지에 따라 추가 단계가있을 수 있습니다. 문서가 안내합니다.

brew switch*brew services restart명령은 상대적으로 고통 버전간에 교환했다.


MongoDB를 이미 설치 한 경우 먼저 mongod를 sudo 사용자로 실행하려고 시도하면 mongod를 수퍼 유저로 실행하지 않기 때문에 문제가 발생했습니다.

맨 아래 에 두 명령 ( mongodsudo mongod )에 대한 o / p를 붙여 넣었습니다 . 당신도 확인할 수 있지만

먼저 이것을 시도하십시오

sudo mongod

이거 말고

mongod

다음 명령을 순서대로 실행하여 MAC OS X Sierra 10.12.6에 MongoDB를 설치했습니다.

brew update
brew install mongodb --devel
brew services start mongodb

그런 다음 mongod 프로세스가 데이터를 쓸 디렉토리를 생성했습니다. 이것은 기본적으로 mongod 프로세스가 가져 오므로 선택 사항입니다. https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os 에서 유용한 가이드를 참조하십시오. -엑스/

sudo mkdir -p /data/db

마지막 으로 다음과 같이 mongod 프로세스를 시작했습니다.

sudo mongod

의 Oputput mongod (실패)와 sudo는 mongod 내 터미널에서 명령을 (성공).

MacBook-Pro-2:appscheck admin$ mongod
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] MongoDB starting : pid=2698 port=27017 dbpath=/data/db 64-bit host=MacBook-Pro-2.local
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] db version v3.4.10
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] git version: 078f28920cb24de0dd479b5ea6c66c644f6326e9
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.2n  7 Dec 2017
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] allocator: system
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] modules: none
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] build environment:
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten]     distarch: x86_64
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten]     target_arch: x86_64
2017-12-10T08:12:06.166+0530 I CONTROL  [initandlisten] options: {}
2017-12-10T08:12:06.166+0530 I STORAGE  [initandlisten] exception in initAndListen: 20 Attempted to create a lock file on a read-only directory: /data/db, terminating
2017-12-10T08:12:06.166+0530 I NETWORK  [initandlisten] shutdown: going to close listening sockets...
2017-12-10T08:12:06.166+0530 I NETWORK  [initandlisten] shutdown: going to flush diaglog...
2017-12-10T08:12:06.167+0530 I CONTROL  [initandlisten] now exiting
2017-12-10T08:12:06.167+0530 I CONTROL  [initandlisten] shutting down with code:100


MacBook-Pro-2:appscheck admin$ sudo mongod
Password:
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] MongoDB starting : pid=2700 port=27017 dbpath=/data/db 64-bit host=MacBook-Pro-2.local
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] db version v3.4.10
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] git version: 078f28920cb24de0dd479b5ea6c66c644f6326e9
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.2n  7 Dec 2017
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] allocator: system
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] modules: none
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] build environment:
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten]     distarch: x86_64
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten]     target_arch: x86_64
2017-12-10T08:12:14.084+0530 I CONTROL  [initandlisten] options: {}
2017-12-10T08:12:14.084+0530 I STORAGE  [initandlisten] wiredtiger_open config: create,cache_size=7680M,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] 
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] 
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] 
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
2017-12-10T08:12:14.560+0530 I FTDC     [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data'
2017-12-10T08:12:14.707+0530 I INDEX    [initandlisten] build index on: admin.system.version properties: { v: 2, key: { version: 1 }, name: "incompatible_with_version_32", ns: "admin.system.version" }
2017-12-10T08:12:14.707+0530 I INDEX    [initandlisten]      building index using bulk method; build may temporarily use up to 500 megabytes of RAM
2017-12-10T08:12:14.719+0530 I INDEX    [initandlisten] build index done.  scanned 0 total records. 0 secs
2017-12-10T08:12:14.720+0530 I COMMAND  [initandlisten] setting featureCompatibilityVersion to 3.4
2017-12-10T08:12:14.720+0530 I NETWORK  [thread1] waiting for connections on port 27017

그런 다음 MongoDB 쿼리를 시작하기 위해 새 터미널을 열었습니다 .

MacBook-Pro-2:appscheck admin$ mongo
MongoDB shell version v3.4.10
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.10
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
    http://docs.mongodb.org/
Questions? Try the support group
    http://groups.google.com/group/mongodb-user
Server has startup warnings: 
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] 
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] 
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] 
2017-12-10T08:12:14.472+0530 I CONTROL  [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
> show dbs;
admin  0.000GB
local  0.000GB
> use practice
switched to db practice
>

그게 다야.


나는 같은 문제가 있었고 로그 파일을 보면 이것을 보았다.

{2019-03-09T11:57:32.136-0500 I STORAGE  [initandlisten] 
exception in initAndListen: NonExistentPath: 
Data directory /usr/local/var/mongodb not found., terminating}

그래서 /usr/local/var/mongodbbrew services restart mongodb 명령을 실행하여 mongo 콘솔을 열 수 있는 디렉토리를 만들었습니다 .


내 생각 엔 "mongo"명령을 통해 테스트에 액세스하려고 시도하는 동안 데이터베이스를 실행하지 않는 것 같습니다.

먼저 터미널에서 다음 명령을 실행하십시오.

mongod 

그런 다음 다른 터미널 창을 열고 다음을 실행합니다.

몽고

이제 모든 것이 작동합니다.


mongod를 실행하는 동안 "sudo rm /data/db/mongod.lock"파일을 삭제하면 유사한 오류가 해결됩니다. 이제 mongod를 실행 한 다음 mongo를 실행할 수 있습니다.

참고 URL : https://stackoverflow.com/questions/23418134/cannot-connect-to-mongodb-errno61-connection-refused

반응형