最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Qt+MySql開發(fā)筆記:Qt5.9.3的msvc2017x64版本編譯MySql8.0.16版本驅(qū)動并Demo連接數(shù)據(jù)

2023-04-26 12:39 作者:紅胖子_AAA紅模仿  | 我要投稿

步驟八:配置數(shù)據(jù)庫賬號允許遠程操作(這一步是之前mingw32的測試步驟,為了方便直接放這)

??這是因為賬號不被允許遠程登錄,所以需要修改數(shù)據(jù)庫用戶的配置,讓其允許遠程登錄。
??修改用戶被允許遠程登錄,先使用mysql控制端輸入密碼登錄,然后操
作:

use mysql;select host,host from user;update user set host = ‘%’ where user = ‘root’;select host,host from user;

??這時候,還是不行,需要強行刷新以下

flush privileges;

??


??

??然后成功:
??


??至此,Qt5.9.3 msvc2017x64 + mysql8.0.16數(shù)據(jù)庫連接驅(qū)動編譯完成。

步驟九:數(shù)據(jù)庫的遠程操作工具連接(這一步是之前mingw32的測試步驟,為了方便直接放這)

??使用遠程工具測試,發(fā)現(xiàn)出錯:
??


??這是因為8.0之后mysql更改了密碼的加密規(guī)則,目前的客戶端連接軟件還不支持Mysql8新增加的加密方式caching_sha2_password,所以需要修改用戶的加密方式,將其改回舊加密驗證方式。
??先登錄mysql命令行,執(zhí)行以下,主要是youPassword要替換為你使用遠程登錄的賬戶密碼:

alter user 'root'@'%' identified by 'youPassword' password expire never;alter user root identified with mysql_native_password by 'youPassword';flush privileges;

??

??

入坑

入坑一:編譯報錯無法打開“無法打開輸入文件“D:\mysql-connector-c-6.1.11-winx64\lib.ob”

問題

??編譯錯誤,無法通過
??

嘗試解決

??多方查找,定位在提供的庫的版本上,也不行。
??本次版本,最后嘗試直接從mysql安裝文件夾里面拿,可以通過,但是也沒有看到根錄下文件(后來檢查路徑才確認(rèn)未生成到根目錄下)。
??以下截圖過程可參考:
??

??

??


??然后去掉shadow,成功了:
??

解決

??去掉shaodw,路徑查看“入坑二”。

入坑二:沒有編譯輸出

問題

??按照之前mingw32編譯的沒找到輸出

原因

??有些配置文件,所以直接全部構(gòu)建,來看生成的文件夾
??

??發(fā)現(xiàn)是路徑問題。

解決

??找到到對應(yīng)的路徑,生成了。
??


??綜合一和二,還有嘗試下載驅(qū)動庫的編譯器vc版本問題,這里解決差不多花了大半天了去嘗試、摸索然后逐步排除各種問題。

前言

??mysql驅(qū)動版本msvc2015x32版本調(diào)好, mysql的mingw32版本的驅(qū)動上一個版本編譯并測試好,有些三方庫最低支持vs2017,所以只能使用msvc2017x64,基于Qt5.9.3,于是本篇編譯mysql驅(qū)動的msvc2017x64版本,滿足當(dāng)前的特定需求,這次過程有點費勁,可能是Qt的版本低于Qt5.12,繼續(xù)無保留分享出來。
??本篇主要描述Qt5.9.3 msvc2017x64 + mysql8.0.16的驅(qū)動編譯過程。

編譯環(huán)境

Qt5.9.3 msvc2017x64

??安裝得時候記得要勾選上源碼

mysql-installer-community-8.0.16.0

??

下載數(shù)據(jù)庫

??https://downloads.mysql.com/archives/community/
??

編譯mysql驅(qū)動庫(Qt5.9.3+mysql8.0.16)

步驟一:安裝Qt5.9.3勾選msvc2017x64版本。

??


??其他過程略。

步驟二:下載數(shù)據(jù)庫64位驅(qū)動運行程序并解壓

??下載數(shù)據(jù)庫運行包文件。(注意:這里要注意跟目標(biāo)機器安裝的版本要一致)。
??下載地址:https://dev.mysql.com/downloads/connector/cpp
??(這里查看“入坑一”)
??直接越過了下載了,因為下載下來的目前編譯都有問題
??數(shù)據(jù)庫安裝在本地,直接通過本地了:
??

步驟三:打開qt中自帶的mysql源碼工程

??

??使用QtCreator打開
??

??這里要去掉shadow,否則會其他錯誤,參考“入坑一”和“入坑二”:
??

??

??

步驟四:qmake并且build構(gòu)建

