При работе с базами данных в среде разработки Delphi часто возникают различные проблемы, в том числе и связанные с подключением к серверам MySQL через компоненты FireDAC. В данной статье мы рассмотрим один из типичных вопросов, связанных с ошибкой SSL соединения в FireDAC при работе с MySQL, и предложим решение.
Описание проблемы
Разработчик столкнулся с проблемой подключения к серверу MySQL 8.0.28 через FireDAC в среде Delphi 11.1. При попытке подключения возникала ошибка: "SSL connection error: unknown error number". Параметры подключения в обоих виртуальных машинах были одинаковыми, также как и настройки в MySQL. Однако, в редакторе соединений FireDAC указывалось, что используется библиотека libmysql.dll из папки C:\Windows\System32, которой на самом деле не существовало.
Шаги по устранению проблемы
Проверка библиотек
Для начала необходимо убедиться, что используются правильные версии библиотек libmysql.dll. Они должны соответствовать разрядности приложения: 32-битные для 32-битных приложений и 64-битные для 64-битных. Библиотеки должны быть расположены в соответствующих папках: C:\Windows\System32 для 64-битных и C:\Windows\SysWOW64 для 32-битных.
Пример кода
uses
SysUtils;
var
HModule: THandle;
begin
HModule := LoadLibrary('libmysql.dll');
if HModule <> 0 then
ShowMessage(GetModulePath(HModule))
else
ShowMessage('Не удалось загрузить библиотеку');
end;
Этот код поможет определить, откуда загружается библиотека libmysql.dll.
Обновление MySQL
В некоторых случаях помогает обновление сервера MySQL до последней стабильной версии. Однако, как упоминалось в комментариях, в некоторых случаях решение состояло в откате версии MySQL до 8.0.23.
Использование libmariadb.dll
В качестве альтернативного решения можно использовать библиотеку libmariadb.dll вместо libmysql.dll. Это позволило разработчику успешно подключиться к серверу MySQL в Delphi 10.3.
Переустановка MySQL
В некоторых случаях проблема решалась переустановкой сервера MySQL.
Заключение
Проблемы подключения к MySQL через FireDAC в Delphi могут быть вызваны различными причинами, такими как несовместимость библиотек, неправильные настройки соединения или проблемы с установкой сервера MySQL. Важно внимательно проверить все компоненты системы и следовать рекомендациям разработчиков компонентов и сервера.
Приведенные выше шаги помогут устранить наиболее распространенные ошибки и обеспечить стабильную работу с базами данных в среде Delphi.
Статья о решении проблемы подключения к MySQL через FireDAC в Delphi 11.1, включая шаги по устранению ошибки SSL соединения.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.