一、安裝前的准備
1、下載安裝程序包,可到MySQL官方網站www.mysql.com下載,如圖1-1:
圖1-1
下載后的安裝文件如圖1-2所示:
圖1-2
二、安裝
1、雙擊下載的安裝文件,本篇博文安裝的MySQL版本為5.6.10.1,出現如圖1-3所示頁面:
圖1-3
2、點擊“Install MySQL Products”,進入如圖1-4頁面:
圖1-4
3、勾選“I accept the license terms”后,點擊“Next”,出現如圖1-5所示查找最新產品的更新頁面,不喜歡更新的話,可以選擇下方的“Skip the check for updates(not recommended)”,點擊“Next”繼續:
圖1-5
4、根據右側安裝類型描述文件選擇適合自己的安裝類型,如圖1-6所示,注意修改安裝路徑,以防重裝系統后,需要再次安裝MySQL:
圖1-6
5、根據您所選擇的安裝類型,會需要安裝一些框架(framework),點擊“Execute”安裝所需框架,如圖1-7:
圖1-7
6、安裝框架過程中的頁面,如圖1-8:
圖1-8
7、框架安裝成功后的提示,如圖1-9:
8、所需框架均安裝成功后,如圖1-10,點擊“Next”:
圖1-10
9、開始安裝,如圖1-11,點擊“Execute”,安裝過程中的界面如圖1-12:
圖1-11
圖1-12
10、配置信息的確定,如圖1-13,點擊“Next”:
圖1-13
11、服務器配置型選擇,Developer Machine——安裝的MySQL服務器作為開發機器的一部分,在三種類型選擇中,占用最少的內存;Server Machine——安裝的MySQL服務器作為服務器機器的一部分,占用內存在三種類型中居中; Dedicated MySQL Server Machine——安裝專用MySQL數據庫服務器,占用機器全部有效的內存。可不做修改,默認端口3306等也可不做修改,點擊“Next”:
圖1-14
12、設置管理員密碼,如圖1-15,選擇“Add User”,同時可以創建用戶,從安全角度考慮最好不要創建用戶:
圖1-15
13、在如圖1-16的界面中,可以設置系統服務器名稱,是否在系統啟動的同時自動自動MySQL數據庫服務器,可用默認選項,點擊“Next”:
圖1-16
14、確認安裝完成,勾選中“Start MySQL Workbench after Setup”,可對是否成功安裝進行測試,點擊“Finish”:
圖1-17
三、安裝成功
1、出現Workbench GUI頁面,如圖1-18,安裝成功:
編譯mysql項目步驟:
接下來就是用qt creator 打開mysql項目,項目的路徑是在D:\Qt\4.8.4\src\plugins\sqldrivers\mysql(具體的路徑是根據你自己的安裝目錄來進行選擇的)。
進入mysql安裝目錄,將lib/libmysql.dll和lib/libmysql.lib拷貝到D:\Qt\4.8.4\src\plugins\sqldrivers\mysql下
編輯目錄下的mysql.pro文件
QT +=sql
INCLUDEPATH +=D:\mysql\include
LIBS += -LD:\mysql\lib\ -llibmysql
注意這一定要填寫好不然會報錯(找不到- llibmysql)
其中mysql\include和lib是我從mysql安裝目錄下拷貝出來新建的文件夾,目錄里面不能有空格,不然會報錯,
這樣我們就完成了編譯前的工作准備。
-
這樣在C:\QT\4.8.6\src\plugins\sqldrivers\mysql 目錄下的debug 目錄和release 目錄下分別會產生
qsqlmysqld4.dll qsqlmysqld4.lib
qsqlmysql4.dll qsqlmysql4.lib
-
將上面提到的四個文件復制到
D:\Qt\4.8.4\plugins\sqldrivers
-
最后把
C:\mysql\lib\libmysql.dll
C:\mysql\lib\libmysql.lib
C:\Windows\system32\ 目錄下。
4、若想在本機運行還需要將
復制到lib\libmysql.dll文件到D:\Qt\4.8.4\bin
這樣驅動就安裝成功了,接下來的工作就是驗證驅動成功沒有了,最好的辦法就是來寫一個測試mysql連接的程序,做了這么久的工作是有收獲的時候了,廢話不多說,直接上代碼,這是做好的辦法了,代碼如下:
測試mysql可用性
加入已經存在mysql服務,那么編寫以下代碼測試:
(1).測試是否有驅動
-
QStringList driverList = QSqlDatabase::drivers(); qDebug() << driverList; //運行結果:("QSQLITE", "QMYSQL3", "QMYSQL", "QODBC3", "QODBC")?
如果存在QMYSQL和QMYSQL3就是正確的
(2).測試mysql是否可用
-
測試mysql可用性 加入已經存在mysql服務,那么編寫以下代碼測試: (1).測試是否有驅動 [cpp] view plaincopy QStringList driverList = QSqlDatabase::drivers(); qDebug() << driverList; //運行結果:("QSQLITE", "QMYSQL3", "QMYSQL", "QODBC3", "QODBC")? 如果存在QMYSQL和QMYSQL3就是正確的 (2).測試mysql是否可用 [cpp] view plaincopy QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); db.setHostName("192.168.1.23"); db.setDatabaseName("testsql"); db.setUserName("root"); db.setPassword("root"); bool ok = db.open(); qDebug() << ok; //運行結果:true