亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mysql binlog日志的自動清理及手動刪除的方法

發布時間:2021-09-16 16:22:38 來源:億速云 閱讀:584 作者:chen 欄目:MySQL數據庫

這篇文章主要介紹“mysql binlog日志的自動清理及手動刪除的方法”,在日常操作中,相信很多人在mysql binlog日志的自動清理及手動刪除的方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”mysql binlog日志的自動清理及手動刪除的方法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

說明:

當開啟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′;------ ‘MySQL-bin.010′之前的全部被清除

實現:

1.關閉mysql主從,關閉binlog

LNMP一鍵安裝包安裝的MySQL默認是開啟了日志文件的,如果數據操作比較頻繁就會產生大量的日志,在/usr/local/mysql /var/下面產生mysql-bin.0000* 類似的文件,而且一般都在幾十MB到幾個GB,更甚會吃掉整個硬盤空間,從來導致mysql無法啟動或報錯,如vps論壇用戶的反饋。

如何關閉MySQL的日志功能:

刪除日志:

執行:/usr/local/mysql/bin/mysql -u root -p

輸入密碼登錄后再執行:reset master;

修改/etc/my.cnf 文件,找到

log-bin=mysql-bin

binlog_format=mixed

再這兩行前面加上#,將其注釋掉,再執行/etc/init.d/mysql restart即可。

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的影響說明

附錄:

1.expire_logs_days英文說明

Where X is the number of days you’d like to keep them around. I would recommend 10, but this depends on how busy your MySQL server is and how fast these log files grow. Just make sure it is longer than the slowest slave takes to replicate the data from your master.

Just a side note: You know that you should do this anyway, but make sure you back up your mysql database. The binary log can be used to recover the database in certain situations; so having a backup ensures that if your database server does crash, you will be able to recover the data.

2.PURGE MASTER LOGS手動刪除用法及示例,MASTER和BINARY是同義詞

> PURGE {MASTER | BINARY} LOGS TO 'log_name'
> PURGE {MASTER | BINARY} LOGS BEFORE 'date'

刪除指定的日志或日期之前的日志索引中的所有二進制日志。這些日志也會從記錄在日志索引文件中的清單中被刪除MySQL BIN-LOG 日志,這樣被給定的日志成為第一個。

實例:

> PURGE MASTER LOGS TO 'MySQL-bin.010';  //清除MySQL-bin.010日志
> PURGE MASTER LOGS BEFORE '2008-06-22 13:00:00';   //清除2008-06-22 13:00:00前binlog日志
> PURGE MASTER LOGS BEFORE DATE_SUB( NOW( ), INTERVAL 3 DAY);  //清除3天前binlog日志BEFORE,變量的date自變量可以為'YYYY-MM-DD hh:mm:ss'格式。

3.清除binlog時,對從mysql的影響

如果您有一個活性的從屬服務器,該服務器當前正在讀取您正在試圖刪除的日志之一,則本語句不會起作用,而是會失敗,并伴隨一個錯誤。不過,如果從屬服務器是休止的,并且您碰巧清理了其想要讀取的日志之一,則從屬服務器啟動后不能復制。當從屬服務器正在復制時,本語句可以安全運行。您不需要停止它們。

到此,關于“mysql binlog日志的自動清理及手動刪除的方法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

靖江市| 克拉玛依市| 阳谷县| 昌平区| 仁寿县| 册亨县| 安吉县| 南投市| 临高县| 云龙县| 垫江县| 潮州市| 宁海县| 阿图什市| 桐城市| 通州市| 定日县| 铜川市| 平邑县| 双牌县| 清水县| 巨野县| 星子县| 镇康县| 邳州市| 千阳县| 高密市| 保康县| 依兰县| 合肥市| 彩票| 涪陵区| 沭阳县| 任丘市| 清徐县| 淅川县| 公安县| 怀仁县| 晴隆县| 荣昌县| 东宁县|