急なエラー
OperationalError: (2006, ‘SSL connection error: SSL_CTX_set_tmp_dh failed’)
環境はVMware+ubuntu。
いつも行っているスクレイピング前に、このエラーが急に出ました。
やったこと
仮想環境上、端末(terminal)でconda list。
mysqlclientのバージョンを調べる。
Anaconda Navigatorを起動し、mysqlclientをアップデート。
conda clean –allしても遅い?のか、作業進行が見えないため方針を変更する。
端末(terminal)へ戻り、
conda update mysqlclient
うまくアップデートできていない模様。
このままだとどのみちこの仮想環境が使えなくなるので、全体のアップデートをかけてみることにする。
conda update conda
しばらく待つ…ディスク容量不足のため不要ファイルを消す。
Anaconda Navigatorを起動し、sql関連をアップデートすることにして、しばらくアップデート待ち。
どうにも作業進行しないので、
pip3 install mysqlclient
アップデートに成功後、エラー内容が変化。
OperationalError: (2026, ‘SSL connection error: SSL_CTX_set_tmp_dh failed’)
Python MySQL (2026)SSL connection error – Trouvaille的文章 – 知乎
https://zhuanlan.zhihu.com/p/58995940opensslが1.1.1bにアップグレードされました。OpenSL1.1.1a以降には2026のバグがあります。1.0.2r以下へのダウングレードは解決できます。
上記書き込みを発見し、更に作業。
conda install openssl=1.0.2r
更にVMwareを再起動。
解決しないため、新しい仮想環境を作成。
import mysql.connector
conn = mysql.connector.connect(
host=’ホスト名’,
user=’ユーザー名’,
password=’パスワード’,
database=’データベース名’
)
これでエラーなし。
だが、もともとの状態からの復旧じゃないのがくやしいところ。
当サイトはリンクフリーです。
ご自身のブログでの引用、TwitterやFacebook、Instagram、Pinterestなどで当サイトの記事URLを共有していただくのは、むしろありがたいことです。
事前連絡や事後の連絡も不要ですが、ご連絡いただければ弊社も貴社のコンテンツを紹介させていただく可能性がございます。