
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
3주차 3-12 mongoDB 연결 실패되어 문의드립니다.


# 터미널 오류
source /Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/bin/activate
The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.
SSG-doyeon:pythonprac doyeon.lee$ source /Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/bin/activate
(venv) SSG-doyeon:pythonprac doyeon.lee$ /Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/bin/python /Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/dbprac.py
Traceback (most recent call last):
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/dbprac.py", line 9, in <module>
db.users.insert_one(doc)
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/lib/python3.8/site-packages/pymongo/collection.py", line 697, in insert_one
self._insert(document,
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/lib/python3.8/site-packages/pymongo/collection.py", line 612, in _insert
return self._insert_one(
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/lib/python3.8/site-packages/pymongo/collection.py", line 601, in _insert_one
self.__database.client._retryable_write(
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/lib/python3.8/site-packages/pymongo/mongo_client.py", line 1279, in _retryable_write
with self._tmp_session(session) as s:
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/contextlib.py", line 113, in __enter__
return next(self.gen)
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/lib/python3.8/site-packages/pymongo/mongo_client.py", line 1611, in _tmp_session
s = self._ensure_session(session)
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/lib/python3.8/site-packages/pymongo/mongo_client.py", line 1598, in _ensure_session
return self.__start_session(True, causal_consistency=False)
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/lib/python3.8/site-packages/pymongo/mongo_client.py", line 1551, in __start_session
server_session = self._get_server_session()
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/lib/python3.8/site-packages/pymongo/mongo_client.py", line 1584, in _get_server_session
return self._topology.get_server_session()
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/lib/python3.8/site-packages/pymongo/topology.py", line 431, in get_server_session
self._select_servers_loop(
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/lib/python3.8/site-packages/pymongo/topology.py", line 199, in _select_servers_loop
raise ServerSelectionTimeoutError(
pymongo.errors.ServerSelectionTimeoutError: ac-5jrn8j8-shard-00-01.cicarmy.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108),ac-5jrn8j8-shard-00-00.cicarmy.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108),ac-5jrn8j8-shard-00-02.cicarmy.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)
(venv) SSG-doyeon:pythonprac doyeon.lee$
pymongo.errors.ServerSelectionTimeoutError: ~ [SSL: CERTIFICATE_VERIFY_FAILED]~ 를 포함한 에러 메시지가 뜨면서 실행이 되지 않아서 'certifi' 패키지 설치하고 아래와 같이 코드 추가 후 재실행해봐도 실패되었습니다.

# 터미널 오류
The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.
SSG-doyeon:pythonprac doyeon.lee$ source /Users/doyeon.lee/Desktop/sparta/웹개발 종합반/3주차/pythonprac/venv/bin/activate
(venv) SSG-doyeon:pythonprac doyeon.lee$ /Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/bin/python /Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/dbprac.py
Traceback (most recent call last):
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/dbprac.py", line 6, in <module>
client = MongoClient('mongodb+srv://dianaldy:test1234@cluster0.cicarmy.mongodb.net/?retryWrites=true&w=majority', tlsCAFile=ca)
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/lib/python3.8/site-packages/pymongo/mongo_client.py", line 552, in __init__
keyword_opts = dict(common.validate(k, v)
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/lib/python3.8/site-packages/pymongo/mongo_client.py", line 552, in <genexpr>
keyword_opts = dict(common.validate(k, v)
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/lib/python3.8/site-packages/pymongo/common.py", line 619, in validate
value = validator(option, value)
File "/Users/doyeon.lee/Desktop/sparta/웹개발종합반/3주차/pythonprac/venv/lib/python3.8/site-packages/pymongo/common.py", line 129, in raise_config_error
raise ConfigurationError("Unknown option %s" % (key,))
pymongo.errors.ConfigurationError: Unknown option tlsCAFile
(venv) SSG-doyeon:pythonprac doyeon.lee$ pip install certifi
Requirement already satisfied: certifi in ./venv/lib/python3.8/site-packages (2022.12.7)
(venv) SSG-doyeon:pythonprac doyeon.lee$ pip install pymongo dnspython
Requirement already satisfied: pymongo in ./venv/lib/python3.8/site-packages (3.8.0)
Requirement already satisfied: dnspython in ./venv/lib/python3.8/site-packages (2.3.0)
(venv) SSG-doyeon:pythonprac doyeon.lee$
from pymongo import MongoClient
import certifi
ca = certifi.where()
client = MongoClient('mongodb+srv://dianaldy:test1234@cluster0.cicarmy.mongodb.net/?retryWrites=true&w=majority', tlsCAFile=ca)
db = client.dbdianaldy
doc = {
'name':'영수',
'age':24
}
db.users.insert_one(doc)
