DevOps/Database
mongo compass로 root 계정 생성하기
soohey
2022. 10. 25. 15:43
mongoDB를 fast api에 붙이는 중에 계정 생성하는 법을 몰라 athentic error가 발생해서 쓰는 글
1. 오류 및 원인 : mongodb authentication failed
계정 생성을 해줬는데도 에러가 계속 발생했다.
내가 사용할 collection 에 들어가서 계정 생성을 해줬는데 안되길래 봣더니 admin collection에서 계정 생성해줘야된다고 함
2. 해결
https://www.mongodb.com/try/download/compass
위 링크에서 MongoDB Compass를 다운받아 접속한다.
하단의 MONGOSH 쉘에서 계정 생성을 해준다.
use admin
db.createUser({user:"root", pwd:"root", roles:[{role:"readWrite", db:''}]})
db 에 사용할 컬렉션 이름을 기입해주면 됨
db.getUser("root")
db.getUser로 계정이 존재하는지 확인할 수 있다.
FastAPI에서 mongo접속 정보
from pymongo import MongoClient
client = MongoClient(
f"mongodb://{DB_USERNAME}:{DB_PASSWORD}@{DB_HOST}:{DB_PORT}"
)
db = client[DB_NAME]
collection = db[collection_name]