Portfolio
My Blog
Scroll down to discover
Search
Categories

Cài đặt Releem MySQL Optimization trên Docker LCMP Multisite

September 3, 2025Category : Code/Web

Releem là công cụ tự động tối ưu hóa cấu hình MySQL/MariaDB, nó thu thập số liệu từ database, phân tích và đưa ra cấu hình tối ưu theo khối lượng công việc thực tế của trang. Về mặt lý thuyết, nó sẽ tối ưu hơn nhiều so với cách bạn dùng 1 số cấu hình MySQL/MariaDB mẫu có trên mạng theo RAM, CPU …. đặc biệt hiệu quả với các trang có lượng truy cập đột biến

Tham khảo bài viết giới thiệu Releem tại đây, so với cài đặt tự động trên VPS, cài đặt qua docker rất dễ nhầm, ở bài này, mình sẽ demo trên domain bibica.net theo hướng dẫn cụ thể của tác giả tại đây

Để bạn dễ hình dung, docker releem-agent cài đặt bên dưới, chỉ dùng để đọc các log database, sau đó đưa ra đề xuất, còn để áp dụng đề xuất, sẽ phải sửa thủ công và khởi động lại container

Installation

Thời điểm bạn đọc bài viết này, releem-agent đã hỗ trợ amd64 và arm64

  • Mở file /home/bibica.net/config/bibica.net.env

Sẽ thấy mật khẩu root của MySQL, ví dụ XJqL7Wy2gMx0c0tw

  • Kết nối vào MariaDB container (thay XJqL7Wy2gMx0c0tw bằng mật khẩu root của bạn, thay database.bibica.net bằng container_name của bạn)

docker exec -it database.bibica.net mysql -u root -pXJqL7Wy2gMx0c0tw

Chạy các lệnh như bên dưới

DROP USER IF EXISTS 'releem'@'%';
CREATE USER 'releem'@'%' identified by '[Password]';
GRANT PROCESS, REPLICATION CLIENT, SHOW VIEW ON *.* TO 'releem'@'%';
GRANT SELECT ON performance_schema.events_statements_summary_by_digest TO 'releem'@'%';
GRANT SELECT ON performance_schema.table_io_waits_summary_by_index_usage TO 'releem'@'%';
GRANT SELECT ON performance_schema.file_summary_by_instance TO 'releem'@'%';
GRANT SUPER ON *.* TO 'releem'@'%';
FLUSH PRIVILEGES;
exit

[Password] là mật khẩu dùng cho user releem (thay bằng mật khẩu khác cho an toàn)

  • Mở file cấu hình /home/bibica.net/compose.yml
services:
  database.bibica.net:
    image: mariadb:10.11.13
    container_name: database.bibica.net
    restart: always
    env_file: ./config/bibica.net.env
    networks:
      - reverse_proxy
    volumes:
      - ./database:/var/lib/mysql
      - ./config/mariadb/mariadb-bibica.net.cnf:/etc/mysql/mariadb.conf.d/mariadb-bibica.net.cnf  

  releem-agent:
    image: releem/releem-agent
    container_name: releem-agent-database-bibica-net
    restart: always
    env_file: ./config/bibica.net.env
    depends_on:
      - database.bibica.net
    networks:
      - reverse_proxy
    volumes:
      - ./config/mariadb/tmp/.mysqlconfigurer/:/tmp/.mysqlconfigurer/
      - ./config/mariadb/releem.conf.d/:/etc/mysql/releem.conf.d/

Thêm vào bên dưới MariaDB container cấu hình releem-agent

  • Mở file /home/bibica.net/config/bibica.net.env
######################### Releem #########################################
# Tên hostname hiển thị trong Releem Dashboard
RELEEM_HOSTNAME=bibica.net

# Tên container MariaDB để kết nối
DB_HOST=database.bibica.net

# Port MariaDB (mặc định 3306)
DB_PORT=3306

# Username đã tạo trong MariaDB cho Releem
DB_USER=releem

# Password của user releem
DB_PASSWORD=[Password]

# API key từ Releem Dashboard
RELEEM_API_KEY=c734e1de-3b21-4c29-96c4-26f1cdaf902f
######################### Releem #########################################

Điều chỉnh lại thông số cho phù hợp với tài khoản của bạn

  • Mở file /home/bibica.net/config/mariadb/mariadb-bibica.net.cnf

Thêm vào cuối trang nội dung

# Include Releem additional configuration files
performance_schema = 1
slow_query_log = 1

Cài đặt Releem MySQL Optimization trên Docker LCMP Multisite

Chọn MySQL on Linux Server: Manual Installation in Docker, sau đó ấn Continue

Cài đặt Releem MySQL Optimization trên Docker LCMP Multisite

Ấn tiếp vào Done

Cài đặt Releem MySQL Optimization trên Docker LCMP Multisite

Nó sẽ hiện ra màn hình Waiting for server response

  • Quay lại server, cập nhập docker
cd /home/bibica.net
docker compose down
docker compose pull
docker compose up -d
  • Lúc này việc cài đặt cơ bản đã xong, trên Releem Dashboard sẽ hiện ra kết nối như thông thường

Cài đặt Releem MySQL Optimization trên Docker LCMP Multisite

Apply Configuration

Sau 24h sẽ được đề xuất thay đổi các giá trị, tương tự như chạy tự động, dù theo tác giả, là có thể tự thay đổi trực tiếp cấu hình, mà khi mình thử thì không thấy tác dụng? chưa kể các cấu hình MariaDB, khi thay đổi, phải restart lại container mới có tác dụng, container releem-agent cấu hình ở bài này. chỉ dùng để thu thập dữ liệu log, nên kiểu gì cũng phải làm thủ công

Cài đặt Releem MySQL Optimization trên Docker LCMP Multisite

Ấn vào Configuration, sẽ thấy các cấu hình Releem đề xuất, mặc định Docker LCMP Multisite cũng đang dùng cấu hình Releem đề xuất sẵn, thường chỉ phải điều chỉnh 1-2 giá trị, mở file /home/bibica.net/config/mariadb/mariadb-bibica.net.cnf, sửa lại các giá trị này

Sửa xong thì khởi động lại container MariaDB và releem-agent

docker restart database.bibica.net
docker restart releem-agent-database-bibica-net

Trên 1 trang đồ sộ, có nhiều tương tác, cài nhiều plugin lung tung, dùng cấu hình database mặc định, sẽ thấy các giá trị Releem đề xuất nó hiệu quả tới cỡ nào, tất nhiên, Releem chỉ đề xuất các giá trị, mà nó nghĩ là sẽ tối ưu cho database, còn nếu bạn đang dùng các plugin, themes … mà tác giả viết không tốt, gây lỗi, đơ lag thì Releem không có nhiều tác dụng

Ở phiên bản PRO, Releem thậm chí đề xuất SQL Query Optimization, giúp bạn sửa lại các SQL Query bị chậm, có điều những người sẽ đọc bài viết này, thì không cần nâng cấp lên PRO, ngoài chuyện giá rất cao, các giá trị họ đề xuất, bạn cũng sẽ không biết sửa làm sao, vấn đề này nên để tác giả viết plugin, theme xử lý

 

01.
© Oliver / All rights reserved.
To top