溫馨提示×

MariaDB在Linux上的使用技巧

小樊
39
2025-08-15 13:57:27
欄目: 云計算

一、基礎操作技巧

  1. 安裝與啟動

    • 安裝
      • Debian/Ubuntu: sudo apt-get install mariadb-server
      • CentOS/RHEL: sudo yum install mariadb-server
    • 啟動服務
      sudo systemctl start mariadb
      sudo systemctl enable mariadb
  2. 登錄與基礎命令

    • 登錄數據庫mysql -u root -p
    • 常用SQL
      • 創建數據庫:CREATE DATABASE db_name;
      • 創建表:CREATE TABLE table_name (id INT, name VARCHAR(50));
      • 插入數據:INSERT INTO table_name VALUES (1, 'Alice');
  3. 用戶與權限管理

    • 創建用戶:CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';
    • 授權:GRANT SELECT, INSERT ON db_name.* TO 'user'@'localhost';
    • 撤銷權限:REVOKE SELECT ON db_name.* FROM 'user'@'localhost';

二、性能優化技巧

  1. 配置參數調優

    • 內存優化:調整 innodb_buffer_pool_size(建議設置為物理內存的50%-70%)。
    • 連接數設置:修改 max_connections 避免資源耗盡。
    • 日志優化:開啟慢查詢日志 slow_query_log=1,分析低效SQL。
  2. SQL優化

    • 避免 SELECT *,只查詢必要字段。
    • 為高頻查詢字段添加索引,使用 EXPLAIN 分析查詢計劃。
    • JOIN 替代子查詢,減少數據庫開銷。
  3. 系統層面優化

    • 文件系統:使用SSD存儲數據庫文件,提升I/O性能。
    • 內核參數:調整 vm.swappiness=1 減少交換分區使用。
    • 資源限制:通過 ulimit 增加文件描述符限制(如 nofile=65535)。

三、安全配置技巧

  1. 基礎安全加固

    • 運行 mysql_secure_installation 腳本,設置root密碼、刪除匿名用戶、禁止遠程root登錄。
    • 修改配置文件 /etc/mysql/mariadb.conf.d/50-server.cnf,將 bind-address 設為 0.0.0.0 以支持遠程訪問(需配合防火墻)。
  2. 訪問控制與加密

    • 通過防火墻(如 ufwfirewalld)限制3306端口僅允許可信IP訪問。
    • 啟用SSL加密通信,配置證書路徑。
  3. 審計與監控

    • 開啟審計日志記錄所有數據庫操作。
    • 定期查看慢查詢日志,優化低效SQL。

四、高級管理技巧

  1. 備份與恢復

    • 使用 mysqldump 備份數據庫:
      mysqldump -u root -p db_name > backup.sql
      恢復:mysql -u root -p db_name < backup.sql
    • 定期執行全量備份與增量備份,存儲至異地服務器。
  2. 高可用性配置

    • 主從復制:通過配置 my.cnf 實現主庫與從庫數據同步。
    • 集群部署:使用Galera Cluster實現多節點高可用。
  3. 自動化運維

    • 編寫Shell腳本定時執行備份、優化表等任務。
    • 使用Ansible/Puppet等工具批量管理多臺MariaDB服務器。

五、常見問題解決

  • 服務無法啟動:檢查日志 /var/log/mysql/error.log,常見原因包括端口沖突、配置文件錯誤。
  • 權限問題:確保數據庫文件和目錄權限正確(如 /var/lib/mysql 屬主為 mysql 用戶)。
  • 字符集亂碼:在配置文件中設置 character-set-server=utf8mb4,并重啟服務。

參考來源:[1,2,3,4,5,6,7,8,9,10]

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女