QT5.14.2开发的Mysql8.0系统安装部署过程

最近在Windows 11 64位系统下使用QT5.14.2开发了套系统、使用了MYSQL8.0数据库,项目使用mingw-64编译器进行编译,编译完成后使用windeployqt进行发布,并制作安装包,拷贝到工控机Windows10 64位系统上进行安装运行。本文记录下安装包制作和工控机部署中的过程如下。

1、MySQL8.0的下载安装:下载地址:MySQL :: Download MySQL Installer,下载完成后使用U盘将安装包文件mysql-installer-community-8.0.36.0.msi拷贝到工控机上直接安装,因为工控机未联网,安装包自动会判断使用离线模式安装,整个安装就是要注意设置root密码的地方改成跟自己项目中的数据库访问一样的账号跟密码即可。

2、工控机环境变量配置:系统默认不支持QT软件直接访问mysql数据库,需要环境变量,在系统环境变量Path中添加C:\Program Files\MySQL\MySQL Server 8.0\bin即可。

3、MySql数据库root用户访问权限的配置:在工控机上运行cmd命令,进入mysql数据库,主要命令如下:

  • 登录mysql数据库命令:mysql -u root -p
  • 切换数据库到mysql命令:use mysql;
  • 刷新权限:flush privileges;
  • 修改root用户对应的密码:alter user 'root'@'localhost' identified by 'root用户对应的密码';
  • 更新root用户信息:update user set host = '%' where user ='root' and host='localhost';
  • 更新root访问权限:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
  • 刷新权限:flush privileges;
  • 退出:exit

4、Windelployqt发布软件:在QT5.14.2中使用Release模式生成对应的项目exe文件后,运行、测试没有问题后,执行windeployqt命令,具体如下:开始菜单-所有应用-Qt 5.14.2-Qt 5.14.2 (MinGW 7.3.0 64-bit),打开执行windeployqt命令窗口后,输入对应的命令:windeployqt "D:\QtCode\MySystem\Release\项目生成的.exe"后会生成所有客户端运行的对应的dll文件。

5、拷贝mysql驱动文件到Release目录下:mysql8.0对应的两个驱动文件是在C:\Program Files\MySQL\MySQL Server 8.0\lib目录下的libmysql.dll和libmysql.lib文件。

6、使用Innot Setup中文版软件编写脚本生成安装包对应的exe安装文件,具体教程网上搜索即可。

7、工控机上还原数据库:在开发机上导出本地开发用的数据库数据和结构到对应的.sql文件中,拷贝到工控机上,在工控机上安装navicat163_mysql_cs_x64.exe软件,打开对应的数据库.sql文件,运行后,工控机上就有对应开发机一样的数据库。

8、工控机上安装客户端软件:拷贝使用Inno Setup生成的安装包文件到工控机上、下一步下一步安装完成后,运行软件(第一次运行一般右键使用管理员权限运行)。系统运行正常。

至此、基本结束软件开发完成后的安装部署过程。

相关推荐
sz-lcw1 小时前
MySQL知识笔记
笔记·mysql·adb
牛奶咖啡132 小时前
关系数据库MySQL的常用基础命令详解实战
数据库·mysql·本地远程连接到mysql·创建mysql用户和密码·修改mysql用户的密码·设置mysql密码的使用期限·设置和移除mysql用户的权限
西阳未落2 小时前
C++基础(21)——内存管理
开发语言·c++·面试
我的xiaodoujiao2 小时前
Windows系统Web UI自动化测试学习系列2--环境搭建--Python-PyCharm-Selenium
开发语言·python·测试工具
callJJ2 小时前
从 0 开始理解 Spring 的核心思想 —— IoC 和 DI(2)
java·开发语言·后端·spring·ioc·di
没有bug.的程序员3 小时前
MVCC(多版本并发控制):InnoDB 高并发的核心技术
java·大数据·数据库·mysql·mvcc
hsjkdhs4 小时前
万字详解C++之构造函数析构函数
开发语言·c++
Lin_Aries_04214 小时前
容器化简单的 Java 应用程序
java·linux·运维·开发语言·docker·容器·rpc
什么半岛铁盒5 小时前
C++项目:仿muduo库高并发服务器-------Channel模块实现
linux·服务器·数据库·c++·mysql·ubuntu
techdashen5 小时前
12分钟讲解Python核心理念
开发语言·python