Làm cách nào để bật nhật ký mysql?

Nhật ký truy vấn chung là một bản ghi chung về những gì Máy chủ MySQL đang làm. Nó ghi thông tin vào nhật ký này khi máy khách kết nối hoặc ngắt kết nối, bao gồm cả những lần thử đăng nhập không thành công thường cho thấy các nỗ lực vũ phu

RdpGuard sử dụng nhật ký truy vấn chung để phát hiện các lần đăng nhập không thành công vào Máy chủ MySQL

Nhật ký truy vấn chung bị tắt theo mặc định và bạn cần bật nó để phát hiện và chặn các cuộc tấn công vũ phu trên máy chủ MySQL của bạn. Dưới đây bạn sẽ tìm thấy hướng dẫn chi tiết về cách bật ghi nhật ký chung


Dưới đây chúng tôi sẽ mô tả cách bật ghi nhật ký chung thông qua MySQL Workbench. Nếu bạn chưa cài đặt MySQL Workbench, bạn có thể tải xuống từ đây - https. //mysql. com/products/bàn làm việc/

1. Khởi động MySQL Workbench và mở phiên bản của bạn

Làm cách nào để bật nhật ký mysql?

Khởi động MySQL Workbench và mở phiên bản của bạn

2. Mở danh mục Tệp tùy chọn

Làm cách nào để bật nhật ký mysql?

Mở danh mục Tệp tùy chọn

3. Mở tab Ghi nhật ký

Làm cách nào để bật nhật ký mysql?

4. Kiểm tra các hộp kiểm sau

  • nhật ký chung
  • chung_log_file
  • đầu ra nhật ký (vui lòng đảm bảo rằng nó được đặt thành TẬP TIN)

5. Nhấp vào Áp dụng để lưu thay đổi

Làm cách nào để bật nhật ký mysql?

Nhấp vào Áp dụng để lưu thay đổi

6. Đóng MySQL Workbench và khởi động lại Dịch vụ RdpGuard


1. Bắt đầu trình soạn thảo văn bản yêu thích của bạn (hoặc Notepad) và mở. ini (hoặc của tôi. tập tin cnf)

Làm cách nào để bật nhật ký mysql?

Mở tệp cấu hình MySQL trong trình soạn thảo văn bản

Đường dẫn phổ biến nhất là %PROGRAMDATA%\MySQL\MySQL Server x. x\của tôi. ini (trong đó x. x là phiên bản Máy chủ MySQL). Bạn có thể tìm thêm chi tiết về vị trí tệp cấu hình MySQL tại đây. https. // nhà phát triển. mysql. com/doc/refman/5. 1/vi/tệp tùy chọn. html

Hướng dẫn này chỉ cho bạn cách định cấu hình và xem các nhật ký MySQL khác nhau. MySQL là một cơ sở dữ liệu quan hệ nguồn mở dựa trên SQL (Ngôn ngữ truy vấn có cấu trúc). MySQL cung cấp các bản ghi tích hợp khác nhau. Nói chung, cơ sở dữ liệu là nền tảng của hầu hết mọi chương trình phụ trợ và do đó, quản trị viên muốn đăng nhập dịch vụ này

MySQL có nhiều nhật ký với mục đích khác nhau. Chúng tôi sẽ tập trung vào bốn nhật ký sau

  • Nhật ký lỗi. Ghi lại các sự cố gặp phải khi bắt đầu, chạy hoặc dừng
    cat /var/log/mysql/error.log
    
    3. Nhật ký này được lưu trữ theo mặc định trong thư mục
    cat /var/log/mysql/error.log
    
    4. Nó có thể hữu ích nếu bạn muốn tự phân tích máy chủ
  • Nhật ký truy vấn chung. Ghi lại mọi kết nối được thiết lập với từng khách hàng. Nhật ký này ghi lại mọi thứ mà khách hàng gửi đến máy chủ. Nhật ký này rất hữu ích để xác định các vấn đề của khách hàng
  • Nhật ký nhị phân. Ghi lại từng sự kiện thao tác dữ liệu trong cơ sở dữ liệu. Các hoạt động ghi nhật ký này chẳng hạn như tạo bảng, sửa đổi lược đồ, chèn giá trị mới hoặc truy vấn bảng. Các bản ghi này được sử dụng để sao lưu và phục hồi cơ sở dữ liệu
  • Nhật ký truy vấn chậm. Bản ghi của mỗi truy vấn, quá trình thực hiện mất quá nhiều thời gian. Nhật ký này có thể hữu ích cho việc tối ưu hóa các truy vấn SQL chậm