??

??

??(這里要是報錯就回過去看步驟三以及入坑一二)
??

步驟五:替換插件的mysql庫

??

步驟六:將數(shù)據(jù)庫的libmysql.dll拷貝到bin目錄

??將mysql的lib下的libmysql.dll拷貝到qt的msvc2017x64的bin目錄下,而且打包軟件的時候也要帶上。
??這里是直接將之前l(fā)ib對應(yīng)的libmysql.dll拷貝進qt的bin和應(yīng)用部署文件夾下:
??

??(PS:打包發(fā)布時windeployqt不會主動拷貝,是需要手動復(fù)制過去)

步驟七:編譯應(yīng)用連接測試

??將應(yīng)用從odbc切入mysql驅(qū)動編譯數(shù)據(jù)庫的工程:
??


??這里是因為mysql8修改了加密方式,直接使用mysql驅(qū)動的話要修改加密方式,修改方式主要是部署數(shù)據(jù)庫的時候修改,可以登錄數(shù)據(jù)庫然后做如下操作:
??

??然后應(yīng)用登錄測試
??

??若還需要遠程登錄,則繼續(xù)步驟八和九:

步驟八:配置數(shù)據(jù)庫賬號允許遠程操作(這一步是之前mingw32的測試步驟,為了方便直接放這)

??這是因為賬號不被允許遠程登錄,所以需要修改數(shù)據(jù)庫用戶的配置,讓其允許遠程登錄。
??修改用戶被允許遠程登錄,先使用mysql控制端輸入密碼登錄,然后操
作:

use mysql;select host,host from user;update user set host = ‘%’ where user = ‘root’;select host,host from user;

??這時候,還是不行,需要強行刷新以下

flush privileges;

??


??

??然后成功:
??


??至此,Qt5.9.3 msvc2017x64 + mysql8.0.16數(shù)據(jù)庫連接驅(qū)動編譯完成。

步驟九:數(shù)據(jù)庫的遠程操作工具連接(這一步是之前mingw32的測試步驟,為了方便直接放這)

??使用遠程工具測試,發(fā)現(xiàn)出錯:
??


??這是因為8.0之后mysql更改了密碼的加密規(guī)則,目前的客戶端連接軟件還不支持Mysql8新增加的加密方式caching_sha2_password,所以需要修改用戶的加密方式,將其改回舊加密驗證方式。
??先登錄mysql命令行,執(zhí)行以下,主要是youPassword要替換為你使用遠程登錄的賬戶密碼:

alter user 'root'@'%' identified by 'youPassword' password expire never;alter user root identified with mysql_native_password by 'youPassword';flush privileges;

??

??

入坑

入坑一:編譯報錯無法打開“無法打開輸入文件“D:\mysql-connector-c-6.1.11-winx64\lib.ob”

問題

??編譯錯誤,無法通過
??

嘗試解決

??多方查找,定位在提供的庫的版本上,也不行。
??本次版本,最后嘗試直接從mysql安裝文件夾里面拿,可以通過,但是也沒有看到根錄下文件(后來檢查路徑才確認(rèn)未生成到根目錄下)。
??以下截圖過程可參考:
??

??

??


??然后去掉shadow,成功了:
??

解決

??去掉shaodw,路徑查看“入坑二”。

入坑二:沒有編譯輸出

問題

??按照之前mingw32編譯的沒找到輸出

原因

??有些配置文件,所以直接全部構(gòu)建,來看生成的文件夾
??

??發(fā)現(xiàn)是路徑問題。

解決

??找到到對應(yīng)的路徑,生成了。
??


??綜合一和二,還有嘗試下載驅(qū)動庫的編譯器vc版本問題,這里解決差不多花了大半天了去嘗試、摸索然后逐步排除各種問題。


Qt+MySql開發(fā)筆記:Qt5.9.3的msvc2017x64版本編譯MySql8.0.16版本驅(qū)動并Demo連接數(shù)據(jù)的評論 (共 條)

分享到微博請遵守國家法律
贵阳市| 曲靖市| 嘉义县| 丹江口市| 曲阳县| 宁陵县| 奉节县| 八宿县| 西乡县| 绵竹市| 鹿邑县| 长葛市| 栖霞市| 广平县| 津南区| 中卫市| 揭东县| 武平县| 清丰县| 勐海县| 都昌县| 黄梅县| 乐陵市| 同江市| 福建省| 广元市| 双鸭山市| 鸡西市| 江山市| 南汇区| 喀喇沁旗| 那曲县| 鄂伦春自治旗| 高尔夫| 揭东县| 巍山| 石城县| 海城市| 洞口县| 康乐县| 根河市|