【相關學習推薦:#php程式設計(影片)】
關係型資料庫
#隨著應用程式規模擴大和複雜性提升,資料的儲存和檢索是一個很大的問題,例如對於一個部落格系統,文章如何儲存?對於社群媒體系統,用戶關係和動態如何儲存?對於一個電商系統,商品和交易資訊如何儲存?而且光儲存還不夠,還要能夠很方便地對資料進行動態查詢、更新和刪除。
圍繞著這個問題,早在40 多年前,IBM 的科學家就開始研究,並提出關係型資料庫管理系統的概念,資料庫就是透過特定資料結構組織、儲存和管理大量資料的倉庫,而關係型資料庫管理系統(Relational Database Management System,即RDBMS),指的是建立在關係型模型基礎上的資料庫。
關係型資料庫管理系統可以簡稱為關聯式資料庫,具備以下特點:
註:透過數組這種記憶體型儲存也可以維護和管理數據,但不利於海量數據,畢竟記憶體資源有限,而且更致命的是不能持久化;透過文件可以持久化儲存海量數據,但是儲存和檢索IO 開銷太大,效能不足以支撐大量用戶的並發請求。而關係型資料庫可以同時解決這些問題。
關係型資料庫有很多,包括MySQL、Oracle、SQL Server、SQLite、Postgres 等,但其中最受歡迎的、應用最廣泛的當屬MySQL,這很大程度上歸因於MySQL 是開源免費的,並且在大公司的實踐中證明它完全可以肩負起海量數據存儲,在性能上也足以支撐高並發請求,抗造耐打,還可以不花錢,那可太好了(比起Oracle 高昂的費用,不要太香),另外,MySQL 與PHP 也是一對好基友,PHP 原生對MySQL 有著非常好的支持,世界上最流行的Web 開發語言世界上最受歡迎的關係型資料庫,簡直是珠聯璧合,也因此誕生了許多知名的應用。這兩個關係好到可以穿一條褲子,因此有人戲稱「離開了 MySQL,PHP 還能幹啥」。
註:目前,國外 Postgres 資料庫也日漸流行起來,它也是免費開源的,可能很大程度上是因為 MySQL 被 Oracle 收購後,前景存在著許多不確定性。
相關學習推薦:mysql教學(影片)
使用MySQL 之前,需要先安裝它,不過在建置本機PHP 開發環境環節,我們推薦的整合開發工具預設都包含了MySQL:
無論是Laradock、Xampp、MAMP、Laragon 或是PhpStudy 都內建了對MySQL 的支援(含客戶端和服務端,服務端是儲存資料的中央倉庫,客戶端可以透過SQL 指令與服務端互動進行增刪改查與管理工作),而且開箱即用。所以這裡就不單獨介紹如何在本機安裝 MySQL 了。
附註:本系列教學假設你已經掌握基本的 SQL 語句操作,如果你不太了解,可以閱讀 W3School SQL 教學學習。
無論是Mac 還是Windows 系統,都有大量的MySQL 用戶端工具,最原始的是MySQL 自帶的命令列交互,以Laradock 為例,我們可以透過在laradock
專案目錄下執行以下命令啟動MySQL 容器(基於Windows Terminal 1.0 命令列環境演示,Mac 系統中命令完全一樣):
#然後進入透過docker-compose exec mysql bash
進入該容器:
mysql -h localhost -u root -p 連線到資料庫伺服器了(預設密碼是
root):
接下來,我們就可以執行SQL 語句與伺服器進行互動了,例如透過show databases;
查看所有資料庫(SQL 語句以分號作為結尾,不能省略):
你可以在命令列中透過SQL 語句執行所有MySQL 資料庫DML/DDL 操作,這裡不一一列舉了,下面我們將重點介紹通過GUI 工具來操作資料庫。
首先MySQL 官方提供了適用於Windows 和Mac 系統的MySQL Workbench,下載安裝完成後,開啟主介面,點選「MySQL Connections」右側的小加號,新增新的連接,這裡我們填入本機Laradock 對應的連接資訊:
填入完成後,點選右下角的「Test Connection」,提示成功,則點選「Ok 」儲存:
然後就可以在連線清單中點選laradock 進入本機MySQL 資料庫管理頁面了:
接下來,我們就可以透過MySQL Workbench 圖形化介面管理本機MySQL 資料庫了。
附註:MySQL Workbench 適用於 Windows 和 Mac 系統。
官方提供的工具不好用,在Mac 系統中,首選Sequel Pro 作為MySQL 用戶端工具:
它是一個免費的第三方MySQL 用戶端管理工具,非常好用,第一次安裝後,開啟應用,點擊左側下方的「」新增連線配置,然後將連線名稱設為 laradock
,接下來,就可以設定本機MySQL Docker 容器連線資訊了:
#設定好了之後,點選「Connect」即可進入laradock
資料庫管理頁面,你可以在選擇資料庫下拉式選單選擇要操作的資料庫,或是新增資料庫:
然後就可以對這個資料庫進行管理了,具體細節可以自行探索,這裡不做深入介紹。
註:Sequel Pro 僅限 Mac 系統使用。
Jetbrains 公司也提供了專門的資料庫管理工具介紹MySQL入門、安裝和客戶端管理工具:
不過該工具需要收費,對於日常一些簡單的資料庫管理工作,也可以透過PhpStorm 整合的資料庫管理插件完成,在PhpStorm 主介面右上角,預設有一個「Database」工具條,點擊該工具條,在彈出介面左上角點擊「 」選擇數據來源,這裡我們選擇「MySQL」:
在彈出視窗配置MySQL 連線資訊(Docker 容器),配置完成後別忘了點擊頁面底部「下載缺少驅動文件”,否則無法建立連接:
#下載完成後,點擊“Test Connection”,提示成功,則可以點擊頁面底部“ Apply”按鈕儲存設置,再點選“OK”按鈕關閉該視窗。
然後我們就可以在資料來源清單點擊該連線對本機資料庫進行管理了:
你可以透過右鍵進行日常DDL/DML 操作:
附註:PhpStorm 資料來源管理功能在Windows 和Mac 中皆可使用。
還有一個比較流行的 MySQL 用戶端圖形化管理工具 Navicat For MySQL:
該工具也適用於 Windows 和 Mac 系統,在 Windows 系統上體驗更佳,但需要收費,有興趣的可以自行去下載使用。
最後,還有一個知名的 phpMyAdmin 項目,讓我們可以在 Web 瀏覽器中管理 MySQL 資料庫。在Laradock 專案中,也內建了對它的支持,要使用它,需要透過以下Docker 指令啟動該容器:
docker-compose up -d phpmyadmin
啟動完成後,就可以在瀏覽器中透過http://localhost:8080
存取phpMyAdmin 了,我們填寫下表單資訊(伺服器、使用者名稱、密碼):
注意這裡要填寫的是Docker 容器名稱mysql
,因為在容器內部透過這個名稱才可以解析到對應的MySQL 容器IP。點選「執行」,即可進入MySQL 管理介面:
顯然,由於是在瀏覽器中運行,phpMyAdmin 與所屬係統無關,後續為了統一Windows/Mac 系統示範風格,將基於phpMyAdmin 進行MySQL 資料庫管理操作。
本文來自於https://xueyuanjun.com/post/21654
#想了解更多相關文章,請關注php mysql 欄位!
以上是介紹MySQL入門、安裝和客戶端管理工具的詳細內容。更多資訊請關注PHP中文網其他相關文章!