Trong hướng dẫn này, bạn sẽ thực hiện các thao tác sau

  • Bạn sẽ cài đặt máy chủ MySQL và xem nhật ký lỗi mặc định
  • Bạn sẽ kết nối với máy chủ MySQL, xem siêu dữ liệu về nhật ký truy vấn chung và xem các nhật ký này
  • Bạn sẽ hiểu khái niệm về nhật ký nhị phân của MySQL và nơi tìm thấy chúng
  • Bạn sẽ bật và định cấu hình nhật ký truy vấn chậm, mô phỏng một số truy vấn chậm và kiểm tra sự cố này trong nhật ký mới

🔭 Bạn muốn tập trung và theo dõi nhật ký MySQL của mình?

Truy cập Logtail và bắt đầu nhập nhật ký của bạn sau 5 phút

điều kiện tiên quyết

Bạn sẽ cần

  • Ubuntu 20. 04 bao gồm cả người dùng không root có quyền truy cập
    cat /var/log/mysql/error.log
    
    5
  • Kiến thức cơ bản về ngôn ngữ SQL (hiểu câu lệnh truy vấn chọn đơn giản)

Bước 1 — Xem nhật ký lỗi

Máy chủ MySQL được duy trì bởi chương trình dòng lệnh

cat /var/log/mysql/error.log
3. Chương trình này quản lý quyền truy cập vào thư mục dữ liệu MySQL chứa cơ sở dữ liệu và bảng. Các sự cố gặp phải trong quá trình khởi động, chạy hoặc dừng
cat /var/log/mysql/error.log
3 được lưu trữ dưới dạng nhật ký tùy chỉnh trong thư mục
cat /var/log/mysql/error.log
8. Nhật ký này không bao gồm bất kỳ thông tin nào về các truy vấn SQL. Nó rất hữu ích cho việc phân tích máy chủ MySQL

Trước hết, hãy cài đặt máy chủ MySQL. Ubuntu 20. 04 cho phép cài đặt MySQL từ các gói mặc định với

cat /var/log/mysql/error.log
9 (cài đặt yêu cầu đặc quyền của
cat /var/log/mysql/error.log
5)

________số 8

Lệnh đầu tiên sẽ cập nhật kho lưu trữ Ubuntu và lệnh thứ hai sẽ tải xuống và cài đặt các gói cần thiết cho máy chủ MySQL

Bây giờ, máy chủ đã được cài đặt. Dịch vụ mới đã tạo nhật ký lỗi mặc định. Bạn có thể liệt kê thư mục

cat /var/log/mysql/error.log
4 và tìm thư mục con mới
cat /var/log/mysql/error.log
02 với
cat /var/log/mysql/error.log
03

Bạn sẽ thấy đầu ra của chương trình xuất hiện trên màn hình

cat /var/log/mysql/error.log
2

Đầu ra cũng hiển thị thư mục

cat /var/log/mysql/error.log
02. Theo mặc định, thư mục này chứa nhật ký đơn
cat /var/log/mysql/error.log
05. Hãy xem nội dung của tệp
cat /var/log/mysql/error.log
05 với
cat /var/log/mysql/error.log
07

cat /var/log/mysql/error.log

Bạn sẽ thấy đầu ra của chương trình xuất hiện trên màn hình

cat /var/log/mysql/error.log
0

Đầu ra cho thấy tệp lưu trữ các bản ghi văn bản thuần túy về quá trình khởi tạo máy chủ

cat /var/log/mysql/error.log
3 và đang chạy

Bước 2 — Xem nhật ký truy vấn chung

Máy chủ ghi các bản ghi về từng sự kiện của máy khách trong khi kết nối với nhật ký truy vấn chung. Về cơ bản, nó giữ thông tin về tất cả các câu lệnh SQL xảy ra. Nhật ký này hữu ích khi quản trị viên muốn biết chính xác những gì khách hàng thực thi

Kết nối với máy chủ và kiểm tra trạng thái nhật ký truy vấn chung

Trước hết, hãy kiểm tra trạng thái của nhật ký truy vấn chung vì tính năng ghi nhật ký này có thể bị tắt

Bạn có thể kết nối với máy chủ MySQL với tư cách là khách hàng gốc

Bạn sẽ được chuyển hướng đến dòng lệnh MySQL

