SUSE Linux MySQL 與 MariaDB 管理指南
MySQL 與 MariaDB 是常見的關聯式資料庫管理系統(RDBMS),廣泛應用於各種 Web 與企業應用中。本指南適用於 openSUSE 與 SUSE Linux Enterprise (SLE),涵蓋安裝、設定、管理與最佳化。
目錄
安裝與啟動 MySQL / MariaDB
安裝 MariaDB
openSUSE & SLE 預設打包 MariaDB:
sudo zypper refresh
sudo zypper install -y mariadb mariadb-tools
提示:若需 MySQL Enterprise,可手動加入 Oracle 的 RPM 源並安裝
mysql-community-server
。
啟動並設定開機自動啟動
sudo systemctl enable --now mariadb
檢查服務狀態
sudo systemctl status mariadb
基本安全設定
使用預設提供的安全安裝腳本:
sudo mysql_secure_installation
此腳本將引導您:
- 設定
root
帳戶密碼 - 移除匿名使用者
- 禁止遠端
root
登入 - 刪除測試資料庫
- 重新載入權限表
建立與管理資料庫
登入 MariaDB Shell:
sudo 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 'StrongP@ssw0rd';
賦予權限
GRANT ALL PRIVILEGES ON mydb.* TO 'user1'@'localhost';
FLUSH PRIVILEGES;
檢視使用者權限
SHOW GRANTS FOR 'user1'@'localhost';
刪除使用者
DROP USER 'user1'@'localhost';
資料庫備份與還原
備份單一資料庫
mysqldump -u root -p mydb > /backup/mydb_$(date +%F).sql
還原到資料庫
mysql -u root -p mydb < /backup/mydb_$(date +%F).sql
備份所有資料庫
mysqldump -u root -p --all-databases > /backup/all_databases_$(date +%F).sql
效能最佳化
查看設定與狀態
SHOW VARIABLES;
SHOW GLOBAL STATUS;
安裝 mysqltuner
sudo zypper install -y mysqltuner
執行分析:
sudo mysqltuner
啟用查詢快取(若適用)
在 /etc/my.cnf.d/server.cnf
添加:
[mysqld]
query_cache_size = 16M
query_cache_type = 1
重啟服務:
sudo systemctl restart mariadb
安全性強化
限制監聽位址
在 /etc/my.cnf.d/server.cnf
添加:
[mysqld]
bind-address = 127.0.0.1
設定最大連線數
[mysqld]
max_connections = 200
啟用 SSL/TLS
檢查支援狀態:
SHOW VARIABLES LIKE 'have_ssl';
若需要,自行部署憑證並在配置中設定:
[mysqld]
ssl-ca=/etc/mysql/ca.pem
ssl-cert=/etc/mysql/server-cert.pem
ssl-key=/etc/mysql/server-key.pem
日誌與錯誤排除
檢查錯誤日誌
sudo journalctl -u mariadb -e
或查看檔案:
sudo tail -n 50 /var/log/mysql/mariadb.log
啟用慢查詢日誌
在 /etc/my.cnf.d/server.cnf
添加:
[mysqld]
slow_query_log = ON
long_query_time = 2
slow_query_log_file = /var/log/mysql/slow.log
重啟:
sudo systemctl restart mariadb
檢視慢查詢:
sudo tail -f /var/log/mysql/slow.log
結語
本文介紹 SUSE Linux 上 MySQL/MariaDB 的完整管理流程,涵蓋安裝、設定、安全、最佳化與備份還原,助您維持資料庫的穩定與安全。