Recently, I faced this error in our Docker-Container environment. All the necessary packages were already installed but still, I was facing this clueless error. I search a bit and after an hour and so I found the exact reason and solution for this error.
To know more about this error in detail. Please follow this Github thread.
https://github.com/mkleehammer/pyodbc/issues/610
https://github.com/mkleehammer/pyodbc/issues/610#issuecomment-587523802
Solution: It's because the server's certificate has too weak a key.
In case you are using Linux env directly/not the Docker one. Just edited /etc/ssl/openssl.cnf and change these 2 lines.
MinProtocol = TLSv1.0
CipherString = DEFAULT@SECLEVEL=1
In case you are also using a container, please add these three lines to your Docker file.
RUN chmod +rwx /etc/ssl/openssl.cnf
RUN sed -i 's/TLSv1.2/TLSv1/g' /etc/ssl/openssl.cnf
RUN sed -i 's/SECLEVEL=2/SECLEVEL=1/g' /etc/ssl/openssl.cnf
Thanks!! Enjoy Programming!
Reference Links:
https://github.com/mkleehammer/pyodbc/issues/610