一、清除原因
因為之前打開了慢查詢,導致此表越來越大達到47G,導致磁盤快被占滿,使用xtrabackup進行備份的時候文件也超大。
mysql> show variables like 'log_output%'; Connection id: 1694401091 Current database: mysql +---------------+-------+ | Variable_name | Value | +---------------+-------+ | log_output | TABLE | +---------------+-------+ 1 row in set (0.00 sec) mysql> show variables like '%slow%'; +---------------------+-------------------------------------+ | Variable_name | Value | +---------------------+-------------------------------------+ | log_slow_queries | ON | | slow_launch_time | 2 | | slow_query_log | ON | | slow_query_log_file | /home/mysql/data3311/sql01-slow.log | +---------------------+-------------------------------------+ 4 rows in set (0.00 sec)
現在備份之前的文件夾大小只有3.1G,備份后大小3.3G,使用mysqldump邏輯備份數據庫為234M。
二、清理show_log的方法
mysql> use mysql; mysql> SET GLOBAL slow_query_log = 'OFF'; mysql> ALTER TABLE slow_log RENAME slow_log_drop; mysql> CREATE TABLE slow_log LIKE slow_log_drop; mysql> SET GLOBAL slow_query_log = 'ON'; mysql> DROP TABLE slow_log_drop;
三、相關參數
mysql> show variables like '%log_output%'; # 默認是FILE +---------------+-------+ | Variable_name | Value | +---------------+-------+ | log_output | TABLE | +---------------+-------+ 1 row in set (0.00 sec) mysql> show variables like '%quer%'; Connection id: 1694418241 Current database: *** NONE *** +-------------------------------+-------------------------------------+ | Variable_name | Value | +-------------------------------+-------------------------------------+ | ft_query_expansion_limit | 20 | | have_query_cache | YES | | log_queries_not_using_indexes | ON | | log_slow_queries | ON | | long_query_time | 2.000000 | | query_alloc_block_size | 8192 | | query_cache_limit | 2097152 | | query_cache_min_res_unit | 4096 | | query_cache_size | 67108864 | | query_cache_type | OFF | | query_cache_wlock_invalidate | OFF | | query_prealloc_size | 8192 | | slow_query_log | ON | | slow_query_log_file | /home/mysql/data3311/sql01-slow.log | +-------------------------------+-------------------------------------+ 14 rows in set (0.00 sec) -- log_output 默認是FILE,表示慢查詢日志輸入至日志文件,可以通過set修改輸出為TABLE -- log_queries_not_using_indexes 默認是OFF,表示是否記錄沒有使用索引的查詢 -- slow_query_log 默認是OFF,表示是否打開慢查詢 -- long_query_time默認是 10.000000,表示記錄超過時間的慢查詢 SET global slow_query_log = ON; # 打開慢查詢記錄 SET GLOBAL long_query_time = 2.000000; # 記錄超過2秒的慢查詢句語 SET GLOBAL log_queries_not_using_indexes = ON; # 開啟 記錄沒有使用索引的語句 SET global log_output='TABLE' # 默認為FILE,改為TABLE