Qt编译MySql5.7.17驱动

Qt环境下使用MySQL,需要安装MySQL,如果不安装,直接qmake mysql.pro会出错,找不到mysql.h。

MySQL :: Begin Your Download - mysql-5.7.17-win32.zip

https://dev.mysql.com/downloads/file/?id=467268

免安装版本,只要解压到某个目录,设置bin目录系统环境变量,然后通过DOS配置,具体可以搜索“mysql免安装版配置”。

my-default.ini改为my.ini,移动到bin目录。

[mysqld]
basedir = D:/mysql-5.7.17
datadir = D:/mysql-5.7.17/data
port = 3306
default-character-set=utf8
default-storage-engine=innodb
default-collation=gbk_chinese_ci
chracter-set-server=utf8
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

[mysql]
default-character-set=gbk

通过DOS进入MySQL bin目录,执行mysqld --install安装服务,等一两分钟,出现Service successfully installed.提示,说明MySQL服务安装成功。这时执行net start mysql,出现”MySQL 服务正在启动 .MySQL 服务无法启动“错误。出错了重新解压,否则一直不能启动。

正确命令顺序如下:

mysqld --install

mysqld --initialize-insecure

net start mysql

然后VS命令提示符执行qmake "INCLUDEPATH+=D:\mysql-5.7.17\include" "LIBS+=D:\mysql-5.7.17\lib\libmysql.lib" mysql.pro,出现WARNING: (internal):1: Unescaped backslashes are deprecated.警告,可以把'\'换为'/',也可以不换。然后nmake,在\plugins\sqldrivers下就有了mysql的lib和dll。然后把MySQL lib目录下的libmysql.dll和libmysqld.dll拷贝到Qt bin目录中。

这时在Qt下查看可用驱动,就有了mysql的驱动。

Available drivers:  
"QSQLITE" 
"QMYSQL3" 
"QMYSQL" 
"QODBC3" 
"QODBC" 
QMYSQL driver valid?  true 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将Qt 5.15.2与MySQL 8.0.33驱动程序编译在一起,您可以按照以下步骤进行操作: 1. 首先,确保您的系统中已经安装了MySQL 8.0.33数据库。如果没有安装,请先从MySQL官方网站下载并安装。 2. 下载Qt 5.15.2的源代码,并解压到一个合适的文件夹中。 3. 进入Qt源代码文件夹,在命令行中运行以下命令以确保已经安装了必要的依赖项: ``` ./configure make ``` 4. 安装MySQL的开发包以获取必要的头文件和库文件。在Ubuntu系统上,可以使用以下命令进行安装: ``` sudo apt-get install libmysqlclient-dev ``` 5. 在Qt源代码文件夹中,进入`qtbase/src/plugins/sqldrivers/mysql`文件夹。 6. 打开`mysql.pro`文件,并进行以下更改: - 添加`CONFIG += c++11`以启用C++11支持(如果尚未添加)。 - 添加`LIBS += -lmysqlclient_r`以链接MySQL客户端库。 7. 在命令行中,进入`mysql`文件夹,并执行以下命令以编译MySQL驱动: ``` qmake "INCLUDEPATH+=/usr/include/mysql" "LIBS+=-L/usr/lib/x86_64-linux-gnu -lmysqlclient_r" mysql.pro make ``` 8. 编译成功后,将生成的`libqsqlmysql.so`文件复制到Qt安装目录下的`plugins/sqldrivers`文件夹中。 9. 完成上述步骤后,重新编译和构建您的Qt项目,应该就可以使用MySQL 8.0.33驱动程序了。 请注意,上述步骤适用于Ubuntu系统,如果您使用其他操作系统,请相应地修改命令和路径。同时,确保您安装的QtMySQL版本与本回答中提到的版本相匹配。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值