MariaDB 資料庫管理及使用
MariaDB 是一個開源的關聯式資料庫管理系統,源自 MySQL,具有高效能、可擴展性和可靠性。ServBay 自帶 MariaDB,本文將詳細介紹如何在 ServBay 中管理和使用 MariaDB 資料庫,包括安裝、配置、備份、恢復和效能優化等方面。
安裝和配置 MariaDB
打開 ServBay,點擊左側導覽服務
-MariaDB
,選擇所需要安裝的 MariaDB 版本。目前 ServBay 支援 MariaDB 10.4 - MariaDB 11.7
啟動和管理 MariaDB 服務
您可以透過 ServBay 的管理平台或命令列工具servbayctl
來管理 MariaDB 服務。
使用 ServBay 管理平台
- 打開 ServBay 管理平台。
- 導航到
服務
-MariaDB
。 - 找到 MariaDB 服務並進行啟動、停止或重啟操作。
使用命令列工具 servbayctl
# 啟動 MariaDB 服務
servbayctl start mariadb 11.3
# 停止 MariaDB 服務
servbayctl stop mariadb 11.3
# 重啟 MariaDB 服務
servbayctl restart mariadb 11.3
2
3
4
5
6
7
8
配置 MariaDB
ServBay 帶有強大的圖形介面用於配置 MariaDB 服務,請參考修改 MariaDB 配置以學習如何修改和優化 MariaDB 的配置。
連接 MariaDB
您可以使用命令列工具 mysql
或圖形化工具如 phpMyAdmin 和 Adminer 連接到 MariaDB。
使用命令列連接
使用 TCP/IP 連接:
bashmysql -u your_username -p -h localhost -P 3306
1使用 Socket 連接:
bashmysql -u your_username -p -S /Applications/ServBay/tmp/mysql.sock
1
使用 phpMyAdmin 和 Adminer 連接
ServBay 預設已經帶了 phpMyAdmin 和 Adminer,您可以通過以下方式訪問:
- 訪問地址:https://servbay.host
在該頁面,您將找到 phpMyAdmin 和 Adminer 的入口,使用從 ServBay 管理面板獲取的用戶名和密碼進行登錄。
資料庫管理
建立資料庫和用戶
建立資料庫:
sqlCREATE DATABASE mydatabase;
1建立用戶並授權:
sqlCREATE USER 'your_username'@'localhost' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON mydatabase.* TO 'your_username'@'localhost'; FLUSH PRIVILEGES;
1
2
3
備份和恢復
備份資料庫
建議將備份檔案存放在以下目錄:
/Applications/ServBay/backup/mariadb
使用 mysqldump
工具備份資料庫:
mysqldump -u your_username -p mydatabase > /Applications/ServBay/backup/mariadb/mydatabase.sql
恢復資料庫
使用 mysql
工具恢復資料庫:
mysql -u your_username -p mydatabase < /Applications/ServBay/backup/mariadb/mydatabase.sql
效能優化
MariaDB 提供了多種效能優化選項,以下是一些常見的優化方法。
索引優化
確保對常用查詢的列建立索引。例如:
CREATE INDEX idx_column_name ON your_table_name(column_name);
查詢優化
使用 EXPLAIN
命令分析查詢效能,並進行相應優化。例如:
EXPLAIN SELECT * FROM your_table_name WHERE column_name = 'value';
配置優化
調整配置檔案中的參數以提升效能。例如,調整緩衝池大小:
[mysqld]
innodb_buffer_pool_size = 1G
2
安全管理
確保資料庫的安全性是非常重要的,以下是一些安全管理的建議。
設定強密碼
為所有資料庫用戶設定強密碼:
SET PASSWORD FOR 'your_username'@'localhost' = PASSWORD('your_new_password');
定期備份
定期備份資料庫以防止資料丟失。
限制訪問
限制資料庫用戶的訪問權限,只授予必要的權限:
REVOKE ALL PRIVILEGES ON *.* FROM 'your_username'@'localhost';
GRANT SELECT, INSERT, UPDATE ON mydatabase.* TO 'your_username'@'localhost';
2
常見問題及解決方案
密碼錯誤
請參考文章:如何重置 MariaDB 資料庫 root 密碼
無法連接到 MariaDB
檢查 MariaDB 是否運行:
bashservbayctl status mariadb 11.3
1檢查防火牆設置: 確保防火牆允許 MariaDB 的端口(默認 3306)通過。
權限問題
檢查用戶權限:
sqlSHOW GRANTS FOR 'your_username'@'localhost';
1授予必要權限:
sqlGRANT ALL PRIVILEGES ON mydatabase.* TO 'your_username'@'localhost'; FLUSH PRIVILEGES;
1
2
總結
MariaDB 是一個強大且靈活的資料庫管理系統,ServBay 自帶 MariaDB,使得資料庫管理和使用變得更加方便。透過本文的介紹,您可以輕鬆地進行 MariaDB 的安裝、配置、連接、管理、備份、恢復和效能優化操作,確保資料庫的高效運行和安全性。