Giới thiệu
Mytop là một công cụ dựa trên bảng điều khiển miễn phí để theo dõi hiệu suất của MySQL. Nó tương tự như tiện ích "hàng đầu", nhưng nó hiển thị các truy vấn MySQL. Với mytop, bạn có thể theo dõi tức thời thời gian hoạt động của MySQL, các luồng, truy vấn, hành vi của người dùng và thông tin trạng thái thời gian thực khác, có thể hữu ích cho việc tối ưu hóa hiệu suất của MySQL.
Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách cài đặt, định cấu hình và sử dụng mytop trên máy chủ Vultr mới được tạo dựa trên Ứng dụng LEMP One-Click.
Điều kiện tiên quyết
Trước khi tiếp tục, bạn cần phải:
Bước một: Cài đặt mytop bằng kho EPEL yum
Với sự trợ giúp của kho lưu trữ yum EPEL (Gói bổ sung dành cho doanh nghiệp Linux), bạn có thể dễ dàng cài đặt mytop trên máy chủ của mình. Theo mặc định, kho lưu trữ EPEL yum đã được cài đặt khi sử dụng Ứng dụng LEMP One-Click.
Bạn có thể xác nhận sự tồn tại của kho EPEL với:
sudo yum repolist
Bạn sẽ thấy epel Extra Packages for Enterprise Linux 6 - x86_64
kho lưu trữ được liệt kê.
Để bảo vệ các gói trong kho EPEL khỏi bị cập nhật hoặc ghi đè bởi các gói trong kho khác, bạn cần cài đặt plugin "Protectbase":
sudo yum install yum-plugin-protectbase.noarch -y
Sau đó chỉnh sửa tập tin /etc/yum.repos.d/epel.repo
, nhập liệu:
cd /etc/yum.repos.d
sudo vi epel.repo
Nối một dòng protect=1
vào phần [epel]
:
[epel]
name=Extra Packages for Enterprise Linux 6 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
protect=1
Lưu và đóng tập tin.
Cuối cùng, cài đặt mytop với:
sudo yum install mytop -y
Để đơn giản hóa việc sử dụng mytop, bạn có thể tạo một tệp cấu hình tùy chỉnh có tên /root/.mytop
. Khi bạn chạy mytop dưới dạng root hoặc người dùng không root với quyền sudo, chương trình sẽ tự động gọi tệp cấu hình này. Nếu bạn muốn chạy nó với tư cách là người dùng không root mà không có quyền sudo, bạn cần đặt tệp cấu hình trong thư mục chính của người dùng không root.
Để bạn tham khảo, đây là một mẫu của tệp cấu hình /root/.mytop
:
user=root
pass=
host=localhost
db=mysql
delay=5
port=3306
socket=
batchmode=0
header=1
color=1
idle=1
Nội dung trong tệp này cung cấp các đối số mặc định cho chương trình mytop, giảm đầu vào thủ công của bạn khi sử dụng nó. Tuy nhiên, nếu bạn chạy chương trình với các đối số được nhập thủ công, các đối số dòng lệnh sẽ ghi đè các đối số tương ứng trong tệp cấu hình.
Bạn có thể sửa đổi các đối số này theo các điều kiện cụ thể của bạn. Một số ý nghĩa của các đối số được liệt kê dưới đây:
- người dùng: Tên người dùng cơ sở dữ liệu.
- pass: Mật khẩu cho người dùng cơ sở dữ liệu. Vì mục đích bảo mật, bạn có thể để trống và nhập mật khẩu theo cách thủ công.
- máy chủ: Địa chỉ máy chủ cơ sở dữ liệu.
- db: Tên cơ sở dữ liệu.
- độ trễ: Hiển thị khoảng thời gian làm mới tính bằng giây.
Có thể tìm thấy giải thích đầy đủ cho từng đối số trong trang hướng dẫn:
man mytop
Như đã đề cập trước đó, tiện ích mytop sử dụng cả hai đối số trong tệp cấu hình và đối số dòng lệnh và cái sau sẽ ghi đè lên đối số trước.
Do đó, với một tệp cấu hình theo thứ tự, bạn chỉ cần nhập lệnh với một vài đối số.
Ví dụ: nếu bạn muốn nhập mật khẩu của mình với lời nhắc để bảo mật tốt hơn, bạn có thể nhập:
sudo mytop --prompt
Sau đó nhập mật khẩu cho cơ sở dữ liệu mặc định và root người dùng, có thể được tìm thấy trong /root/.my.cnf
, để vào giao diện chương trình mytop.
Đây là một ví dụ khác. Nếu bạn muốn theo dõi một cơ sở dữ liệu cụ thể, bạn có thể sử dụng:
sudo mytop -d yourdatabasename --prompt
Thay thế yourdatabasename
bằng của riêng bạn.
Trong giao diện chương trình mytop, bạn sẽ tìm thấy một cái gì đó như:
MySQL on localhost (5.6.26-log) up 0+08:36:33 [12:07:15]
Queries: 921.0 qps: 0 Slow: 0.0 Se/In/Up/De(%): 00/00/00/00
qps now: 0 Slow qps: 0.0 Threads: 1 ( 1/ 0) 00/00/00/00
Key Efficiency: 100.0% Bps in/out: 0.8/140.7 Now in/out: 9.7/ 1.9k
Id User Host/IP DB Time Cmd Query or State
-- ---- ------- -- ---- --- ----------
14 root localhost mysql 0 Query show full processlist
Đây là chế độ xem chủ đề mặc định của mytop, bạn luôn có thể chuyển sang chế độ xem này bằng cách nhấn t .
Bốn dòng trên cùng tạo thành tiêu đề có thể được bật hoặc tắt bằng cách nhấn Shift + h . Tiêu đề chứa thông tin chung về máy chủ MySQL của bạn.
Bên dưới tiêu đề, bạn có thể thấy dữ liệu trạng thái của các luồng MySQL hiện tại.
Để được giúp đỡ, nhấn ? ( Shift + / ) khi chương trình đang chạy.
Để thoát khỏi chương trình, nhấn q .
Thông tin chi tiết về màn hình và cách sử dụng mytop có thể được tìm thấy trong trang man của nó:
man mytop
Đó là nó. Bạn có thể sử dụng dữ liệu được thu thập từ mytop để thực hiện tối ưu hóa thông báo cho MySQL.