1. 程式人生 > 其它 >Task00:緒論 - 環境搭建

Task00:緒論 - 環境搭建

本章重點:

  • 在電腦上安裝MySQL資料庫系統
  • 安裝客戶端並連線到本機上的MySQL資料庫
  • 使用提供的指令碼建立本教程所使用的示例資料庫

1. MySQL 8.0 的安裝

考慮到大家所使用的作業系統的不同, 本教程分別提供了 windows 10, macOS和centos平臺上的MySQL 8.0 的安裝流程, 你可根據自己所使用電腦的作業系統選擇以下三節中的一節進行學習和安裝.

1.1 windows 下 MySQL 8.0 的下載安裝

首先以最常見的 win10 為例, 介紹 MySQL8.0 的下載安裝.

1.1.1 下載

MySQL 針對個人使用者和商業使用者提供了不同的版本, MySQL 社群版(MySQL Community Edition) 是供個人使用者免費下載的開源資料庫, 本教程將以MySQL 社群版為例進行安裝連線和SQL查詢的講解.

MySQL 官網上的社群版軟體的下載地址https://dev.mysql.com/downloads/, 選擇MySQL Installer for Windows可以下載 windows 作業系統下的最新版 MySQL安裝檔案. 如果需要安裝歷史版本, 可以選擇最後的Download Archives後選擇MySQL Installer,然後在新頁面裡選擇所需歷史版本的社群版.

如果想下載本教程所使用的 MySQL 8.0.21.0, 也可以在百度⽹盤下載,

下載連結:https://pan.baidu.com/s/1SOtMoVqqRXwa2qD0siHcIg提取碼:80lf

備用下載連結:https://pan.baidu.com/s/1zK2vj50DvuAee-EqAcl-0A

提取碼:80lf

我們接下來以文件寫作時的最新版 MySQL 8.0.21 為例, 進行下載安裝的介紹.

進入到MySQL Installer for Windows頁面後, 選擇下載下方的完整安裝程式.

在下載頁面選擇下方的不註冊,僅下載.

完成下載後, 得到一個字尾為msi的安裝檔案.

1.1.2 安裝

找到剛才下載好的msi檔案, 雙擊開始安裝. 初學者建議採用完全安裝模式(Full)進行安裝:

選擇安裝路徑和資料存放路徑, 二者都可以選擇在非系統盤(注意要點選最右側的按鈕進行選擇, 不要直接在文字框中修改安裝路徑).

完全安裝模式下, 部分模組會依賴其他其他元件(每臺電腦上列出的依賴項很可能會有不同).

如果你的電腦之前沒有安裝過這些元件, 則需要額外進行安裝, 此處點選 Execute 按鈕即可:

在這些所依賴的元件的安裝過程中, 只需要一路選擇"同意"並逐個安裝就可以了:

安裝好⼀個元件後, 點選關閉按鈕, ⾃動開始安裝下⼀個元件(這一步根據作業系統版本可能會略有不同)

正常情況下,會將所有元件安裝成功.但可能會有個別組件未安裝成功. 個別元件沒有呈現綠⾊是因為你的電腦中缺少某個程式, 例如, 如果你的電腦沒有安裝 Python 環境, 則該專案就不會呈現綠色. 待下邊剩下 3 個按鈕且上⽅⼤部分元件為綠色時, 即可點選 Next:

如果有個別組件未安裝成功, 此時可以先選擇 Yes, 忽略個別元件的安裝.

點選 Excute, 開始安裝伺服器軟體MySQL Server, 連線和查詢軟體MySQL Workbench及其他相關軟體等內容.

稍等片刻, 安裝完成後, 點選 Next

下圖這一步是選是否以叢集方式安裝 MySQL, 我們選擇預設的第一個, 然後點選 Next:

此處上邊的各種相關配置保持預設即可,勾選最下邊的"Show Advanced and Logging Options"框,然後點選 Next:

