mysql配置日志老化配置_mysql配置-日志大小限制和自动删除
線上的項目磁盤消耗問題, 發現和MySQL日志有關系.
需要處理的問題
如何限制大小 不讓日志無限膨脹?
配置日志不留?
刪除的方式和直接刪除會對服務有什么影響?
解決方式
限制大小, 保留最近一段時間日志.
set global expire_logs_days=7; # 命令行進入MySQL中, 臨時設置保留最近7天日志文件.
expire_logs_days = 7 # 打開 my.cnf 配置文件寫入配置, 上面是臨時設置的 重啟后需要這個文件也要配置下.
max_binlog_size = 100M # 打開 my.cnf 配置文件寫入配置, 配置二進制日志每一文件的大小限制為100M.
當修改配置并重啟后, 二進制超出配置的部分會被刪除, 如果需要之前的日志文件, 注意先備份出來.
上面配置置參考[資料1]
涉及其它的內容
刪除的方式和直接刪除會對服務有什么影響?
Tip: 刪除之后可能導致數據庫崩潰時無法進行恢復,所以若要刪除二進制日志首先將其和數據庫備份一份.
刪除方式1-按文件名. PURGEBINARY LOGS TO 'mysql-bin.000007'; 命令行進入mysql中, 將mysql-bin.000007之前的二進制日志文件刪除.
刪除方式2-按時間刪除. PURGEBINARY LOGS BEFORE '13-10-19 10:26:36'; 命令行進入mysql中, 將指定時間前二進制日志文件刪除.
參考[資料2]
配置日志不留?
mysql> show global variables like "%log%";
sql_log_bin ={ON|OFF} #用于控制會話級別二進制日志功能的開啟或關閉。默認為ON,表示啟用記錄功能。用戶可以在會話級別修改此變量的值,但其必須具有SUPER權限。
Tip: 在my.cnf中沒有找到sql_log_bin的配置值, 那么應該只是通過命令行設置就行. 還待查詢確認.
參考[資料2]
如何知道配置文件的位置?
mysql --help | grep my.cnf 這個是默認mysql配置文件存放路徑.
mysqld --verbose --help #和上面相同 參考[資料3]
whereis my.cnf 通過文件直接查找, 但是有可能找到的配置文件不是當前mysql加載的.
如何自定義my.cnf存放路徑?
待查找解決….
啟動mysql后,我們查看mysql的進程,看看是否有設置使用指定目錄的my.cnf文件,如果有則表示mysql啟動時是加載了這個配置文件。
命令: ps aux|grep mysql|grep ‘my.cnf’
參考[資料4]
參考資料
總結
以上是生活随笔為你收集整理的mysql配置日志老化配置_mysql配置-日志大小限制和自动删除的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: fsm32.exe是什么进程 有什么作用
- 下一篇: jsp mysql 推荐算法_基于jsp