標籤:
今天在處理業務庫中二進位檔案的時候,想更改二進位檔案的到期天數,發現日期如果設定成2位以上的整數。都會出現如下的警告。不能成功的設定到期日期天數。MySQL版本從5.1到5.5都是一樣的。
mysql> set global expire_logs_days=100;Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> show warnings;+---------+------+---------------------------------------------------+| Level | Code | Message |+---------+------+---------------------------------------------------+| Warning | 1292 | Truncated incorrect expire_logs_days value: ‘100‘ |+---------+------+---------------------------------------------------+1 row in set (0.00 sec) PS:在設定檔my.cnf中更改也是同樣的效果,例如你將值設定成 expire_logs_days= 199(2位以上的正整數),重啟服務,查看參數列表,結果如下。mysql> show variables like ‘expire_logs_days‘;+------------------+-------+| Variable_name | Value |+------------------+-------+| expire_logs_days | 99 |+------------------+-------+1 row in set (0.00 sec) 所以更改日期參數最多隻能更改到99。mysql> set global expire_logs_days=99;Query OK, 0 rows affected (0.00 sec) mysql> show variables like ‘expire_logs_days‘;+------------------+-------+| Variable_name | Value |+------------------+-------+| expire_logs_days | 99 |+------------------+-------+1 row in set (0.00 sec) mysql> set global expire_logs_days=0.5;ERROR 1232 (42000): Incorrect argument type to variable ‘expire_logs_days‘說明 :參數不支援浮點數,只支援正整數。 PS:MySQL預設expire_logs_days=0,是不會自動刪除記錄檔的。如果記錄檔過大,且業務需要,只能手動歸檔壓縮備份。對於不重要的日誌,可以設定expire_logs_days 的值,且需要注意只支援99。如果真的不重要,也沒必要儲存99天哈。
MySQL二進位記錄檔到期天數設定說明