Bây giờ, bạn có thể xem các biến hệ thống liên quan đến nhật ký truy vấn chung bằng cách thực hiện lệnh

cat /var/log/mysql/error.log
09

cat /var/log/mysql/error.log
1

Mệnh đề chỉ định một mẫu phù hợp với biến. Trong trường hợp của chúng tôi, mẫu

cat /var/log/mysql/error.log
10 chỉ định hiển thị các biến có chứa chuỗi
cat /var/log/mysql/error.log
11. Bạn sẽ thấy đầu ra của chương trình xuất hiện trên màn hình

cat /var/log/mysql/error.log
4

Đầu ra hiển thị hai biến

  • cat /var/log/mysql/error.log
    
    12. biến giữ giá trị
    cat /var/log/mysql/error.log
    
    13 (bật nhật ký chung) hoặc
    cat /var/log/mysql/error.log
    
    14 (tắt nhật ký chung)
  • cat /var/log/mysql/error.log
    
    15. biến xác định vị trí nhật ký được lưu trữ trong hệ thống tệp

Như bạn có thể thấy, nhật ký truy vấn chung được bật theo mặc định. Chúng ta có thể ngắt kết nối khỏi máy chủ bằng cách thực hiện lệnh

cat /var/log/mysql/error.log
16

Bạn sẽ được chuyển hướng trở lại thiết bị đầu cuối

Xem nhật ký truy vấn chung

Bây giờ, bạn có thể xem nội dung của nhật ký này bằng

cat /var/log/mysql/error.log
07 (_______05 là bắt buộc vì tệp này được duy trì bởi hệ thống)

cat /var/log/mysql/error.log
2

Bạn sẽ thấy đầu ra của chương trình xuất hiện trên màn hình

cat /var/log/mysql/error.log
3

Đầu ra hiển thị tất cả các câu lệnh được thực thi trên máy chủ. Bạn có thể xem dấu thời gian và lệnh cụ thể đã được thực thi. Ngoài ra còn có lệnh được thực thi

cat /var/log/mysql/error.log
19

Bước 3 — Liệt kê nhật ký nhị phân

Nhật ký nhị phân chứa các sự kiện thao tác cơ sở dữ liệu. Nếu bạn muốn khôi phục cơ sở dữ liệu, bạn cần sao lưu và nhật ký nhị phân liên quan đến bản sao lưu này. Có nhiều nhật ký nhị phân vì chúng được phiên bản

Theo mặc định, nhật ký nhị phân được bật. Bạn có thể kiểm tra xem chúng được lưu trữ ở đâu. Hãy kết nối với máy chủ MySQL với tư cách là khách hàng gốc

Bạn sẽ được chuyển hướng đến dấu nhắc MySQL

Bây giờ, bạn có thể kiểm tra trạng thái nhật ký nhị phân bằng cách thực thi

cat /var/log/mysql/error.log
40

Lệnh sẽ liệt kê các tệp nhật ký nhị phân trên máy chủ

cat /var/log/mysql/error.log
6

Đầu ra hiển thị tất cả các bản ghi nhị phân. Bây giờ, chúng ta có thể tìm ra nơi các bản ghi này được lưu trữ

Chúng tôi có thể hiển thị vị trí nhật ký bằng cách thực hiện lệnh

cat /var/log/mysql/error.log
09

cat /var/log/mysql/error.log
8

Chúng tôi đã sử dụng mệnh đề

cat /var/log/mysql/error.log
42 này ở bước trước. Lần này, mệnh đề hiển thị các biến có chứa chuỗi
cat /var/log/mysql/error.log
43. Bạn sẽ thấy đầu ra của chương trình xuất hiện trên màn hình

cat /var/log/mysql/error.log
20

Đầu ra cho thấy các bản ghi nhị phân được lưu trữ trong thư mục

cat /var/log/mysql/error.log
44 và chúng được gắn nhãn là
cat /var/log/mysql/error.log
45 (ví dụ:
cat /var/log/mysql/error.log
46)

Chúng ta có thể ngắt kết nối khỏi máy chủ bằng cách thực hiện lệnh

cat /var/log/mysql/error.log
16

Bạn sẽ được chuyển hướng trở lại thiết bị đầu cuối

Bây giờ, hãy liệt kê thư mục

cat /var/log/mysql/error.log
44 nhưng chỉ với tư cách là thư mục gốc vì nó được sở hữu và duy trì bởi hệ thống

Bạn sẽ thấy đầu ra của chương trình xuất hiện trên màn hình

