Cách tìm nguyên nhân gây ra quá tải mysql, cách tìm database quá tải, truy vấn với công cụ Mytop

Khi server quá tải liên quan đến mysqld, có thể nguyên nhân quá tải database, việc cần làm là phải tìm ra database nào đang bị quá tải và truy vấn nào. Để làm việc này bạn cần dùng Mytop công cụ hiển thị các truy vấn.

Sử dụng Mytop để monitor MySQL Performance

MySQL là ứng dụng vô cùng phổ biến ngày nay trên Linux. Có rất nhiều bài viết hướng dẫn về tối ưu MySQL và một điều rất cần thiết là sau khi tối ưu phải theo dõi performance để xem hiệu quả của nó. Ta cần một tool để thực hiện điều này và Mytop là ứng dụng ta đang tìm kiếm.

Bản chất của Mytop cũng chỉ là sử dụng các lệnh sau đó tổng hợp các thông tin này và trả kết quả về cho người dùng. Sử dụng Mytop ta có thể monitor theo thời gian thực các thread, query cũng như hoạt động của các user trên mỗi Database.

Để cài đặt và sử dụng Mytop, ta làm như sau:

Trên CentOS/RHEL:

 

sudo yum install mytop

Trên Ubuntu/Debian:
sudo apt-get install mytop

Mở tệp .mytop bằng vi với lệnh vi ~/.mytop hoặc vi /root/.mytop

host=localhost
db=mysql
delay=5
port=3306
socket=
batchmode=0
color=1
idle=1

Nếu dùng vi:
Nhấn i để chuyển sang chế độ chỉnh sửa (insert mode).
Thêm hoặc sửa đổi các thông tin xác thực MySQL như bạn cần.
Sau khi chỉnh sửa xong, nhấn Esc để thoát chế độ chỉnh sửa.
Để lưu và thoát, nhập :wq và nhấn Enter

Nếu dùng nano
Sử dụng các phím mũi tên để di chuyển đến vị trí chỉnh sửa.
Thêm hoặc sửa đổi các thông tin xác thực MySQL như bạn cần.
Sau khi chỉnh sửa xong, nhấn Ctrl + O để lưu thay đổi.
Nhấn Enter để xác nhận tên tệp.
Nhấn Ctrl + X để thoát khỏi nano.

Sau đó sử dụng Mytop để monitor như sau:
mytop -u root –prompt