Truy vấn:
SELECT COUNT(online.account_id) cnt from online;
Nhưng bảng trực tuyến cũng được sửa đổi bởi một sự kiện, vì vậy thường xuyên tôi có thể thấy khóa bằng cách chạy show processlist
.
Có ngữ pháp nào trong MySQL có thể khiến câu lệnh chọn không gây ra khóa không?
Và tôi đã quên đề cập ở trên rằng đó là trên cơ sở dữ liệu nô lệ MySQL.
Sau khi tôi thêm vào my.cnf:transaction-isolation = READ-UNCOMMITTED
nô lệ sẽ gặp lỗi:
Lỗi 'Không thể đăng nhập nhị phân. Thông báo: Cấp độ giao dịch 'READ-UNCOMMITTED' trong InnoDB không an toàn cho chế độ binlog 'STATMENT' 'khi truy vấn
Vì vậy, có một cách tương thích để làm điều này?