下圖是密碼強度的設定, 第⼀種模式為強密碼校驗模式, MySQL 8.0 推薦使⽤最新的資料庫和客戶端, 更換了加密外掛, 者可能導致第三⽅客戶端⼯具⽆法連線資料庫.

第⼆種加密⽅式沿襲了 MySQL 5.x 的加密⽅式, 對第三⽅⼯具連線不敏感, 我們僅為了學習 SQL 查詢, 並不需要很高的安全性, 因此此處請務必選擇第二種⽅式(非常重要):

在這一步設定 MySQL 的 root 賬戶密碼, 由於上一步選擇了第二個選項, 因此這裡可以設定為較簡單容易記憶的而密碼, 例如"123456". 建議設定⽐較簡單的密碼, 並將密碼記錄下來以防遺忘, 忘記密碼是⼀件麻煩事.

此處保持預設即可, 如果 windows service name 右側有⻩⾊警告圖示顯示, 表示名稱重複, ⼿動更換⼀個名稱即可, 然後點選 Next:

Logging Options 這裡使用預設設定即可, 我們的學習中暫時用不到這些設定, 直接點選 Next:

下圖是設定是否大小寫敏感的. 這一步非常重要,由於windows系統是大小寫不敏感的, 請大家務必使用第一個選項Lower Case.

點選 Execute

完成安裝後, 在下圖中點選 Finish 回到安裝的主程序:

在主程序介面點選 Next

這一步無需任何選擇, 直接點選 Finish

進入到 Connect To Server 介面後, 輸⼊剛才設定的密碼, 點選 check 進⾏校驗, 校驗通過後 Status 會顯示連線成功, 然後點選 Next

點選 Excute 應用設定:

上述步驟完成後, 點選 Finish

回到安裝主程序後, 點選 Next

點選 Finish,完成安裝.

現在, 你的電腦上就已經安裝了MySQL的伺服器軟體, 用於連線伺服器進行查詢的MySQL Workbench, 以及其他程式語言連線MySQL的驅動, 此外還安裝了幾個示例資料庫, 但本教程將採用<SQL基礎教程>一書中的示例資料庫, 該資料庫的建立和資料匯入將在本章第三節介紹.

1.2 macOS 下 MySQL 8.0 的下載安裝

MySQL 官網上社群版軟體的下載地址https://dev.mysql.com/downloads/, 選擇MySQL Community Server可以進一步選擇下載 macOS作業系統下的最新版 MySQL. 如果需要安裝歷史版本, 可以選擇最後的Download Archives後選擇MySQL Installer,然後在新頁面裡選擇所需歷史版本的社群版.

然後選擇下載dmg安裝檔案.

點選下方的直接下載.

下載的檔案為:

如果官網下載速度很慢, 或者希望下載本教程所使用的 MySQL 8.0.21.0, 也可以在百度⽹盤下載,

下載連結:https://pan.baidu.com/s/1ka22UtzqFdOaIosrpKz92w提取碼: 8xh4

備用下載連結:https://pan.baidu.com/s/1XeA_8PQvvRePEdZ5ayOT-Q提取碼:8xh4

我們接下來以文件寫作時的最新版為 8.0.21 為例, 進行下載安裝講解.

在mac上直接雙擊dmg檔案就可以開始安裝了. 我們只選擇了安裝MySQL Community Server, 因此安裝過程較為簡單.

注意, 在配置MySQL伺服器這一步, 最好選擇下邊的選項, 這樣就可以使用簡單密碼.

在 Configuration 接下來的步驟需要設定密碼, 如果上一步選擇了第二個選項, 這裡就可以使用比較簡單的密碼. 請務必牢記自己設定的密碼.

注意, 如果在前一步選擇使用了MySQL8.0強密碼, MySQL安裝過程中會自動生成一個隨機密碼, 類似於下圖這種形式:

此時請截圖保留該密碼, 並在安裝完成後, 使用該密碼登入並重新設定密碼. 由於選擇使用了強密碼, 此時設定密碼必須使用大小寫字母數字和特殊符號的組合.

