используйте tls1.2 с python 3.5 и сервером mysql

0

Я успешно выполнил соединение с моим приложением python на сервере mysql, следуя https://dev.mysql.com/doc/connector-python/en/connector-python-connectargs.html

Проблема в том, что я использую tls версии 1. Но я хочу использовать как минимум tls 1.2

На сервере mysql у меня есть настройка только для использования tls1.1 и 1.2. Когда я пытаюсь подключиться к mysql, python жалуется на неправильную версию.

mysql.connector.errors.InterfaceError: 2055: 
Lost connection to MySQL server 'at '192.168.99.100:3306','
 system error: 1 [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1045)

print (ssl.OPENSSL_VERSION) показывает мне OpenSSL 1.0.2d 9 июля 2015 г. Что мне делать, чтобы python 3.5 использовал tls1.2

код, который я использую

from tkinter import *
import mysql.connector
from mysql.connector.constants import ClientFlag
from datetime import datetime
import ssl
print(ssl.OPENSSL_VERSION)
config = {
    'user': 'user',
    'password': 'password',
    'host': '192.168.99.100',
    'database' : "pizza",
    'client_flags': [ClientFlag.SSL],
    'ssl_ca': 'C:\\Users\\Linux\\PycharmProjects\\Kassa\\ca-cert.pem',
    'ssl_cert':'C:\\Users\\Linux\\PycharmProjects\\Kassa\\client-cert.pem',
    'ssl_key':'C:\\Users\\Linux\\PycharmProjects\\Kassa\\client-key.pem'
}
mydb = mysql.connector.connect(**config)
mycursor = mydb.cursor()
Теги:
python-3.x
tls1.2

1 ответ

0

Потеряв много часов, я наконец выяснил эту проблему. Проблема очень проста. Я использовал pycharm и загрузил неправильный sql-коннектор, который поддерживал только tls1. Захватив mysql-connector-python с сайта mysql, я получил правильную версию 8.0.12

Поэтому в будущем проверьте всю версию программного обеспечения, которое вы используете лучше.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню