尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Windows系统下QT5.9连接MYSQL 8.0以上驱动版本过低问题
1.编译Windows下驱动编译QT SQL相关驱动这里特别需要注意64和32位问题如果是32位的QT mingw编译64位会失败无法识别驱动编译可以参考下面文章需要注意的时候在编译之前看一下步骤2https://www.cnblogs.com/qq21497936/p/17246609.html前言 之前特定的mysql版本msvc版本已经调通了但是为了更好的跨平台所以选择用mingw32版本于是需要编译mysql驱动的mingw32版本的驱动库以便提供给qt连接mysql使用。 编译环境 Qt5.9.3 mingw32 安装得时候记得要勾选上源码 mysql-installer-https://www.cnblogs.com/qq21497936/p/17246609.html2.查看高版本数据库信息当前 32 位libmysql.dll只支持较旧的 TLS 协议而服务器可能只允许 TLS 1.2 或更高版本。在其他能够连接该数据库的客户端中执行一下命令SELECT VERSION(); SHOW VARIABLES LIKE tls_version; SHOW VARIABLES LIKE require_secure_transport; SHOW VARIABLES LIKE have_ssl;如果出现tls_version TLSv1.2说明服务器只允许 TLS 1.2而当前libmysql.dll较旧就会出现你现在的错误。MySQL 新版本已经逐步弃用或移除 TLS 1.0、TLS 1.1客户端和服务器必须存在共同支持的 TLS 版本。在这个情况下再次执行命令SHOW VARIABLES LIKE require_secure_transport; SHOW VARIABLES LIKE have_ssl;如果出现require_secure_transport OFF则服务器端已经确认“不强制加密连接”因此可以绕过当前 TLS 1.2 不兼容问题。3.重新编译驱动找到C:\Qt\Qt5.9.9\5.9.9\Src\qtbase\src\plugins\sqldrivers\mysql\qsql_mysql.cpp这个文件此处是我的安装路径找到这段函数if (!(d-mysql mysql_init((MYSQL*) 0))) { ... return false; }在它的下面插入// 在这里插入关闭SSL关键位置 #if defined(MYSQL_VERSION_ID) MYSQL_VERSION_ID 50711 unsigned int sslMode SSL_MODE_DISABLED; mysql_options(d-mysql, MYSQL_OPT_SSL_MODE, sslMode); #endif重新编译将生成的这两个文件进行替换
RELATED

相关推荐

Linux文件上传实战:从SCP到Rsync,掌握运维核心技能

Linux文件上传实战:从SCP到Rsync,掌握运维核心技能

1. 项目概述:为什么“上传”是Linux运维的基石“linux上传”这四个字,听起来简单得不能再简单,不就是把文件从本地传到远程服务器吗?但如果你真这么想,那可能还没真正理解Linux运维工作的日常。我干了十几年运维&#…

📅 2026/9/8 21:44:31
Python开发者如何用Flet框架快速构建跨平台应用:从入门到精通的完整指南

Python开发者如何用Flet框架快速构建跨平台应用:从入门到精通的完整指南

Python开发者如何用Flet框架快速构建跨平台应用:从入门到精通的完整指南 【免费下载链接】flet Build realtime web, mobile and desktop apps in Python only. No frontend experience required. 项目地址: https://gitcode.com/gh_mirrors/fl/flet 你是否厌…

📅 2026/9/9 14:54:56
怎样高效获取网络文档:智能提取工具的实战技巧

怎样高效获取网络文档:智能提取工具的实战技巧

怎样高效获取网络文档:智能提取工具的实战技巧 【免费下载链接】kill-doc 看到经常有小伙伴们需要下载一些免费文档,但是相关网站浏览体验不好各种广告,各种登录验证,需要很多步骤才能下载文档,该脚本就是为了解决您的…

📅 2026/9/12 8:49:40
MORE NEWS

更多资讯

📰

如何用 hyprctl output create 为 Hyprland 动态添加和移除虚拟显示器?

如何用 hyprctl output create 为 Hyprland 动态添加和移除虚拟显示器? 【免费下载链接】Hyprland Hyprland is an independent, highly customizable, dynamic tiling Wayland compositor that doesnt sacrifice on its looks. 项目地址: https://gitcode.com/Gi…

📰

ClaudeCode AI编程助手服务器部署与优化指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

企业级数据可视化库选型:高吞吐、低延迟、强交互实战评测

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

西门子S7-1200 PLC实现四节传送带控制系统详解

1. 项目概述:四节传送带控制系统的PLC实现在工业自动化领域,传送带系统是最基础也是最核心的物料输送设备之一。我最近用西门子S7-1200 PLC完成了一个四节传送带控制系统的课设项目,这个设计不仅包含了完整的梯形图程序,还整合了故…

📰

ARM架构与交叉编译实战:从工具链到Qt迁移的避坑指南

“Exec format error”——如果你在 x86_64 的 Ubuntu 上为树莓派或者某个 ARM 开发板编译完程序,把它 scp 过去执行,大概率会撞上这行报错。我第一次遇到时,第一反应是“我是不是包拷错了”,傻乎乎地反复确认了 SHA256 校验值&am…

📰

Cataclysm-DDA 建造教程:用 2 步建起第一堵砖墙

Cataclysm-DDA 建造教程:用 2 步建起第一堵砖墙 【免费下载链接】Cataclysm-DDA Cataclysm - Dark Days Ahead. A turn-based survival game set in a post-apocalyptic world. 项目地址: https://gitcode.com/GitHub_Trending/ca/Cataclysm-DDA 本文带你走通…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