完成安裝後, 開啟電腦的系統偏好設定, 會出現MySQL的服務標識.

正確安裝MySQL後, 開啟上述截圖中的MySQL之後會看到如下介面, 在這裡可以啟動和停止MySQL服務, 以及配置MySQL是否隨電腦啟動而自動啟動.

安裝之後, 如果我們直接在終端輸入mysql, 會提示找不到命令, 需要配置一下環境變數才可以, 輸入以下命令:

PATH="$PATH":/usr/local/mysql/bin

再通過終端輸入mysql登入命令後, 就可以看到mysql的互動式介面了.

然後輸入以下內容, 將自己電腦的mysql路徑配置到環境變數中, 如果在安裝過程中你沒修改過安裝路徑, 那麼你的電腦上MySQL的路徑應該和下述程式碼中所使用的路徑是一致的:

export PATH=$PATH:/usr/local/mysql/bin

執行上述配置後, 通過輸入下面這條命令使修改生效

source ~/.bash_profile

接下來, 在你的終端中輸入命令來登入到MySQL

mysql -u root -p

然後需要輸入你剛才設定的密碼(如果你選擇了強密碼, 則這裡需要輸入你查到的隨機密碼), 如果看到以下介面, 則表示你的電腦上: 1.MySQL8.0已經正確安裝, 2.已經正確配置了MySQL8.0的環境變數,並且3.已經啟動MySQL伺服器程式. 如果並沒有出現下屬介面, 請按照上述三個順序逐個檢查.

使用終端(或者windows下的命令列)與MySQL進行互動是非常便捷和高效的, 但是對於平時不怎麼使用終端的普通人來說, 使用終端在做資料查詢時, 在查詢結果的顯示和匯出方面有諸多不便, 特別是當我們對 SQL 查詢不熟練的時候, 這種方式很不利於我們進行查詢語句的除錯. 因此本教程將選擇查詢介面更加友好的客戶端工具來連線資料庫, 這種通過終端連線MySQL的方式暫時不再使用.

接下來請安裝跳轉到2.1節安裝MySQL Workbench並連線本機的MySQL服務.

注:
macOS上的SQL查詢工具也有很多其他的選擇, 比如DBeaver(開源, 免費), DataGrip(需付費購買,提供30天的免費試用期, 學生使用學校的郵箱可以申請到一年的免費使用權)等,可參考知乎上的問題 :
Mac平臺上有哪些好的SQL 資料庫開發工具?https://www.zhihu.com/question/20498949

1.3 Linux 下 MySQL 8.0 的下載安裝

本節我們以 centos 版本的 Linux 作業系統為例, 介紹下載安裝 MySQL8.0.21 的過程. 示例作業系統的linux 版本:centos-release-7-7.1908.0.el7.centos.x86_64

在 CentOS 系統中預設是安裝了 MariaDB 的, 但是我們需要的是 MySQL, 我們可以直接下載安裝 MySQL, 安裝 MySQL 可以覆蓋 MariaDB.

關於 MariaDB:
MariaDB 資料庫管理系統是 MySQL 的一個分支, 主要由開源社群在維護, 採用 GPL 授權許可. 開發這個分支的原因之一是:甲骨文公司收購了 MySQL 後, 有將 MySQL 閉源的潛在風險, 因此社群採用分支的方式來避開這個風險. MariaDB 的目的是完全相容 MySQL, 包括 API 和命令列, 使之能輕鬆成為 MySQL 的代替品. 但在兩個分支經過了幾年的各自迭代之後, 在一些方面二者出現了一些差異.

1.3.1 安裝步驟:

首先, 從MySQL官網下載 MySQL 的 Yum Repository. 根據 CentOS 和 MySQL 的版本,選擇下載相對應的檔案. 本文選擇紅色方框的檔案.

