Self-hosted Tools

InitTop – Giám sát MySQL/MariaDB thời gian thực ngay trên Terminal

InitTop là công cụ giám sát cơ sở dữ liệu MySQL/MariaDB chạy trực tiếp trên Terminal, giúp bạn nhìn thấy chính xác câu lệnh SQL nào đang làm nghẽn hệ thống — thứ mà htop chỉ cho biết CPU 100% nhưng không bao giờ nói rõ nguyên nhân.

InitTop – Giám sát MySQL/MariaDB thời gian thực ngay trên Terminal

Thiết kế bằng Python thuần, dựa trên thư viện curses có sẵn, không cần cài đặt thêm bất kỳ dependency phức tạp nào. Chỉ cần một dòng lệnh, bạn có ngay giao diện giám sát real-time với đầy đủ thông tin processlist, buffer pool, QPS và cảnh báo truy vấn chậm — ngay cả trên VPS nhỏ nhất.

Lưu ý: InitTop được tối ưu tốt nhất cho môi trường InitOps-deployed — tự động nhận diện Unix socket, không cần cấu hình thủ công. Chạy trên mọi terminal hỗ trợ 8 màu cơ bản, từ PuTTY đến Bitvise.

Cài đặt InitTop

Đăng nhập vào VPS Ubuntu bằng tài khoản root:

ssh root@your-server-ip

Sau đó chạy lệnh cài đặt duy nhất:

curl -sSL https://inithtml.com/inittop/install.sh | bash

Script tự động cài đặt python3-mysql.connector, tải engine và auto-launch ngay lập tức nếu phát hiện môi trường InitOps.

Thông tin phiên bản

  • Phiên bản: 1.0.0
  • Cập nhật: 2026-06-18

Quy trình sử dụng

  1. Chạy lệnh cài đặt: Script tự động detect MariaDB qua Unix socket hoặc TCP fallback.
  2. Nhập password: Nếu không có MYSQL_PWD env var, tool tự động prompt ẩn (hidden input, không lộ trong history).
  3. Quan sát real-time: Processlist cập nhật mỗi 2 giây, sắp xếp theo thời gian thực thi.

InitTop hiển thị những gì?

Giao diện InitTop

  • Processlist thời gian thực — Danh sách query đang chạy, sắp xếp theo TIME giảm dần. PID, USER, DB, COMMAND, TIME, STATE và SQL đầy đủ.
  • Buffer Pool Metrics — Hit rate (tỷ lệ cache hit) và Used percentage (mức độ lấp đầy buffer pool) hiển thị bằng thanh tiến trình trực quan.
  • Connections Overview — Connected, Running, Slow queries và Locked processes — tổng quan một cái nhìn.
  • QPS (Queries Per Second) — Tính toán real-time dựa trên delta Queries từ SHOW GLOBAL STATUS.
  • Index Hint Banner — Tự động phát hiện bảng lớn (>500 rows) không có index và gợi ý lệnh ALTER TABLE ... ADD INDEX.

Phân loại màu trực quan

InitTop sử dụng palette 8 màu an toàn, hiển thị rõ ràng trên mọi terminal:

  • RED bold — Truy vấn chậm (≥ --slow-threshold) hoặc đang bị khóa bảng (Table/Row Locks).
  • YELLOW bold — Truy vấn trung bình (≥ 1 giây).
  • GREEN bold — Truy vấn nhanh, đang active.
  • DIM white — Sleeping connection (không tiêu tốn tài nguyên).
  • White on blue — Header bar và thanh trạng thái, phong cách htop classic.
  • White on black — Dòng đang được chọn (selected row).

Điều khiển từ bàn phím

  • ↑ / ↓ — Di chuyển giữa các process.
  • K (capital) — Kill query đang chọn (KILL QUERY <pid>).
  • e — EXPLAIN query đang chọn (chỉ hỗ trợ SELECT).
  • / — Lọc processlist theo user, database hoặc nội dung query.
  • ESC — Xóa bộ lọc hoặc đóng overlay.
  • s — Chuyển đổi cột sắp xếp: TIME → USER → DB → CMD.
  • p — Tạm dừng / tiếp tục auto-refresh.
  • r — Refresh ngay lập tức.
  • ? — Mở màn hình trợ giúp.
  • q — Thoát InitTop.

Kết nối linh hoạt

InitTop hỗ trợ cả hai phương thức kết nối, tự động ưu tiên Unix socket khi phát hiện:

# Unix socket — khuyến nghị cho InitOps (nhanh hơn, bảo mật hơn)
inittop -u root -S /run/mysqld/mysqld.sock

# TCP fallback — cho môi trường remote hoặc custom setup
inittop -u root -H 127.0.0.1 -P 3306

# Automation/scripting — dùng env var, không prompt
MYSQL_PWD=secret inittop -u root -S /run/mysqld/mysqld.sock

Tại sao không dùng mytop hay innotop?

  • mytop — Viết bằng Perl từ thập niên 2000, giao diện lỗi thời, khó cài trên OS mới.
  • innotop — Cũng Perl-based, phụ thuộc nhiều module CPAN, config phức tạp.
  • Percona Toolkit — Quá nặng cho nhu cầu giám sát hàng ngày, đòi hỏi kiến thức chuyên sâu.
  • InitTop — Python 3 duy nhất, zero dependency ngoài mysql-connector-python, single-file executable, chạy ngay sau curl | bash.

Tương thích hệ thống

  • Ubuntu Server 20.04+ / 22.04+ / 24.04 LTS.
  • MySQL 5.7+ / 8.0+ hoặc MariaDB 10.3+ / 10.6+ / 10.11+.
  • Terminal hỗ trợ 8 màu ANSI cơ bản (PuTTY, Bitvise, iTerm, GNOME Terminal, v.v.).
  • Đòi hỏi quyền đọc information_schema.PROCESSLISTSHOW GLOBAL STATUS.

Kết luận

InitTop đơn giản hóa việc giám sát cơ sở dữ liệu — từ việc phải đoán đoán “tại sao CPU 100%” đến việc nhìn thấy chính xác query nào đang chạy chậm, cần kill hay cần index. Một công cụ production-ready, không đòi hỏi kiến thức DBA chuyên sâu, và đặc biệt tối ưu cho môi trường đã được triển khai bằng InitOps.

Lệnh cài đặt nhanh

curl -sSL https://inithtml.com/inittop/install.sh | bash
5.0/5 (1)

Bình luận


  • Không có bình luận.

Công cụ trực tuyến

Nhấn Ctrl + \ trên máy tính, hoặc vuốt sang trái ở bất kỳ đâu trên mobile.

Đăng nhập





Đang tải...