TLS/SSL error: SSL is required, but the server does not support it QMYSQL: Unable to connect

#include "mainwidget.h"
 
#include <QApplication>
 
#include <QtSql/QSqlDatabase>
#include <QtSql/QSqlError>
 
 
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
 
    qDebug() << "Runned...";
 
    QSqlDatabase db = QSqlDatabase::addDatabase("QMARIADB");
 
    //db.setConnectOptions("CLIENT_SSL=0"); // так не работает
 
    db.setHostName("host");
    db.setPort(3306);
    db.setDatabaseName("repairs_buys");
    db.setUserName("user");
    db.setPassword("password");
 
    if(!db.open()) {
        qDebug() << "Error:" << db.lastError().text();
    } else {
        qDebug() << "Connected successfully!";
    }
    db.close();
 
    QSqlDatabase::removeDatabase("repairs_buys");
 
    //MainWidget w;
    //w.show();
    return a.exec();
}

Я начал использовать Qt с MariaDB, и получаю вот такую ошибку: TLS/SSL error: SSL is required, but the server does not support it QMYSQL: Unable to connect.

Как отключить SSL в клиенте? На сервере он отключен. В интернете можно найти код для подключения без SSL и опции подключения такие как CLIENT_SSL не были установлены. По умолчанию должно работать без SSL. Почему у меня так не работает?


Ответы (2 шт):

Автор решения: Alexander Chernin

Попробуйте так:

db.setConnectOptions("SSL_MODE=DISABLED");

Или так:

//более старый синтаксис
db.setConnectOptions("MYSQL_OPT_SSL_MODE=0");
→ Ссылка
Автор решения: RomanSPB321

Оказывается, так работает из-за отcутствия libmariadb.dll! Как такое может быть? Но стало работать

→ Ссылка