Yum 是一個基於 rpm 的軟體包管理器, 它可以從指定的伺服器自動下載 RPM 包並且安裝, 可以自動處理依賴性關係, 並且一次安裝所有依賴的軟體包, 無須繁瑣地一次次下載、安裝.

下載命令:

wget https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm

用 yum 命令安裝下載好的 rpm 包.

yum -y install mysql80-community-release-el7-2.noarch.rpm

安裝 MySQL 伺服器.

yum -y install mysql-community-server

這一步由於要下載安裝檔案, 可能會花一些時間. 安裝完成後就會覆蓋掉之前的 mariadb.
當出現如下圖所示的內容,則代表 MySQL 就安裝完成了.

1.3.2 MySQL 資料庫設定

啟動 MySQL

systemctl start  mysqld.service

檢視 MySQL 執行狀態, Active 後面的狀態代表啟功服務後為 active (running), 停止後為 inactive (dead), 執行狀態如圖:

systemctl status mysqld.service

重新啟動 Mysql 和停止 Mysql 的命令如下:

service mysqld restart  #重新啟動 Mysql
systemctl stop mysqld.service   #停止 Mysql

此時 MySQL 已經開始正常執行, 不過要想進入 MySQL 還得先找出此時 root 使用者的密碼, 通過如下命令可以在日誌檔案中找出密碼:
為了加強安全性, MySQL8.0 為 root 使用者隨機生成了一個密碼, 在 error log 中, 關於 error log 的位置, 如果安裝的是 RPM 包, 則預設是/var/log/mysqld.log. 只有啟動過一次 mysql 才可以檢視臨時密碼

使用命令:

grep 'temporary password' /var/log/mysqld.log

檢視初始的隨機密碼:

登入 root 使用者

mysql -u root -p

然後輸入上述查到的初始密碼. 登入後還不能做任何查詢或建庫操作, 因為 MySQL 預設必須修改初始的隨機密碼之後才能操作資料庫,否則會報錯:

修改密碼為"123456", 注意結尾要有分號, 表示語句的結束.

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

這裡有個問題, 新密碼設定的時候如果設定的過於簡單會報錯:

原因是因為 MySQL 有密碼設定的規範, 具體是與 validate_password_policy 的值有關:

MySQL 完整的初始密碼規則可以通過如下命令檢視:

密碼的長度是由 validate_password_length 決定的, 而 validate_password_length 的計算公式是:

validate_password_length = validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)

如果想要設定簡單的密碼必須要修改約束, 修改兩個全域性引數:

  • validate_password_policy代表密碼策略, 預設是 1:符合長度, 且必須含有數字, 小寫或大寫字母, 特殊字元. 設定為 0 判斷密碼的標準就基於密碼的長度了. 一定要先修改兩個引數再修改密碼
mysql> set global validate_password.policy=0;
  • validate_password_length代表密碼長度, 最小值為 4
mysql> set global validate_password.length=4; 

修改完,如圖

此時密碼就可以設定的很簡單, 例如 1234 之類的. 到此資料庫的密碼設定就完成了.

但此時還有一個問題, 就是因為安裝了 Yum Repository, 以後每次 yum 操作都會自動更新, 如不需要更新, 可以把這個 yum 解除安裝掉:

[root@localhost ~]# yum -y remove mysql80-community-release-el7-2.noarch

在 CentOS 中 MySQL 的主要配置所在的目錄:

1 /etc/my.cnf 這是 mysql 的主配置檔案
2 /var/lib/mysql mysql 資料庫的資料庫檔案存放位置
3 /var/log mysql 資料庫的日誌輸出存放位置

一些可能會用到的設定:

設定表名為大小寫不敏感:

1.用root帳號登入後, 使用命令

systemctl stop mysqld.service

停止MySQL資料庫服務,修改vi /etc/my.cnf,在[mysqld]下面新增

 lower_case_table_names=1

這裡的引數 0 表示區分大小寫,1 表示不區分大小寫.
2.做好資料備份,然後使用下述命令刪除資料庫資料(刪除後, 資料庫將恢復到剛安裝的狀態)