cat /var/log/mysql/error.log
21

Đầu ra cho thấy thư mục

cat /var/log/mysql/error.log
44 chứa các tệp nhật ký nhị phân

Bước 4 — Định cấu hình Nhật ký truy vấn chậm

MySQL cho phép ghi lại các truy vấn, mất quá nhiều thời gian. Cơ chế này được gọi là nhật ký truy vấn chậm

Kích hoạt ghi nhật ký truy vấn chậm

Theo mặc định, nhật ký truy vấn chậm bị tắt. Bạn có thể kích hoạt nó bằng cách chỉnh sửa tệp cấu hình MySQL

cat /var/log/mysql/error.log
20 (yêu cầu ______05)

cat /var/log/mysql/error.log
22

Tệp chứa các dòng sau chứa các biến cấu hình (theo mặc định đã nhận xét)

cat /var/log/mysql/error.log
23

Ba dòng này chứa ba biến cấu hình sau

  • cat /var/log/mysql/error.log
    
    22. ghi nhật ký truy vấn chậm bị tắt (giá trị
    cat /var/log/mysql/error.log
    
    23) hoặc được bật (giá trị
    cat /var/log/mysql/error.log
    
    24)
  • cat /var/log/mysql/error.log
    
    25. nhật ký truy vấn chậm được lưu trữ trong tệp
    cat /var/log/mysql/error.log
    
    26. Bạn có thể chỉ định tập tin của riêng bạn
  • cat /var/log/mysql/error.log
    
    27. theo mặc định, nhật ký truy vấn chậm ghi lại mỗi truy vấn SQL mất hơn 10 giây. Bạn có thể thay đổi khoảng thời gian tối thiểu này thành một giá trị khác. Giá trị có thể được chỉ định dưới dạng số dấu phẩy động trong đó giá trị
    cat /var/log/mysql/error.log
    
    28 đề cập đến 1 giây

Bạn có thể bật nhật ký truy vấn chậm bằng cách bỏ ghi chú ba dòng này. Ngoài ra, bạn có thể đặt giá trị

cat /var/log/mysql/error.log
27 của riêng mình

cat /var/log/mysql/error.log
24

Trong ví dụ của chúng tôi, chúng tôi thay đổi giá trị mặc định của

cat /var/log/mysql/error.log
27 thành 5 giây. Bây giờ, bạn có thể lưu tệp

Nếu bạn muốn áp dụng ngay các quy tắc cấu hình mới thì bạn phải khởi động lại máy chủ MySQL với

cat /var/log/mysql/error.log
31 (yêu cầu ____05)

cat /var/log/mysql/error.log
25

Bây giờ, máy chủ MySQL cho phép ghi nhật ký truy vấn chậm

Kiểm tra trạng thái nhật ký truy vấn chậm

Bạn có thể kiểm tra xem nhật ký đã được bật chưa nếu bạn đăng nhập vào máy chủ MySQL với tư cách là khách hàng gốc

Bạn sẽ được chuyển hướng đến dấu nhắc MySQL

Hãy kiểm tra trạng thái log truy vấn chậm bằng cách thực hiện lệnh

cat /var/log/mysql/error.log
09

cat /var/log/mysql/error.log
26

Một lần nữa, chúng ta sử dụng mệnh đề

cat /var/log/mysql/error.log
42. Lần này, mệnh đề hiển thị các biến có chứa chuỗi
cat /var/log/mysql/error.log
22. Bạn sẽ thấy đầu ra của chương trình xuất hiện trên màn hình

cat /var/log/mysql/error.log
27

Đầu ra cho thấy rằng nhật ký truy vấn chậm được bật (biến

cat /var/log/mysql/error.log
22 giữ giá trị
cat /var/log/mysql/error.log
13). Nhật ký được lưu trữ trong tệp
cat /var/log/mysql/error.log
26. Bạn có thể thấy rằng đó là cùng một tệp với tệp được chỉ định trong tập lệnh cấu hình

Hãy xem khoảng thời gian truy vấn chậm thực tế bằng cách thực hiện lệnh

cat /var/log/mysql/error.log
09

cat /var/log/mysql/error.log
28

Bạn sẽ thấy đầu ra của chương trình xuất hiện trên màn hình

cat /var/log/mysql/error.log
29

Đầu ra cho thấy biến

cat /var/log/mysql/error.log
27 giữ giá trị 5 giây (như chúng tôi xác định trong tập lệnh cấu hình)

