BE/Python

[Python][Error] MongoDB, pymongo

swotato 2025. 9. 3. 15:33

상황

  • mongodb connection url을 수정함. (수정 내용: 레플리카셋 이름 추가)
  • 에러 발생.
2024-12-18 01:43:17,290 uvicorn.error INFO     Waiting for application startup.
mongodb://neural:neuralneuro1ga@db1.neuralworks.io:28000,db2.neuralworks.io:28000?replicaSet=nsReplicaSet
2024-12-18 01:43:17,291 src.database.mongodb INFO     mongo connect mongodb://neural:neuralneuro1ga@db1.neuralworks.io:28000,db2.neuralworks.io:28000?replicaSet=nsReplicaSet
ERROR:    Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/starlette/routing.py", line 526, in lifespan
    async for item in self.lifespan_context(app):
  File "/usr/local/lib/python3.7/site-packages/starlette/routing.py", line 467, in default_lifespan
    await self.startup()
  File "/usr/local/lib/python3.7/site-packages/starlette/routing.py", line 502, in startup
    await handler()
  File "./src/app.py", line 76, in on_app_start
    await connect_mongo(mongo_conn_url)
  File "./src/database/mongodb.py", line 31, in connect_mongo
    minPoolSize=min_pool_size,
  File "/usr/local/lib/python3.7/site-packages/motor/core.py", line 157, in __init__
    delegate = self.__delegate_class__(*args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/pymongo/mongo_client.py", line 641, in __init__
    connect_timeout=timeout)
  File "/usr/local/lib/python3.7/site-packages/pymongo/uri_parser.py", line 451, in parse_uri
    raise InvalidURI("A '/' is required between "
pymongo.errors.InvalidURI: A '/' is required between the host list and any options.

 

해결

URL 에서 호스트 리스트와 옵션 사이에는 반드시 ‘/’가 필요함.

"/" 추가!!!

mongodb://{user name}:{password}@{db host}:{port} / ?{query parameters}

(실제로는 공백 X)

 

'BE > Python' 카테고리의 다른 글

[Python][Error] disutil 모듈  (0) 2025.09.03