rm -rf /var/lib/mysql

3.重啟資料庫,此時資料庫恢復到初始狀態.

service mysql start

4.重複安裝時的操作, 查詢臨時密碼

grep 'temporary password' /var/log/mysqld.log

5.修改密碼. 密碼8位以上, 大小寫符號資料. 如想要使用簡單密碼, 需按照上述安裝流程中的步驟進行操作.

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '****';update user set host = "%" where user='root';

6.重新整理MySQL的系統許可權相關表

FLUSH PRIVILEGES;

此時, MySQL的表名的大小寫不再敏感.

1.3.3 設定遠端連線:

如果你想要在另外一臺電腦上連線 centos 上安裝的 MySQL, 那麼還需要一些其他的設定.

首先需要將 MySQL 設定為可以遠端連線,設定 mysql 庫的 user 表中帳號的 host 為%, %表示可以從任意 ip 連線 mysql, 為了安全性, 也可以設定為你自己所用於連線 centos 上 MySQL 的電腦所使用的 IP.

其次, MYSQL 8.0 內新增加 mysql_native_password 函式,通過更改這個函式密碼來進行遠端連線.

例如,更改 root 使用者的 native_password 密碼

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY'MyPass@123';

接下來為 centos 的防火牆開啟 MySQL 所使用的 3306 埠,並重新載入防火牆:

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

完成上述設定後, 重新啟動 MySQL 服務:

service mysqld restart  #重新啟動 Mysql

最後, 在另外一臺電腦上, 使用下一節介紹的各類客戶端工具進行連線測試.

2. 連線 MySQL 並執行 SQL 查詢

在安裝成功MySQL後, 我們可以通過開始選單->控制面板->管理工具->服務中查詢並開啟或關閉MySQL服務. 開啟服務後, MySQL Server將以後臺服務的形式在你的電腦上執行. 如果想要進行查詢, 還需要使用命令列工具或者其他更加友好的應用程式連線到MySQL服務.

2.0 使用命令列方式連線MySQL服務

連線資料庫的最基本的⽅式, 是使用命令⾏. 以win10為例, 在完成 MySQL 服務的安裝後, 在開始選單找到剛才安裝好的 MySQL 8.0 命令⾏⼯具,單擊即可開啟:

輸⼊你在安裝過程中為root使用者設定的密碼即可連線到資料庫, 看到如下界⾯, 表示資料庫安裝成功,並且你已經使用命令列連線到了資料庫(圖中紅框表示資料庫版本), 在最後的 "mysql>" 後即可輸入SQL命令執行各種資料庫操作.

但是使用命令列在做資料查詢時, 在查詢結果的顯示和匯出方面有諸多不便, 特別是當我們對 SQL 查詢不熟練的時候, 這種方式不利於我們進行查詢語句的修改和除錯. 因此本教程將選擇查詢介面更加友好的客戶端工具(使用MySQL Workbench)來連線資料庫, 這種通過命令列連線的方式暫時不再使用.

常見的可用於連線MySQL資料庫並進行查詢等操作的管理工具包括開源軟體 MySQL Workbench, HeidiSQL和DBeaver, 以及商業軟體Navicat(有免費版和14天試用版),SQLyog(有免費的社群版)和DataGrip等等.

2.1 使用 MySQL Workbench 連線 MySQL

MySQL Workbench 是 MySQL 官方的客戶端工具, 支援windows, macOS和Linux. 對於windows使用者, 我們在安裝 MySQL 的時候由於選擇的是完整安裝模式, 因此也同時安裝了這個工具, 對於macOS的使用者, 可以在https://dev.mysql.com/downloads/workbench/選擇macOS版本進行下載安裝. MySQL Workbench 是一款功能強大的資料庫管理工具, 它既可以用於設計資料庫, 也可以用於連線資料庫進行查詢, 我們這個課程主要使用它的連線資料庫進行查詢的功能.

