当前位置: 首页 > article >正文

MySQL的驱动安装

1、下载并安装MySQL

下载地址:

建议在下列框中选择LTS长期支持版本,下载对应的MSI安装文件。

安装完成后,将MySQL的环境bin路径添加到环境变量中。

可以运行MySQL Configurator进行配置,主要设置密码,并初始化。其余可以按默认设置。设置完成后,点击Excute,对MySQL进行初始化。

也可以使用CMD命令对MySQL进行初始化、设置密码等操作:

mysqld --initialize-insecure        #初始化
mysqld --version                    #查询版本
mysqld -install                     #注册服务 
net start mysql                     #启动mysql服务
net stop mysql                      #停止mysql服务
mysqladmin -u root password xxxx    #修改密码为1234

2、编译mysql项目

2.1打开并编辑项目配置

打开Qt\5.15.2\Src\qtbase\src\plugins\sqldrivers\mysql目录下的mysql.pro,修改pro文件:

TARGET = qsqlmysql

HEADERS += $$PWD/qsql_mysql_p.h
SOURCES += $$PWD/qsql_mysql.cpp $$PWD/main.cpp

#注释此行
#QMAKE_USE += mysql

OTHER_FILES += mysql.json

PLUGIN_CLASS_NAME = QMYSQLDriverPlugin

#添加:mysql的lib路径
LIBS += -L$$quote(D:/ProgramFiles/MySQL/MySQL8.4/lib) -llibmysql
#添加:mysql的include路径
INCLUDEPATH += $$quote(D:/ProgramFiles/MySQL/MySQL8.4/include)
#添加:mysql的include路径
DEPENDPATH += $$quote(D:/ProgramFiles/MySQL/MySQL8.4/include)

include(../qsqldriverbase.pri)

打开qsqldriverbase.pri,并编辑:

编辑如下:

QT  = core core-private sql-private

# For QMAKE_USE in the parent projects.
#注释这一行
#include($$shadowed($$PWD)/qtsqldrivers-config.pri)

#添加这一行
include(./configure.pri)

PLUGIN_TYPE = sqldrivers
load(qt_plugin)

DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII

2.2 编译生成

编译选择release模式,输出文件会在Qt\5.15.2\mingw81_64\qtbase\src\plugins\sqldrivers\plugins\sqldrivers文件夹下。

复制 qsqlmysql.dll 、qsqlmysql.dll.debug 两个文件至以下文件夹内。


至此编译工作完成,重新打开QtCreator即可调用QMYSQL驱动。

3、拷贝dll文件

如果编译运行,出现了QMYSQL数据库,但还是不能加载:

QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMARIADB QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7
QSqlQuery::exec: database not open
MySQL数据库连接失败: "Driver not loaded Driver not loaded"

可将MySQL8.4\lib中的libmysql.dll和libmysql.lib复制到Qt5.12.2/mingw81_64/bin目录下。

注:单独拷贝libmysql.dll文件也可以。


http://www.kler.cn/news/330686.html

相关文章:

  • 通信工程学习:什么是TCP传输控制协议
  • react 状态管理
  • 最新BurpSuite2024.9专业中英文开箱即用版下载
  • HTML-ES6.0核心技术
  • 外贸网站怎么搭建对谷歌seo比较好?
  • 努力却未获收益的心理困境及其改善策略--研究生心理健康课程结课论文
  • 设计模式之访问者
  • 一个简单的摄像头应用程序1
  • 画质与体验双升, 海信AI电视从此更懂你
  • AI 搜索引擎工具集合
  • ts类型体操-简单篇
  • Java对象头
  • Dijkstra算法,动态规划和滑动窗口
  • 【分别为微服务云原生】9分钟ActiveMQ延时消息队列:定时任务的革命与Quartz的较量
  • MES(软件)系统是什么?MES系统为何如此重要呢?
  • 【RabbitMQ 项目】服务端:消费者管理模块
  • c#增删改查 (数据操作的基础)
  • Python 从入门到实战32(数据库MySQL)
  • VMware中Ubuntu系统Docker正常运行但网络不通(已解决)
  • java 的三种IO模型(BIO、NIO、AIO)