Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cách bật nhật ký truy vấn chậm trong MySQL

Bài viết này mô tả cách bật nhật ký truy vấn chậm MySQL. Bạn có thể sử dụng nhật ký truy vấn chậm để giúp xác định truy vấn cơ sở dữ liệu nào mất nhiều thời gian để chạy.

Bài viết này chỉ áp dụng cho các sản phẩm được liệt kê trong Chi tiết bài viết thanh bên. Bạn phải có quyền truy cập root vào máy chủ để làm theo các quy trình này. Nếu bạn có VPS được quản lý hoặc Máy chủ chuyên dụng được quản lý (và không có quyền truy cập root) và muốn bật nhật ký truy vấn chậm, vui lòng mở một vé trên Cổng thông tin khách hàng tại https://my.a2hosting.com.

Bật nhật ký truy vấn chậm

Các truy vấn chậm có thể ảnh hưởng đến hiệu suất cơ sở dữ liệu và hiệu suất tổng thể của máy chủ. Tính năng nhật ký truy vấn chậm trong MySQL cho phép bạn ghi nhật ký các truy vấn vượt quá giới hạn thời gian được xác định trước. Điều này giúp đơn giản hóa đáng kể nhiệm vụ tìm kiếm các truy vấn không hiệu quả hoặc tốn thời gian.

Để bật nhật ký truy vấn chậm trong MySQL, hãy làm theo các bước sau:

  1. Đăng nhập vào máy chủ của bạn bằng SSH.
  2. Tại dòng lệnh, nhập lệnh sau:
    mysql -u root -p
  3. Nhập mật khẩu gốc MySQL.
  4. Để bật nhật ký truy vấn chậm, hãy nhập lệnh sau tại dấu nhắc mysql>:

    SET GLOBAL slow_query_log = 'ON';
  5. Có các tùy chọn bổ sung mà bạn có thể đặt cho nhật ký truy vấn chậm:

    • Theo mặc định, khi bật nhật ký truy vấn chậm, nó sẽ ghi lại bất kỳ truy vấn nào mất hơn 10 giây để chạy. Để thay đổi khoảng thời gian này, hãy nhập lệnh sau, thay thế X với thời gian tính bằng giây:
      SET GLOBAL long_query_time = X;
    • Theo mặc định, tệp nhật ký truy vấn chậm được đặt tại /var/lib/mysql/hostname-slow.log . Để thay đổi đường dẫn nhật ký hoặc tên tệp, hãy nhập lệnh sau, thay thế đường dẫn với đường dẫn đến tệp và tên tệp với tên của tên tệp nhật ký:

      SET GLOBAL slow_query_log_file = '/path/filename';
  6. Để xác minh rằng nhật ký truy vấn chậm đang hoạt động chính xác, hãy đăng xuất khỏi mysql và sau đó đăng nhập lại. (Thao tác này tải lại các biến phiên cho mysql chương trình.) Nhập lệnh sau, thay thế X có giá trị lớn hơn long_query_time thiết lập:

    SELECT SLEEP(X);

    Tệp nhật ký truy vấn chậm phải chứa thông tin về truy vấn.

  7. Tiếp tục theo dõi tệp nhật ký truy vấn chậm để xem truy vấn nào mất nhiều thời gian để chạy.
  8. Khi bạn hoàn tất việc khắc phục sự cố, hãy tắt nhật ký truy vấn chậm. Để thực hiện việc này, hãy chạy mysql lập trình lại, rồi nhập lệnh sau:

    SET GLOBAL slow_query_log = 'OFF';
    Bạn chỉ nên bật nhật ký truy vấn chậm chừng nào cần thiết để khắc phục các vấn đề về hiệu suất.

Thông tin khác

Để biết thêm thông tin về nhật ký truy vấn chậm MySQL, vui lòng truy cập https://dev.mysql.com/doc/refman/5.5/en/slow-query-log.html.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách theo dõi các chỉ số HAProxy với ClusterControl

  2. Làm cách nào để loại bỏ khoảng trắng đầu và cuối trong trường MySQL?

  3. Sao lưu cơ sở dữ liệu MySQL của bạn

  4. MySQL - Toán hạng phải chứa 1 (các) cột

  5. Làm thế nào để có được kích thước cơ sở dữ liệu MySQL cho cơ sở dữ liệu của bạn?