如果你使用的是windows 7 作業系統, 開啟 MySQL Workbench 後, 會有如下提示:

這是說 MySQL 不再維護win7系統下的MySQL Workbench, 但並不影響使用. 開啟MySQL Workbench後, 使用快捷鍵 ctrl+u,或者點選選單欄裡的 Database->Connect to Database, 進入資料庫連線的設定介面, 如下圖所示:

然後如下圖紅框中設定連線本機的 MySQL8.0, 輸入密碼並點選 OK:

如果彈出如下對話方塊,表示 MySQL 伺服器設定為對於表名和列名的大小寫敏感, 但由於 windows 系統預設的是大小寫不敏感, 因此當表名或列名有大寫字母時, 即使寫的 SELECT 語句中正確地使用了大寫的表名, 程式也無法正確執行. 這時候建議大家在開始學習查詢之前,把表名逐一更改為小寫.

開啟後的界⾯

在中間的編輯器裡, 就可以寫 SQL 查詢了.

下一次開啟軟體時, 可以直接點選儲存的資料庫連線, 不需要先進行設定後再連線了:

2.2 [選學]使用 HeidiSQL 連線 MySQL

HeidiSQL 是一款功能非常強大的開源免費的資料庫客戶端軟體, 採用 Delphi 語言開發, 支援 Windows 作業系統. 支援 MySQL、Postgresql、MariaDB、Percona Server 和微軟的 SQL Server, 官網下載地址:https://www.heidisql.com/download.php, 下載 portable 版本後, 解壓縮就可以使用.

點選資料夾中的 heidisql.exe, 在彈出對話方塊裡點選"新建", 然後填寫密碼, 再點選"開啟"即可連線到本機上安裝的 MySQL 資料庫.

軟體的主介面如圖所示:

2.3 [選學]使用 DBeaver 連線 MySQL

DBeaver 是一款基於 JAV 開發的免費和開源(GPL)的通用資料庫管理工具和 SQL 客戶端, 提供windows, macOS和Linux全平臺支援, 能夠連線包括 MySQL, PostgreSQL, Oracle, DB2, MSSQL, Sybase, Mimer, HSQLDB, Derby 等主流資料庫軟體在內的絕大多數相容 JDBC 驅動的資料庫. DBeaver 提供一個圖形介面用來檢視資料庫結構、執行 SQL 查詢和指令碼, 瀏覽和匯出資料, 處理 BLOB/CLOB 資料, 修改資料庫結構等等.

