MySql - Thay đổi expire_logs_days mà không cần khởi động lại máy chủ


Câu trả lời:


10

cảm ơn @dezso

Đây là cách tôi thay đổi nó: SET GLOBAL expire_logs_days = 4;


3

Trong MySQL 5.6, bạn sẽ muốn hiển thị những gì expire_logs_days của bạn được đặt thành đầu tiên. Sau đó xác nhận rằng chủ không cần phải giữ các nhật ký này nhiều hơn xsố ngày. Lời cảnh báo, có nhật ký nhị phân thấp trong vài ngày có thể là một rủi ro lớn.

Đặt toàn cầu là:

mysql hiển thị các biến như 'expire_logs_days';
+ ------------------ + ------- +
| Biến_ame | Giá trị |
+ ------------------ + ------- +
| expire_logs_days | 5 |
+ ------------------ + ------- +
1 hàng trong bộ (0,00 giây)
mysql đặt expire_logs_days toàn cầu = 1;
Truy vấn OK, 0 hàng bị ảnh hưởng (0,62 giây)
mysql hiển thị các biến như 'expire_logs_days';
+ ------------------ + ------- +
| Biến_ame | Giá trị |
+ ------------------ + ------- +
| expire_logs_days | 1 |
+ ------------------ + ------- +
1 hàng trong bộ (0,00 giây)

Sau đó, đừng quên cập nhật tệp my.cnf nếu bạn muốn cài đặt này duy trì hoặc tồn tại khi khởi động lại dịch vụ:

$ sudo vim /etc/my.cnf
    expire_logs_days = 1

Sau đó, xóa nhật ký hiện tại và để báo cáo nhật ký nhị phân có hiệu lực trên tất cả các nhật ký cũ hơn 1 ngày, trong trường hợp của bạn:

mysql tuôn ra nhật ký nhị phân;

1

Mysql (cộng đồng) Phiên bản 8.0.17-1.sles12 - OpenSUSE tumbleweed 2019.10.02

mysql> SET GLOBAL expire_logs_days = 4;
ERROR 3683 (HY000): The option expire_logs_days and binlog_expire_logs_seconds
cannot be used together. Please use binlog_expire_logs_seconds to set the expire
time (expire_logs_days is deprecated)

..

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.