1. 程式人生 > >MySQL線上刪除多餘的binlog檔案

MySQL線上刪除多餘的binlog檔案


如果你的MySQL搭建了主從同步 , 或者資料庫開啟了log-bin日誌(MySQL預設開啟) , 那麼隨著時間的推移 , 你的資料庫data 目錄下會產生大量的日誌檔案

ll /opt/mysql/data/
-rw-rw----. 1 mysql mysql 63278 9月 11 02:03 mysql-bin.000001
-rw-rw----. 1 mysql mysql 10966 9月 11 02:03 mysql-bin.000002
-rw-rw----. 1 mysql mysql 133 9月 11 02:04 mysql-bin.000003
-rw-rw----. 1 mysql mysql 133 9月 12 02:00 mysql-bin.000004
-rw-rw----. 1 mysql mysql 271 9月 12 18:25 mysql-bin.000005
-rw-rw----. 1 mysql mysql 133 9月 12 18:55 mysql-bin.000006
-rw-rw----. 1 mysql mysql 133 9月 12 19:48 mysql-bin.000007
-rw-rw----. 1 mysql mysql 133 9月 12 21:21 mysql-bin.000008
-rw-rw----. 1 mysql mysql 321 9月 18 17:30 mysql-bin.000009

生產環境中這些檔案都會很大,預設每個1G左右大小,長期不處理會佔滿硬碟空間
下面來介紹幾種解決方法:

1、如果你的資料庫沒有搭建主從同步這樣的服務 , binlog日誌也不用的情況下 , 你可以將/etc/my.cnf檔案下面行刪除或註釋掉
log-bin=mysql-bin
如果你需要這樣的檔案 , 那麼建議你在主配置檔案 /etc/my.cnf 中新增如下行 , 來限制 binlog日誌檔案存在時間 , 過期自動刪除
expire_logs_days = 7 #只保留7天的日誌檔案

2、如果你伺服器上面的binlog日誌已經影響到了磁碟空間,那麼你可以使用下面命令清除
mysql> reset master; #清空所有binlog檔案

3、如果你的伺服器 , mysql做了主從同步 , 那麼上面的命令就不適合你了 , 因為binlog檔案不能全部刪除 , 否則會導致資料不同步
mysql> show slave status\G;   #在slave上檢視從庫讀binlog讀到了哪裡
Master_Log_File: mysql-bin.000009   # 我們可以看到是mysql-bin.000009
mysql> purge master logs to 'mysql-bin.000009';    #在master中執行這條指令 , 將mysql-bin.000009前的binlog都刪掉
mysql> purge master logs before '2014-11-18 00:00:00';    #將此日期前的binlog都刪掉


參考連結:http://www.linuxidc.com/Linux/2016-03/129647.htm

相關推薦

MySQL線上刪除多餘binlog檔案

如果你的MySQL搭建了主從同步 , 或者資料庫開啟了log-bin日誌(MySQL預設開啟) , 那麼隨著時間的推移 , 你的資料庫data 目錄下會產生大量的日誌檔案 ll /opt/mysql/data/ -rw-rw----. 1 mysql mysql 63278 9月 11 02:03 mysql

mysql刪除 使用binlog 進行回滾

進制 密碼安全 mit 顯示 host 讀取 end 誤刪 nullable mysql> select * from tet3;+----+-------------+| id | dd |+----+-------------+| 1 |

ubuntu刪除多餘核心檔案

1、查詢已經安裝的核心映像 通過命令sudo dpkg --get-selections | grep linux-image 檢視已安裝的核心映像 刪除多餘安裝核心 通過命令sudo apt-get purge linux-image-..................

檢視MySQL日誌資料binlog檔案

binlog介紹 binlog,即二進位制日誌,它記錄了資料庫上的所有改變. 改變資料庫的SQL語句執行結束時,將在binlog的末尾寫入一條記錄,同時通知語句解析器,語句執行完畢. binlog格式 基於語句,無法保證所有語句都在從庫執行成功,比如update ... lim

使用binlog日誌恢復MySQL資料庫刪除資料的方法

binlog日誌簡介: binlog 就是binary log,二進位制日誌檔案,這個檔案記錄了MySQL所有的DDL和DML(除了資料查詢語句)語句,以事件形式記錄,還包含語句所執行的消耗的時間。 binlog日誌包括兩類檔案: 1)二進位制日誌索引檔案(檔名字尾為.index):用於