由於是開源軟體, 大家可直接從官網(https://dbeaver.io/)下載, 安裝完成後, 開啟軟體, 點選"檔案"選單下的"新建連線"圖示, 並選擇 MySQL:

然後點選下一步:

在下方彈出的設定視窗中, "伺服器地址"使用預設的localhost, "資料庫"暫時留空, 然後在下方填入自己設定的密碼, 最後點選測試連線.

本次學習主要使用一個新建的 shop 資料庫, 但因為相關資料我們還沒匯入(建庫建表及資料匯入的指令碼在本章第三節),因此資料庫這裡先留空. 等下一步匯入資料後, 再進一步修改連線引數.

首次連線時會提示需要下載驅動程式,

完成驅動程式的下載後, 再次點選"測試連線",如果彈出如下對話方塊, 則表示連線成功:

點選確定並儲存連線後, 以後就可以直接雙擊這個連線進行資料庫連線了. 如果需要儲存多個數據庫連線, 可以使用快捷鍵 F2 或選中當前連線並點選滑鼠右鍵後選擇"重新命名"為當前連線起一個便於識別的名稱.

接下來就可以開始寫你的第一個 SQL 語句了: 如上圖這樣,選中剛剛儲存的連線, 滑鼠右鍵選第一個按鈕"SQL 編輯器", 或者直接使用快捷鍵 F3, 就會開啟一個 SQL 編輯器, 然後就可以在這裡編寫 SQL 語句了.

例如我們可以使用如下語句完成本教程所使用的示例資料庫的建立:

注意, 在使用建立資料庫的語句時, 是無需在紅框中選中資料庫的, 但其他所有的建立表,匯入資料, 和最常用的查詢語句, 都需要選中相應的資料庫. 在執行上述語句後, 我們可以回到連線設定裡, 把預設資料庫連線改為剛才建立的 shop.

2.4 [選學]使用 Navicat 連線 MySQL

Navicat 包含了一系列的功能強大的資料庫管理軟體, 主要有: 完整功能版的 Navicat Premium, 以及專門用於MySQL資料庫管理的 Navicat for MySQL, 用於PostgreSQL資料庫管理的 Navicat forPostgreSQL, 用於SQL Server資料庫管理的 Navicat for SQL Server, 用於Oracle資料庫管理的 Navicat for Oracle, 等等, 但它提供的免費的版本 Navicat Lite已足夠本次課程使用, 除此之外, 上述的其他軟體均為收費軟體.

注:
Navicat官網已經不再提供 Navicat Lite 的下載了, 但可以通過搜尋引擎找到 Navicat Lite 的歷史版本的下載連結. 此外, 也可以從 Navicat官網下載 Navicat Premium 或 Navicat for MySQL 的14天試用版.

2.5 [選學]使用 SQLyog 連線 MySQL

SQLyog 是業界著名的 Webyog 公司出品的一款簡潔高效、功能強大的圖形化 MySQL 資料庫管理工具. SQLyog 的企業版是收費軟體, 但該軟體也提供了社群版供大家使用, 雖然在功能上有些限制, 但對於本課程已經足夠用了. SQLyog 社群版的下載地址為https://github.com/webyog/sqlyog-community/wiki/Downloads

2.6 [選學]DataGrip的安裝和連線MySQL

DataGrip是大名鼎鼎的 JetBrains 出品的資料庫工具, 支援windows, macOS和Linux作業系統.

  1. 建立學習用的資料庫

根據《SQL基礎教程》提供的MySQL版本的資料庫,資料表的建立以及資料匯入的程式碼, 經過一些修改, 建立了一份 sql 指令碼, 執行該指令碼可以一步到位地建立本文件所需的資料庫shop及其中所有的表,並插入本教程所需要的所有資料

由於本教程聚焦於面向初學者介紹SQL查詢, 對於資料庫的建立, 表的建立和資料匯入, 以及資料更新, 暫時不做深入介紹,有興趣和需要的讀者可參考《SQL基礎教程》1-4,1-5,以及第四章.

下述SQL指令碼可用於建立本教程所使用的示例資料庫shop以及資料庫中表的建立和資料的插入.

見《附錄3 - shop.sql》

SQL 指令碼的一些要點-- v 9.08

0.儲存引擎使用 InnoDB, 字符集改為 utf8mb4 以更好地支援中文.
1.所有表名所使用的英文字母都改為小寫(後續章節中,SQL 查詢中的表名也需要相應修改為小寫)
2.所有列名所使用的英文字母確認為小寫(後續章節中,SQL 查詢中的列名也需要相應修改為小寫)
3.存在問題的資料, 例如 inventoryproduct 表的 inventory_id 列應為 P 開頭的, 已修正為正確的資料.
4.需測試 SQL 指令碼在命令列及各個客戶端中是否能被正確執行.

  • MySQL Workbench 已測試通過(在win10 使用 MySQL Workbench 8.0.21)
  • DBeaver 已測試通過(使用"執行 SQL 指令碼(CTR+x)") (在win10 使用DBeaver7.2.0)
  • HeidiSQL 已測試通過(在win10 使用HeidiSQL11.0.0)
  • navicat 已測試通過(在win10&win7 使用 navicat premium 15.0.17)
  • sqlyog 已測試通過(在win10 使用 SQLyog 12.09)
  • 命令列 win10 下測試未通過. 插入中文資料時提示" Data too long for column 'product_name' at row 1"