Mysql
如何更改 binlog 文件的過期日期?
我有一台裝有 Ubuntu 18.04 和 MySQL 8.0.11 的伺服器
我的 binlog 文件中
/var/lib/mysql
有幾個 GO,我的伺服器很快就會飽和。如何更改 binlog 文件的過期日期?
如果我去:
nano /etc/mysql/my.cnf
該文件包含:
!includedir /etc/mysql/conf.d/ !includedir /etc/mysql/mysql.conf.d/
如果我去:
nano /etc/mysql/conf.d/mysql.cnf
該文件包含:
[mysql]
如果我去:
nano /etc/mysql/mysql.conf.d/mysqld.cnf
該文件包含:
[mysqld] pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock datadir = /var/lib/mysql log-error = /var/log/mysql/error.log
我找不到要配置的文件。數據庫更改超時是否安全?
如何更改 binlog 文件的過期日期?
要在二進制日誌文件或特定日期之前清除二進制日誌,請使用清除二進制日誌語句。
要為二進制日誌設置過期時間,請使用binlog_expire_logs_seconds。無論您是否啟用了複製,我都建議將其保留 2 天以上。
我找不到要配置的文件。
要查看 MySQL 查看配置文件的順序,請執行以下命令:
mysqld --help --verbose | grep -A 2 "Default options are read from"
如果您還想查看不同變數在開始時會採用什麼值,請刪除該
grep
部分。對於在配置文件中多次指定值或在同一文件中多次指定值的變數,MySQL 將考慮最後一個值。其中一些配置文件可能不存在,在這種情況下,您可以自己創建它們,並
[mysqld]
在配置文件中添加您要設置的參數。數據庫更改超時是否安全?
是的,如果不涉及複製,它是安全的。即使slave確實存在,如果所有要刪除的日誌都已經被slave處理和執行了,那麼從master中刪除這些日誌是安全的。
log_bin = 0
完全關閉對二進制日誌的寫入。