刪除mysql日誌,刪除mysql-bin.0000*類似的檔案

登入 /usr/local/mysql/bin/mysql -u root -p輸入密碼 reset master;  修改/etc/my.cnf 檔案 log-bin=mysql-bin binlog_format=mixed   再這兩行前面加上 # ,將其註釋掉  執

mysql 線上故障排查

mysql 線上故障排查Mysql 系統報連接池滿iostatslowlogWhat’s in slow log?Mk-query-digest mk-query-digest 全面分析slow log本文出自 “李世龍” 博客,謝絕轉載!mysql 線上故障排查

mysql批量刪除相同前綴的表格

安裝 false 表格 tool true 網站後臺 lba php 點擊 原文:http://www.open-open.com/code/view/1446691883076 如果你網站後臺沒法運行mysql,就進phpmyadmin,然後運行一段代碼.假如要刪除織

mysql 如何刪除數據庫中所有的表

for ati 運行 ron clas sel pan lec -c SELECT concat(‘DROP TABLE IF EXISTS ‘, table_name, ‘;‘)FROM information_schema.tablesWHERE table_schem

mysql線上操作常用命令

cte utf zabbix character mysq hex-blob col sin pre 備份命令: mysqldump -uroot -p --default-character-set=utf8 --hex-blob -R --log-error=/v

MySQL系列:基於binlog的增量訂閱與消費(一)

clas 需要 val tro ali cat tor rip 變化   在一些業務場景中,像在數據分析中我們有時候需要捕獲數據變化(CDC);在數據審計中,我們也往往需要知道數據從這個點到另一個點的變化;同樣在實時分析中,我們有時候需要看到某個值得實時變化等。 要解決以上

mysql數據庫binlog日誌的異地備份

logs 缺點分析 一致性 獲取 lin 生產環境 exit i++ hostname MySQL數據庫的二進制日誌binlog記錄了對數據庫的全量DDL和DML操作,對數據庫的point to point災難恢復起著無法替代的關鍵作用。因此,基於此類考慮,需要對生

MySQL 中Redo與Binlog順序一致性問題 【轉】

事務 sync GC 文檔 per ora 需要 步驟 基本思想 首先,我們知道在MySQL中,二進制日誌是server層的,主要用來做主從復制和即時點恢復時使用的。而事務日誌(redo log)是InnoDB存儲引擎層的,用來保證事務安全的。現在我們來討論一下MySQL

mysql刪除

mysql 誤刪除 MySQL誤刪除 數據回滾 sql數據回滾 mysql 誤刪除 本次使用的原美團開源Mysql 數據閃回工具 傳送門:https://github.com/Meituan-Dianping/MyFlash 一,簡介 MyFlash的前身是binlong2,後續是由美團點評公

mysql刪除已有字段的唯一性約束?

col arc play 如何 repl alt 字段 class arch username varchar(18) NOT NULL unique 如何把unique約束刪除? 解決方法:在你建好的表...右擊 ——索引/索引類型——把username唯一鍵去掉

最近關於mysql的造型,binlog使用,以及阿裏雲上線數據處理錯誤導致被處罰的思考

lan blank tro tle cat 物理 不能 變化 binlog2 因團隊中成員,上線代碼時,不小心將數據表中吃掉物理的數據清空,導致被單位處罰,痛定思痛,我們應該如何上線,還需要準備哪些技能? 1、上線時,必須關閉服務,不能一邊上線,一邊讓用戶可以繼續操

MySQL刪除表時I/O錯誤原因分析

隨機 是否 mysq let 影響 syn type src fc7 歡迎大家前往騰訊雲+社區,獲取更多騰訊海量技術實踐幹貨哦~ 本文由騰訊數據庫技術 發表於雲+社區專欄 問題現象 最近使用sysbench測試MySQL,由於測試時間較長,寫了一個腳本按prepare-

mysql刪除重復數據

comment 分組 comm 技術 張新 講解 left idt png //首先我們需要知道我們重復的都有哪些數據, //第一步:進行對數據表進行分組,group by. //第二步:進行後通過having進行限制篩選,條數大於等於2的 //第三步:進行多表刪除。

mysql 查詢資料匯出到檔案

select * from ods_log_tomcat_mobile INTO OUTFILE ‘/tmp/daily_report/debt_financing/24EXPORTBUSINESSZHAIQ.txt’ FIELDS TERMINATED BY ‘|’; 同理hive中

mysql進階(十五) mysql批量刪除大量資料

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!