MySQL 是熱門的開源關聯式資料庫(RDBMS)由 Oracle 開發和維護。它提供 SQL(結構化查詢語言)語法,用於小型和大規模企業處理資料庫。
在這篇文章中,我們將解釋如何在 RHEL 9 或 Rocky Linux 9 上安裝 MySQL 資料庫伺服器。我們將介紹 MySQL 8.0 和最新版本的 MySQL 8.3.0 的安裝步驟。
1. 在 RHEL 9 / Rocky Linux 9 上安裝 MySQL
在 RHEL 9 / Rocky 9 上,MySQL 版本 8 可從 AppStream 獲得儲存庫,先
$ sudo dnf update
更新後,繼續安裝 mysql-server 包,如下所示。
$ sudo dnf install mysql-server -y
安裝完成後,執行以下命令檢查已安裝的版本
$ mysql --version
2. 啟動並啟用 MySQL Server
此時,MySQL 已完全安裝,但尚未執行。需要使用以下命令將其作為 systemd 服務啟動。
$ sudo systemctl start mysqld.service
執行命令後,確認服務是否正在執行。
$ sudo systemctl status mysqld.service
此外,也可以使用以下命令設定服務在引導時啟動
$ sudo systemctl enable mysqld
3. MySQL 在 RHEL 9 / Rocky Linux 9 安全設定
預設的 MySQL 安全設定是不安全的,並且存在潛在的漏洞,攻擊者可以利用這些漏洞來破壞資料庫伺服器。MySQL 自帶 MySQL 安全安裝安全指令碼,可以幫助修改預設選項並加強資料庫伺服器。
要執行該指令碼,請在 shell 上執行以下命令。
$ sudo mysql_secure_installation
該指令碼將引導您完成幾個提示,詢問您是否要更改預設 MySQL 安裝的安全選項。
首先,您需要配置 Validate Password Plugin。這使您可以測試所需的 MySQL 密碼強度並提高安全性。該外掛檢查密碼的強度,並允許您配置強密碼。
因此,按“Y”來使用外掛提供的 VALIDATE PASSWORD 元件。
之後,您將看到三個級別的密碼驗證策略:LOW,MEDIUM,STRONG,每個級別都有其複雜程度。強烈建議選擇 STRONG 級別。這將強制密碼具有數字、混合大小寫、特殊字元和字典的組合。
接下來,為 MySQL root 使用者設定首選密碼並確認。系統將詢問您是否希望繼續使用您提供的密碼,按“Y”並按Enter鍵繼續。
然後,按“Y”並按 ENTER,剩下的提示設定推薦的安全選項。這將刪除匿名使用者,禁止遠端根登入,刪除測試資料庫,並重新載入特權表以儲存所做的更改。
For MySQL 8.3
使用 MySQL 8.3 版本時, 保護策略稍有不同。root 帳戶通常會附帶一個臨時密碼。您可以從 MySQL 日誌檔案中檢索它,如下所示。
$ sudo grep 'A temporary password is generated' /var/log/mysqld.log | tail -1
現在,執行 mysql 安全安裝安全指令碼。
當提示輸入使用者 root 時,輸入您從前面複製的密碼。接下來,透過提供您的首選密碼並確認它來設定新密碼。指令碼將指示密碼的強度,在本例中為 100。如果您覺得該名稱需要設定不同的密碼,請鍵入“Y”。對於我們的例子,我們很滿意,因此我們將輸入“N”並按 ENTER。
您的 MySQL 資料庫伺服器現在配置為使用推薦的預設安全選項。要獲取關於資料庫伺服器的更多資訊,請使用 mysqladmin 客戶端工具,如下所示。
$ mysqladmin -u root -p version
4. 訪問 MySQL Server
使用如下命令登入
$ sudo mysql -u root -p
輸入 MySQL root 使用者的密碼並按 ENTER 鍵。您將立即進入 MySQL 提示符,如下所示。
接下來,您就可以開始執行 SQL 查詢了。例如,要顯示現有資料庫,請執行查詢
SHOW DATABASES;
執行完查詢後,透過執行“\q”查詢退出。
\q