Maybe read out the options first:
https://dev.mysql.com/doc/c-api/8.4/en/mysql-get-option.html
Thx for the link, here is a bit mess in fpc sources and mysql docs
1. less than mysql57dyn function mysql_options is not implemented. ok i moved to v5.7
2. mysql57dyn has outdated MYSQL_OPT_SSL_ENFORCE option. According to the docs - option is deprecated as of MySQL 5.7.11 and is removed in MySQL 8.0. But i tried
uses mysql57dyn;
var
SSLFlag : Integer; //also tried my_bool
MySQL : PMYSQL;
...............
begin
InitialiseMySQL; //load client library if dyn
SSLFlag := 0;
mysql_options(MySQL, MYSQL_OPT_SSL_ENFORCE, @SSLFlag);
if mysql_real_connect(MySQL, 'sql7.freesqldatabase.com', 'sql7796276', 'g3SKXnkJ5R', 'sql7796276', 0, Nil, 0) = nil then
begin
Str := IntToStr(mysql_errno(MySQL)) + ' ' + mysql_error(MySQL);
moLog.Lines.Add(Str);
end;
ReleaseMySQL;
end.
Still same result.
3. mysql80dyn has modern MYSQL_OPT_SSL_MODE ortion, but has no set of modes, required as option values SSL_MODE_DISABLED, SSL_MODE_PREFERRED, SSL_MODE_REQUIRED etc. so i cant use it
Any other ideas?
Is it possible because my libmysqlclient.so is a symlink to libmariadb.so.3 ? Mayme i need setup MariaDB somehow?