mysql 日誌清理

說明:
當開啓mysql數據庫主從時,會產生大量如mysql-bin.00000* log的文件,這會大量耗費您的硬盤空間。
mysql-bin.000001
mysql-bin.000002
mysql-bin.000003
mysql-bin.000004
mysql-bin.000005


有三種解決方法:

1.關閉mysql主從,關閉binlog;

2.開啓mysql主從,設置expire_logs_days;

3.手動清除binlog文件,> PURGE MASTER LOGS TO ‘MySQL-bin.010′;


    1.關閉mysql主從,關閉binlog


    # vim /etc/my.cnf //註釋掉log-bin,binlog_format
    # Replication Master Server (default)
    # binary logging is required for replication
    # log-bin=mysql-bin
    # binary logging format - mixed recommended
    # binlog_format=mixed
    然後重啓數據庫


    2.重啓mysql,開啓mysql主從,設置expire_logs_days


    # vim /etc/my.cnf //修改expire_logs_days,x是自動刪除的天數,一般將x設置爲短點,如10
    expire_logs_days = x //二進制日誌自動刪除的天數。默認值爲0,表示“沒有自動刪除”
    此方法需要重啓mysql,附錄有關於expire_logs_days的英文說明

    當然也可以不重啓mysql,開啓mysql主從,直接在mysql裏設置expire_logs_days
    > show binary logs;
    > show variables like '%log%';
    > set global expire_logs_days = 10;


    3.手動清除binlog文件


    # /usr/local/mysql/bin/mysql -u root -p
    > PURGE MASTER LOGS BEFORE DATE_SUB(CURRENT_DATE, INTERVAL 10 DAY); //刪除10天前的MySQL binlog日誌,附錄2有關於PURGE MASTER LOGS手動刪除用法及示例
    > show master logs;
    也可以重置master,刪除所有binlog文件:
    # /usr/local/mysql/bin/mysql -u root -p
    > reset master; //附錄3有清除binlog時,對從mysql的影響說明





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章