大數(shù)據(jù)學(xué)習(xí)路線,從零開始學(xué)大數(shù)據(jù)(點(diǎn)擊跳轉(zhuǎn),學(xué)習(xí)不迷路)
MySQL最詳細(xì)教程(點(diǎn)擊跳轉(zhuǎn),學(xué)習(xí)不迷路)
一、MySQL環(huán)境搭建
1. MySQL的卸載
步驟1:停止MySQL服務(wù)
在卸載之前,先停止MySQL8.0的服務(wù)。按鍵盤上的“Ctrl + Alt + Delete”組合鍵,打開“任務(wù)管理器”對話
框,可以在“服務(wù)”列表找到“MySQL8.0”的服務(wù),如果現(xiàn)在“正在運(yùn)行”狀態(tài),可以右鍵單擊服務(wù),選擇“停
止”選項(xiàng)停止MySQL8.0的服務(wù),如圖所示。
步驟2:軟件的卸載
- 方式1:通過控制面板方式
卸載MySQL8.0的程序可以和其他桌面應(yīng)用程序一樣直接在“控制面板”選擇“卸載程序”,并在程序列表中
找到MySQL8.0服務(wù)器程序,直接雙擊卸載即可,如圖所示。這種方式刪除,數(shù)據(jù)目錄下的數(shù)據(jù)不會跟著
刪除
- 過360或電腦管家等軟件卸載
略
- 通過安裝包提供的卸載功能卸載
你也可以通過安裝向?qū)С绦蜻M(jìn)行MySQL8.0服務(wù)器程序的卸載。
① 再次雙擊下載的mysql-installer-community-8.0.26.0.msi文件,打開安裝向?qū)А0惭b向?qū)詣訖z測已
安裝的MySQL服務(wù)器程序。
② 選擇要卸載的MySQL服務(wù)器程序,單擊“Remove”(移除),即可進(jìn)行卸載。
③ 單擊“Next”(下一步)按鈕,確認(rèn)卸載。
④ 彈出是否同時移除數(shù)據(jù)目錄選擇窗口。如果想要同時刪除MySQL服務(wù)器中的數(shù)據(jù),則勾選“Remove the
data directory”,如圖所示。
⑤ 執(zhí)行卸載。單擊“Execute”(執(zhí)行)按鈕進(jìn)行卸載。
⑥ 完成卸載。單擊“Finish”(完成)按鈕即可。如果想要同時卸載MySQL8.0的安裝向?qū)С绦?,勾選“Yes,
Uninstall MySQL Installer”即可,如圖所示。
步驟3:殘余文件的清理
如果再次安裝不成功,可以卸載后對殘余文件進(jìn)行清理后再安裝。
(1)服務(wù)目錄:mysql服務(wù)的安裝目錄
(2)數(shù)據(jù)目錄:默認(rèn)在C:\ProgramData\MySQL
如果自己單獨(dú)指定過數(shù)據(jù)目錄,就找到自己的數(shù)據(jù)目錄進(jìn)行刪除即可。
注意:請?jiān)谛遁d前做好數(shù)據(jù)備份
在操作完以后,需要重啟計(jì)算機(jī),然后進(jìn)行安裝即可。如果仍然安裝失敗,需要繼續(xù)操作如下步
驟4。
步驟4:清理注冊表(選做)
如果前幾步做了,再次安裝還是失敗,那么可以清理注冊表。
如何打開注冊表編輯器:在系統(tǒng)的搜索框中輸入 regedit
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\MySQL服務(wù) 目錄刪除
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL服務(wù) 目錄刪除
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\MySQL服務(wù) 目錄刪除
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL服務(wù)目錄
刪除
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL服務(wù)刪除
(注冊表中的ControlSet001,ControlSet002,不一定是001和002,可能是ControlSet005、006之類)
步驟5:刪除環(huán)境變量配置
找到path環(huán)境變量,將其中關(guān)于mysql的環(huán)境變量刪除,切記不要全部刪除。
例如:刪除 D:\develop_tools\mysql\MySQLServer8.0.26\bin; 這個部分
2. MySQL的下載、安裝、配置
2.1 MySQL版本的介紹
-
MySQL Community Server 社區(qū)版本,開源免費(fèi),自由下載,但不提供官方技術(shù)支持,適用于
大多數(shù)普通用戶。 -
MySQL Enterprise Edition 企業(yè)版本,需付費(fèi),不能在線下載,可以試用30天。提供了更多的
功能和更完備的技術(shù)支持,更適合于對數(shù)據(jù)庫的功能和可靠性要求較高的企業(yè)客戶。 -
MySQL Cluster 集群版,開源免費(fèi)。用于架設(shè)集群服務(wù)器,可將幾個MySQL Server封裝成一個
Server。需要在社區(qū)版或企業(yè)版的基礎(chǔ)上使用。 -
MySQL Cluster CGE 高級集群版,需付費(fèi)。
此外,官方還提供了 MySQL Workbench (GUITOOL)一款專為MySQL設(shè)計(jì)的 圖形界面管理工具 。
MySQLWorkbench又分為兩個版本,分別是 社區(qū)版 (MySQL Workbench OSS)、 商用版 (MySQL
WorkbenchSE)。
2.2 軟件的下載
- 下載地址
官網(wǎng):https://www.mysql.com - 打開官網(wǎng),點(diǎn)擊DOWNLOADS
然后,點(diǎn)擊 MySQL Community(GPL) Downloads
3. 點(diǎn)擊 MySQL Community Server
4. 在General Availability(GA) Releases中選擇適合的版本
Windows平臺下提供兩種安裝文件:MySQL二進(jìn)制分發(fā)版(.msi安裝文件)和免安裝版(.zip壓縮文
件)。一般來講,應(yīng)當(dāng)使用二進(jìn)制分發(fā)版,因?yàn)樵摪姹咎峁┝藞D形化的安裝向?qū)н^程,比其他的分發(fā)版
使用起來要簡單,不再需要其他工具啟動就可以運(yùn)行MySQL。
這里在Windows 系統(tǒng)下推薦下載 MSI安裝程序 ;點(diǎn)擊 Go to Download Page 進(jìn)行下載即可
- Windows下的MySQL8.0安裝有兩種安裝程序
- mysql-installer-web-community-8.0.26.0.msi 下載程序大小:2.4M;安裝時需要聯(lián)網(wǎng)安裝組件。
- mysql-installer-community-8.0.26.0.msi 下載程序大?。?50.7M;安裝時離線安裝即可。推薦。 - 如果安裝MySQL5.7版本的話,選擇 Archives ,接著選擇MySQL5.7的相應(yīng)版本即可。這里下載最近
期的MySQL5.7.34版本。
2.3 MySQL8.0 版本的安裝
MySQL下載完成后,找到下載文件,雙擊進(jìn)行安裝,具體操作步驟如下。
步驟1:雙擊下載的mysql-installer-community-8.0.26.0.msi文件,打開安裝向?qū)А?/p>
步驟2:打開“Choosing a Setup Type”(選擇安裝類型)窗口,在其中列出了5種安裝類型,分別是
Developer Default(默認(rèn)安裝類型)、Server only(僅作為服務(wù)器)、Client only(僅作為客戶端)、
Full(完全安裝)、Custom(自定義安裝)。這里選擇“Custom(自定義安裝)”類型按鈕,單擊“Next(下
一步)”按鈕。
步驟3:打開“Select Products” (選擇產(chǎn)品)窗口,可以定制需要安裝的產(chǎn)品清單。例如,選擇“MySQL
Server 8.0.26-X64”后,單擊“→”添加按鈕,即可選擇安裝MySQL服務(wù)器,如圖所示。采用通用的方法,可
以添加其他你需要安裝的產(chǎn)品。
此時如果直接“Next”(下一步),則產(chǎn)品的安裝路徑是默認(rèn)的。如果想要自定義安裝目錄,則可以選中
對應(yīng)的產(chǎn)品,然后在下面會出現(xiàn)“Advanced Options”(高級選項(xiàng))的超鏈接。
ProgramData目錄(這是一個隱藏目錄)。如果自定義安裝目錄,請避免“中文”目錄。另外,建議服務(wù)目
錄和數(shù)據(jù)目錄分開存放。
步驟4:在上一步選擇好要安裝的產(chǎn)品之后,單擊“Next”(下一步)進(jìn)入確認(rèn)窗口,如圖所示。單擊
“Execute”(執(zhí)行)按鈕開始安裝。
步驟5:安裝完成后在“Status”(狀態(tài))列表下將顯示“Complete”(安裝完成),如圖所示。
2.4 配置MySQL8.0
MySQL安裝之后,需要對服務(wù)器進(jìn)行配置。具體的配置步驟如下。
步驟1:在上一個小節(jié)的最后一步,單擊“Next”(下一步)按鈕,就可以進(jìn)入產(chǎn)品配置窗口。
其中,“Config Type”選項(xiàng)用于設(shè)置服務(wù)器的類型。單擊該選項(xiàng)右側(cè)的下三角按鈕,即可查看3個選項(xiàng),如
圖所示。
- Server Machine(服務(wù)器) :該選項(xiàng)代表服務(wù)器,MySQL服務(wù)器可以同其他服務(wù)器應(yīng)用程序一起運(yùn)行,例如Web服務(wù)器等。MySQL服務(wù)器配置成適當(dāng)比例的系統(tǒng)資源。
- Dedicated Machine(專用服務(wù)器) :該選項(xiàng)代表只運(yùn)行MySQL服務(wù)的服務(wù)器。MySQL服務(wù)器配置
成使用所有可用系統(tǒng)資源。
步驟3:單擊“Next”(下一步)按鈕,打開設(shè)置授權(quán)方式窗口。其中,上面的選項(xiàng)是MySQL8.0提供的新的
授權(quán)方式,采用SHA256基礎(chǔ)的密碼加密方法;下面的選項(xiàng)是傳統(tǒng)授權(quán)方法(保留5.x版本兼容性)。
步驟4:單擊“Next”(下一步)按鈕,打開設(shè)置服務(wù)器root超級管理員的密碼窗口,如圖所示,需要輸入
兩次同樣的登錄密碼。也可以通過“Add User”添加其他用戶,添加其他用戶時,需要指定用戶名、允許
該用戶名在哪臺/哪些主機(jī)上登錄,還可以指定用戶角色等。此處暫不添加用戶,用戶管理在MySQL高級
特性篇中講解。
步驟5:單擊“Next”(下一步)按鈕,打開設(shè)置服務(wù)器名稱窗口,如圖所示。該服務(wù)名會出現(xiàn)在Windows
服務(wù)列表中,也可以在命令行窗口中使用該服務(wù)名進(jìn)行啟動和停止服務(wù)。本書將服務(wù)名設(shè)置為
“MySQL80”。如果希望開機(jī)自啟動服務(wù),也可以勾選“Start the MySQL Server at System Startup”選項(xiàng)(推
薦)。
下面是選擇以什么方式運(yùn)行服務(wù)?可以選擇“Standard System Account”(標(biāo)準(zhǔn)系統(tǒng)用戶)或者“Custom User”
(自定義用戶)中的一個。這里推薦前者。
步驟7:完成配置,如圖所示。單擊“Finish”(完成)按鈕,即可完成服務(wù)器的配置。
步驟8:如果還有其他產(chǎn)品需要配置,可以選擇其他產(chǎn)品,然后繼續(xù)配置。如果沒有,直接選擇“Next”
(下一步),直接完成整個安裝和配置過程。
步驟9:結(jié)束安裝和配置。
如果不配置MySQL環(huán)境變量,就不能在命令行直接輸入MySQL登錄命令。下面說如何配置MySQL的環(huán)境
變量:
步驟1:在桌面上右擊【此電腦】圖標(biāo),在彈出的快捷菜單中選擇【屬性】菜單命令。
步驟2:打開【系統(tǒng)】窗口,單擊【高級系統(tǒng)設(shè)置】鏈接。
步驟3:打開【系統(tǒng)屬性】對話框,選擇【高級】選項(xiàng)卡,然后單擊【環(huán)境變量】按鈕。
步驟4:打開【環(huán)境變量】對話框,在系統(tǒng)變量列表中選擇path變量。
步驟5:單擊【編輯】按鈕,在【編輯環(huán)境變量】對話框中,將MySQL應(yīng)用程序的bin目錄(C:\Program
Files\MySQL\MySQL Server 8.0\bin)添加到變量值中,用分號將其與其他路徑分隔開。 步驟6:添加完成
之后,單擊【確定】按鈕,這樣就完成了配置path變量的操作,然后就可以直接輸入MySQL命令來登錄
數(shù)據(jù)庫了。
2.6 MySQL5.7 版本的安裝、配置
- 安裝
此版本的安裝過程與上述過程除了版本號不同之外,其它環(huán)節(jié)都是相同的。所以這里省略了MySQL5.7.34
版本的安裝截圖。
- 配置
配置環(huán)節(jié)與MySQL8.0版本確有細(xì)微不同。大部分情況下直接選擇“Next”即可,不影響整理使用。
這里配置MySQL5.7時,重點(diǎn)強(qiáng)調(diào):與前面安裝好的MySQL8.0不能使用相同的端口號。
2.7 安裝失敗問題
MySQL的安裝和配置是一件非常簡單的事,但是在操作過程中也可能出現(xiàn)問題,特別是初學(xué)者。
問題1:無法打開MySQL8.0軟件安裝包或者安裝過程中失敗,如何解決?
在運(yùn)行MySQL8.0軟件安裝包之前,用戶需要確保系統(tǒng)中已經(jīng)安裝了.Net Framework相關(guān)軟件,如果缺少
此軟件,將不能正常地安裝MySQL8.0軟件。
另外,還要確保Windows Installer正常安裝。windows上安裝mysql8.0需要操作系統(tǒng)提前已安裝好
Microsoft Visual C++ 2015-2019。
問題2:卸載重裝MySQL失敗?
該問題通常是因?yàn)镸ySQL卸載時,沒有完全清除相關(guān)信息導(dǎo)致的。
解決辦法是,把以前的安裝目錄刪除。如果之前安裝并未單獨(dú)指定過服務(wù)安裝目錄,則默認(rèn)安裝目錄是
“C:\Program Files\MySQL”,徹底刪除該目錄。同時刪除MySQL的Data目錄,如果之前安裝并未單獨(dú)指定
過數(shù)據(jù)目錄,則默認(rèn)安裝目錄是“C:\ProgramData\MySQL”,該目錄一般為隱藏目錄。刪除后,重新安裝
即可。
問題3:如何在Windows系統(tǒng)刪除之前的未卸載干凈的MySQL服務(wù)列表?
操作方法如下,在系統(tǒng)“搜索框”中輸入“cmd”,按“Enter”(回車)鍵確認(rèn),彈出命令提示符界面。然后輸
入“sc delete MySQL服務(wù)名”,按“Enter”(回車)鍵,就能徹底刪除殘余的MySQL服務(wù)了。
3. MySQL的登錄
3.1 服務(wù)的啟動與停止
MySQL安裝完畢之后,需要啟動服務(wù)器進(jìn)程,不然客戶端無法連接數(shù)據(jù)庫。
在前面的配置過程中,已經(jīng)將MySQL安裝為Windows服務(wù),并且勾選當(dāng)Windows啟動、停止時,MySQL也
自動啟動、停止。
方式1:使用圖形界面工具
- 步驟1:打開windows服務(wù)
- 方式1:計(jì)算機(jī)(點(diǎn)擊鼠標(biāo)右鍵)→ 管理(點(diǎn)擊)→ 服務(wù)和應(yīng)用程序(點(diǎn)擊)→ 服務(wù)(點(diǎn)擊)
- 方式2:控制面板(點(diǎn)擊)→ 系統(tǒng)和安全(點(diǎn)擊)→ 管理工具(點(diǎn)擊)→ 服務(wù)(點(diǎn)擊)
- 方式3:任務(wù)欄(點(diǎn)擊鼠標(biāo)右鍵)→ 啟動任務(wù)管理器(點(diǎn)擊)→ 服務(wù)(點(diǎn)擊)
- 方式4:單擊【開始】菜單,在搜索框中輸入“services.msc”,按Enter鍵確認(rèn) - 步驟2:找到MySQL80(點(diǎn)擊鼠標(biāo)右鍵)→ 啟動或停止(點(diǎn)擊)
# 啟動 MySQL 服務(wù)命令:
net start MySQL服務(wù)名
# 停止 MySQL 服務(wù)命令:
net stop MySQL服務(wù)名
說明:
- start和stop后面的服務(wù)名應(yīng)與之前配置時指定的服務(wù)名一致。
- 如果當(dāng)你輸入命令后,提示“拒絕服務(wù)”,請以 系統(tǒng)管理員身份 打開命令提示符界面重新嘗試。
3.2 自帶客戶端的登錄與退出
當(dāng)MySQL服務(wù)啟動完成后,便可以通過客戶端來登錄MySQL數(shù)據(jù)庫。注意:確認(rèn)服務(wù)是開啟的。
登錄方式1:MySQL自帶客戶端
開始菜單 → 所有程序 → MySQL → MySQL 8.0 Command Line Client
說明:僅限于root用戶
- 格式:
mysql -h 主機(jī)名 -P 端口號 -u 用戶名 -p密碼 - 舉例:
mysql -h localhost -P 3306 -u root -pabc123 # 這里我設(shè)置的root用戶的密碼是abc123
注意:
(1)-p與密碼之間不能有空格,其他參數(shù)名與參數(shù)值之間可以有空格也可以沒有空格。如:
mysql -hlocalhost -P3306 -uroot -pabc123
(2)密碼建議在下一行輸入,保證安全
mysql -h localhost -P 3306 -u root -p
Enter password:****
(3)客戶端和服務(wù)器在同一臺機(jī)器上,所以輸入localhost或者IP地址127.0.0.1。同時,因?yàn)槭沁B接本
機(jī): -hlocalhost就可以省略,如果端口號沒有修改:-P3306也可以省略
mysql -u root -p
Enter password:****
簡寫成:
連接成功后,有關(guān)于MySQL Server服務(wù)版本的信息,還有第幾次連接的id標(biāo)識。
也可以在命令行通過以下方式獲取MySQL Server服務(wù)版本的信息:
c:> mysql -V
c:> mysql --version
或登錄后,通過以下方式查看當(dāng)前版本信息:
mysql> select version();
退出:
exit
或
quit
4. MySQL演示使用
4.1 MySQL的使用演示
1、查看所有的數(shù)據(jù)庫
show databases;
“information_schema”是 MySQL 系統(tǒng)自帶的數(shù)據(jù)庫,主要保存 MySQL 數(shù)據(jù)庫服務(wù)器的系統(tǒng)信息,
比如數(shù)據(jù)庫的名稱、數(shù)據(jù)表的名稱、字段名稱、存取權(quán)限、數(shù)據(jù)文件 所在的文件夾和系統(tǒng)使用的
文件夾,等等
“performance_schema”是 MySQL 系統(tǒng)自帶的數(shù)據(jù)庫,可以用來監(jiān)控 MySQL 的各類性能指標(biāo)。
“sys”數(shù)據(jù)庫是 MySQL 系統(tǒng)自帶的數(shù)據(jù)庫,主要作用是以一種更容易被理解的方式展示 MySQL 數(shù)據(jù)
庫服務(wù)器的各類性能指標(biāo),幫助系統(tǒng)管理員和開發(fā)人員監(jiān)控 MySQL 的技術(shù)性能。
“mysql”數(shù)據(jù)庫保存了 MySQL 數(shù)據(jù)庫服務(wù)器運(yùn)行時需要的系統(tǒng)信息,比如數(shù)據(jù)文件夾、當(dāng)前使用的
字符集、約束檢查信息,等等
為什么 Workbench 里面我們只能看到“demo”和“sys”這 2 個數(shù)據(jù)庫呢?
這是因?yàn)?,Workbench 是圖形化的管理工具,主要面向開發(fā)人 員,“demo”和“sys”這 2 個數(shù)據(jù)庫已經(jīng)夠用
了。如果有特殊需求,比如,需要監(jiān)控 MySQL 數(shù)據(jù)庫各項(xiàng)性能指標(biāo)、直接操作 MySQL 數(shù)據(jù)庫系統(tǒng)文件
等,可以由 DBA 通過 SQL 語句,查看其它的系統(tǒng)數(shù)據(jù)庫。
2、創(chuàng)建自己的數(shù)據(jù)庫
create database 數(shù)據(jù)庫名;
#創(chuàng)建atguigudb數(shù)據(jù)庫,該名稱不能與已經(jīng)存在的數(shù)據(jù)庫重名。
create database atguigudb;
3、使用自己的數(shù)據(jù)庫
use 數(shù)據(jù)庫名;
#使用atguigudb數(shù)據(jù)庫
use atguigudb;
說明:如果沒有使用use語句,后面針對數(shù)據(jù)庫的操作也沒有加“數(shù)據(jù)名”的限定,那么會報(bào)“ERROR 1046
(3D000): No database selected”(沒有選擇數(shù)據(jù)庫)
使用完use語句之后,如果接下來的SQL都是針對一個數(shù)據(jù)庫操作的,那就不用重復(fù)use了,如果要針對另
一個數(shù)據(jù)庫操作,那么要重新use。
4、查看某個庫的所有表格
show tables from 數(shù)據(jù)庫名;
5、創(chuàng)建新的表格
create table 表名稱(
字段名 數(shù)據(jù)類型,
字段名 數(shù)據(jù)類型
);
說明:如果是最后一個字段,后面就用加逗號,因?yàn)槎禾柕淖饔檬欠指蠲總€字段。
#創(chuàng)建學(xué)生表
create table student(
id int,
name varchar(20) #說名字最長不超過20個字符
);
6、查看一個表的數(shù)據(jù)
select * from 數(shù)據(jù)庫表名稱;
#查看學(xué)生表的數(shù)據(jù)
select * from student;
7、添加一條記錄
insert into 表名稱 values(值列表);
#添加兩條記錄到student表中
insert into student values(1,'張三');
insert into student values(2,'李四');
報(bào)錯:
mysql> insert into student values(1,'張三');
ERROR 1366 (HY000): Incorrect string value: '\xD5\xC5\xC8\xFD' for column 'name' at
row 1
mysql> insert into student values(2,'李四');
ERROR 1366 (HY000): Incorrect string value: '\xC0\xEE\xCB\xC4' for column 'name' at
row 1
mysql> show create table student;
字符集的問題。
8、查看表的創(chuàng)建信息
show create table 表名稱\G
#查看student表的詳細(xì)創(chuàng)建信息
show create table student\G
Table: student
Create Table: CREATE TABLE `student` (
`id` int(11) DEFAULT NULL,
`name` varchar(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
1 row in set (0.00 sec)
上面的結(jié)果顯示student的表格的默認(rèn)字符集是“l(fā)atin1”不支持中文。
9、查看數(shù)據(jù)庫的創(chuàng)建信息
show create database 數(shù)據(jù)庫名\G
#查看atguigudb數(shù)據(jù)庫的詳細(xì)創(chuàng)建信息
show create database atguigudb\G
#結(jié)果如下
*************************** 1. row ***************************
Database: atguigudb
Create Database: CREATE DATABASE atguigudb
/*!40100 DEFAULT CHARACTER SET latin1 */
1 row in set (0.00 sec)
上面的結(jié)果顯示atguigudb數(shù)據(jù)庫也不支持中文,字符集默認(rèn)是latin1。
10、刪除表格
drop table 表名稱;
#刪除學(xué)生表
drop table student;
11、刪除數(shù)據(jù)庫
drop database 數(shù)據(jù)庫名;
#刪除atguigudb數(shù)據(jù)庫
drop database atguigudb;
5. MySQL圖形化管理工具
MySQL圖形化管理工具極大地方便了數(shù)據(jù)庫的操作與管理,常用的圖形化管理工具有:MySQL
Workbench、phpMyAdmin、Navicat Preminum、MySQLDumper、SQLyog、dbeaver、MySQL ODBC
Connector。
工具1. MySQL Workbench
MySQL官方提供的圖形化管理工具M(jìn)ySQL Workbench完全支持MySQL 5.0以上的版本。MySQL Workbench
分為社區(qū)版和商業(yè)版,社區(qū)版完全免費(fèi),而商業(yè)版則是按年收費(fèi)。
MySQL Workbench 為數(shù)據(jù)庫管理員、程序開發(fā)者和系統(tǒng)規(guī)劃師提供可視化設(shè)計(jì)、模型建立、以及數(shù)據(jù)庫
管理功能。它包含了用于創(chuàng)建復(fù)雜的數(shù)據(jù)建模ER模型,正向和逆向數(shù)據(jù)庫工程,也可以用于執(zhí)行通常需
要花費(fèi)大量時間的、難以變更和管理的文檔任務(wù)。
下載地址:http://dev.mysql.com/downloads/workbench/。
工具2. Navicat
Navicat MySQL是一個強(qiáng)大的MySQL數(shù)據(jù)庫服務(wù)器管理和開發(fā)工具。它可以與任何3.21或以上版本的
MySQL一起工作,支持觸發(fā)器、存儲過程、函數(shù)、事件、視圖、管理用戶等,對于新手來說易學(xué)易用。
其精心設(shè)計(jì)的圖形用戶界面(GUI)可以讓用戶用一種安全簡便的方式來快速方便地創(chuàng)建、組織、訪問和
共享信息。Navicat支持中文,有免費(fèi)版本提供。 下載地址:http://www.navicat.com/。
工具3. SQLyog
SQLyog 是業(yè)界著名的 Webyog 公司出品的一款簡潔高效、功能強(qiáng)大的圖形化 MySQL 數(shù)據(jù)庫管理工具。
這款工具是使用C++語言開發(fā)的。該工具可以方便地創(chuàng)建數(shù)據(jù)庫、表、視圖和索引等,還可以方便地進(jìn)行
插入、更新和刪除等操作,同時可以方便地進(jìn)行數(shù)據(jù)庫、數(shù)據(jù)表的備份和還原。該工具不僅可以通過
SQL文件進(jìn)行大量文件的導(dǎo)入和導(dǎo)出,還可以導(dǎo)入和導(dǎo)出XML、HTML和CSV等多種格式的數(shù)據(jù)。 下載地
址:http://www.webyog.com/,讀者也可以搜索中文版的下載地址。
工具4:dbeaver
DBeaver是一個通用的數(shù)據(jù)庫管理工具和 SQL 客戶端,支持所有流行的數(shù)據(jù)庫:MySQL、PostgreSQL、
SQLite、Oracle、DB2、SQL Server、 Sybase、MS Access、Teradata、 Firebird、Apache Hive、Phoenix、
Presto等。DBeaver比大多數(shù)的SQL管理工具要輕量,而且支持中文界面。DBeaver社區(qū)版作為一個免費(fèi)開
源的產(chǎn)品,和其他類似的軟件相比,在功能和易用性上都毫不遜色。
下載地址:https://dbeaver.io/download/
可能出現(xiàn)連接問題:
有些圖形界面工具,特別是舊版本的圖形界面工具,在連接MySQL8時出現(xiàn)“Authentication plugin
‘caching_sha2_password’ cannot be loaded”錯誤。
出現(xiàn)這個原因是MySQL8之前的版本中加密規(guī)則是mysql_native_password,而在MySQL8之后,加密規(guī)則
是caching_sha2_password。解決問題方法有兩種,第一種是升級圖形界面工具版本,第二種是把MySQL8
用戶登錄密碼加密規(guī)則還原成mysql_native_password。
第二種解決方案如下,用命令行登錄MySQL數(shù)據(jù)庫之后,執(zhí)行如下命令修改用戶密碼加密規(guī)則并更新用
戶密碼,這里修改用戶名為“root@localhost”的用戶密碼規(guī)則為“mysql_native_password”,密碼值為
“123456”,如圖所示。
#使用mysql數(shù)據(jù)庫
USE mysql;
#修改'root'@'localhost'用戶的密碼規(guī)則和密碼
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'abc123';
#刷新權(quán)限
FLUSH PRIVILEGES;
6. 常見的問題
6.1 root用戶密碼忘記,重置的操作
1: 通過任務(wù)管理器或者服務(wù)管理,關(guān)掉mysqld(服務(wù)進(jìn)程)
2: 通過命令行+特殊參數(shù)開啟mysqld mysqld –
defaults-file=“D:\ProgramFiles\mysql\MySQLServer5.7Data\my.ini” --skip-grant-tables
3: 此時,mysqld服務(wù)進(jìn)程已經(jīng)打開。并且不需要權(quán)限檢查
4: mysql -uroot 無密碼登陸服務(wù)器。另啟動一個客戶端進(jìn)行
5: 修改權(quán)限表
(1) use mysql;
(2)update user set authentication_string=password(‘新密碼’) where user=‘root’ and Host=‘localhost’;
(3)flush privileges;
6: 通過任務(wù)管理器,關(guān)掉mysqld服務(wù)進(jìn)程。
7: 再次通過服務(wù)管理,打開mysql服務(wù)。 8: 即可用修改后的新密碼登陸。
6.2 mysql命令報(bào)“不是內(nèi)部或外部命令”
如果輸入mysql命令報(bào)“不是內(nèi)部或外部命令”,把mysql安裝目錄的bin目錄配置到環(huán)境變量path中。如
下:
6.3 命令行客戶端的字符集問題
mysql> INSERT INTO t_stu VALUES(1,'張三','男');
ERROR 1366 (HY000): Incorrect string value: '\xD5\xC5\xC8\xFD' for column 'sname' at
row 1
原因:服務(wù)器端認(rèn)為你的客戶端的字符集是utf-8,而實(shí)際上你的客戶端的字符集是GBK。
查看所有字符集:SHOW VARIABLES LIKE ‘character_set_%’;
解決方案,設(shè)置當(dāng)前連接的客戶端字符集 “SET NAMES GBK;”
6.4 修改數(shù)據(jù)庫和表的字符編碼
修改編碼:
(1)先停止服務(wù),(2)修改my.ini文件(3)重新啟動服務(wù)
說明:文章來源:http://www.zghlxwxcb.cn/news/detail-771149.html
如果是在修改my.ini之前建的庫和表,那么庫和表的編碼還是原來的Latin1,要么刪了重建,要么使用
alter語句修改編碼。文章來源地址http://www.zghlxwxcb.cn/news/detail-771149.html
mysql> create database 0728db charset Latin1;
Query OK, 1 row affected (0.00 sec)
mysql> use 0728db;
Database changed
mysql> show create table student\G
*************************** 1. row ***************************
Table: student
Create Table: CREATE TABLE `student` (
`id` int(11) NOT NULL,
`name` varchar(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
1 row in set (0.00 sec)
mysql> alter table student charset utf8; #修改表字符編碼為UTF8
Query OK, 0 rows affected (0.01 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> show create table student\G
*************************** 1. row ***************************
Table: student
Create Table: CREATE TABLE `student` (
`id` int(11) NOT NULL,
`name` varchar(20) CHARACTER SET latin1 DEFAULT NULL, #字段仍然是latin1編碼
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)
mysql> alter table student modify name varchar(20) charset utf8; #修改字段字符編碼為UTF8
Query OK, 0 rows affected (0.05 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> show create table student\G
*************************** 1. row ***************************
Table: student
Create Table: CREATE TABLE `student` (
`id` int(11) NOT NULL,
`name` varchar(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)
mysql> show create database 0728db;;
+--------+-----------------------------------------------------------------+
|Database| Create Database |
+------+-------------------------------------------------------------------+
|0728db| CREATE DATABASE `0728db` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+------+-------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> alter database 0728db charset utf8; #修改數(shù)據(jù)庫的字符編碼為utf8
Query OK, 1 row affected (0.00 sec)
+--------+-----------------------------------------------------------------+
|Database| Create Database |
+--------+-----------------------------------------------------------------+
| 0728db | CREATE DATABASE `0728db` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+--------+-----------------------------------------------------------------+
1 row in set (0.00 sec)
到了這里,關(guān)于MySQL安裝與環(huán)境搭建——超詳細(xì)教程的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!