Xem Nhật ký truy vấn chậm

Cuối cùng, chúng ta có thể kiểm tra xem MySQL có ghi lại các truy vấn chậm vào nhật ký mới không. Bạn có thể thực hiện truy vấn chọn sau mất 6 giây

cat /var/log/mysql/error.log
61 sẽ đợi 6 giây rồi trả về 0

cat /var/log/mysql/error.log
0

Đầu ra cho thấy truy vấn này mất 6 giây. Do đó, nó sẽ được ghi lại trong nhật ký truy vấn chậm

Chúng ta có thể ngắt kết nối khỏi máy chủ bằng cách thực hiện lệnh

cat /var/log/mysql/error.log
16

Bạn sẽ được chuyển hướng trở lại thiết bị đầu cuối

Cuối cùng, chúng tôi có thể in nội dung của nhật ký truy vấn chậm

cat /var/log/mysql/error.log
26 (_______05 là bắt buộc vì tệp được duy trì bởi hệ thống)

cat /var/log/mysql/error.log
1

Bạn sẽ thấy đầu ra của chương trình xuất hiện trên màn hình

cat /var/log/mysql/error.log
2

Bạn có thể thấy rằng đầu ra hiển thị bản ghi về truy vấn thực thi

cat /var/log/mysql/error.log
65

Phần kết luận

Trong hướng dẫn này, bạn đã cấu hình và xem các bản ghi MySQL khác nhau. Bạn đã cài đặt máy chủ MySQL và xem nhật ký lỗi. Bạn đã kết nối với máy chủ, xem nhật ký truy vấn chung và cấu hình của chúng. Bạn đã liệt kê nhật ký nhị phân. Cuối cùng, bạn đã bật, định cấu hình và xem nhật ký truy vấn chậm

Nhật ký kể chuyện.
Đọc chúng.

Trải nghiệm tương thích với SQL
quản lý nhật ký có cấu trúc.

Khám phá ghi nhật ký →

Tập trung tất cả nhật ký của bạn vào một nơi

Phân tích, tương quan và lọc nhật ký với SQL

Tạo trang tổng quan
có thể hành động.

Chia sẻ và bình luận với sự cộng tác tích hợp

Có một gợi ý bài viết?

Cách bắt đầu ghi nhật ký với PostgreSQL

Tìm hiểu cách bắt đầu ghi nhật ký bằng PostgreSQL và đi từ cơ bản đến các phương pháp hay nhất ngay lập tức

Tác phẩm này được cấp phép theo Creative Commons Ghi công-Phi thương mại-Chia sẻ tương tự 4. 0 Giấy phép quốc tế

Làm cách nào để bật nhật ký trong MySQL?

Để bật tệp nhật ký, hãy làm như sau. .
Tạo /etc/my. tệp tùy chọn cnf với các định nghĩa sau đây sẽ tự động kích hoạt các tệp nhật ký. [mysqld] nhật ký log-bin nhật ký lỗi nhật ký truy vấn chậm. .
Dừng và khởi động máy chủ MySQL để kích hoạt các thay đổi đối với /etc/my

Làm cách nào để bật nhật ký gỡ lỗi trong MySQL?

Nhập lệnh sau tại dấu nhắc mysql để kích hoạt gỡ lỗi. đặt global general_log = 'on';

Làm cách nào để kích hoạt lỗi đăng nhập MySQL?

Để đặt nhật ký lỗi MySQL/MariaDB một cách rõ ràng, bạn cần đăng nhập vào máy chủ của mình qua SSH với tên 'root. .
Mở /etc/my. cnf trong trình soạn thảo văn bản, chẳng hạn như nano hoặc vi
Thêm dòng sau vào bên dưới phần [mysqld]. log-error=/var/log/mysqld. đăng nhập
Khởi động lại MySQL bằng lệnh sau. /scripts/restartsrv_msyql

Làm cách nào để kiểm tra nhật ký truy vấn MySQL?

Làm cách nào để hiển thị nhật ký truy vấn trong MySQL? .
Cho phép ghi nhật ký truy vấn trên cơ sở dữ liệu. SET toàn cầu general_log = 1;
Bây giờ bạn có thể xem nhật ký bằng cách chạy truy vấn này. CHỌN * TỪ mysql. chung_log;
Nếu bạn muốn tắt ghi nhật ký truy vấn trên cơ sở dữ liệu, hãy chạy truy vấn này. SET toàn cầu general_log = 0;