📖 MySQL 與 MariaDB 管理

分類:伺服器管理 | 作者:pake | 發布時間:2024-09-06 06:23

MySQL 與 MariaDB 管理

MySQL 和 MariaDB 是最常見的關聯式資料庫管理系統(RDBMS),廣泛應用於各種 Web 應用程式。本篇將介紹如何在 Fedora 上安裝、設定與管理 MySQL/MariaDB,並提供日常維護與最佳化建議。


目錄


安裝與啟動 MySQL / MariaDB

安裝 MySQL

sudo dnf install mysql-server -y

安裝 MariaDB(Fedora 預設支援 MariaDB)

sudo dnf install mariadb-server -y

啟動並設定開機自動啟動

sudo systemctl enable --now mysqld

檢查 MySQL / MariaDB 服務狀態

sudo systemctl status mysqld

基本設定

執行 MySQL/MariaDB 安全性設定

sudo mysql_secure_installation

此設定包含:

登入 MySQL / MariaDB

mysql -u root -p

建立與管理資料庫

建立資料庫

CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

顯示所有資料庫

SHOW DATABASES;

刪除資料庫

DROP DATABASE mydb;

使用者管理與權限設定

建立使用者

CREATE USER 'user1'@'localhost' IDENTIFIED BY 'password123';

賦予使用者權限

GRANT ALL PRIVILEGES ON mydb.* TO 'user1'@'localhost';

刷新權限

FLUSH PRIVILEGES;

檢視使用者權限

SHOW GRANTS FOR 'user1'@'localhost';

刪除使用者

DROP USER 'user1'@'localhost';

資料庫備份與還原

備份資料庫

mysqldump -u root -p mydb > mydb_backup.sql

還原資料庫

mysql -u root -p mydb < mydb_backup.sql

備份所有資料庫

mysqldump -u root -p --all-databases > all_databases_backup.sql

效能最佳化

檢查目前設定

SHOW VARIABLES;
SHOW STATUS;

啟用查詢快取

編輯 /etc/my.cnf.d/server.cnf/etc/my.cnf,新增:

[mysqld]
query_cache_size = 16M
query_cache_type = 1

使用 mysqltuner 進行效能分析

安裝 mysqltuner

sudo dnf install mysqltuner -y

執行分析:

sudo mysqltuner

安全性強化

禁止 root 遠端登入

編輯 /etc/my.cnf.d/server.cnf/etc/my.cnf,加入:

[mysqld]
bind-address = 127.0.0.1

設定最大連線數

[mysqld]
max_connections = 200

啟用 SSL 連線

SHOW VARIABLES LIKE '%ssl%';

日誌與錯誤排除

查看錯誤日誌

sudo journalctl -u mysqld --no-pager | tail -n 50

查看慢查詢日誌

SET GLOBAL slow_query_log = 'ON';
SET GLOBAL long_query_time = 2;

查看慢查詢日誌:

cat /var/log/mariadb/slow-query.log

結語

本篇提供了 MySQL 和 MariaDB 在 Fedora 上的完整管理指南,包括安裝、設定、使用者管理、備份還原、效能最佳化與安全強化,確保您的資料庫能夠穩定、安全地運行。

⬅ 上一篇 下一篇 ➡
🔙 返回 伺服器管理 📚 返回教學列表 🏠 返回首頁