問題:阿里云RDS數(shù)據(jù)庫Binlog日志一直增大,撐爆磁盤

問題:阿里云RDS數(shù)據(jù)庫Binlog日志一直增大郑藏,撐爆磁盤

最后結果衡查,是因為MySQL語句問題,沒有where的條件下必盖,導致更新操作
沒有開啟安全模式拌牲,需要開啟sql更改安全模式,禁止沒有where的條件下歌粥,更新操作

阿里云的需要提交工單塌忽,其他的直接進入數(shù)據(jù)庫進行查看并開啟就可以

mysql> show VARIABLES LIKE 'sql_safe_updates'     查看安全
mysql> set sql_safe_updates=1       開啟安全模式
mysql> set sql_safe_updates=0   關閉安全模式

原因:MySQL實例可能會由于大事務快速生成Binlog文件,導致實例空間滿失驶,為避免數(shù)據(jù)丟失土居,RDS會對實例進行自動鎖定,磁盤鎖定之后嬉探,將無法進行寫入操作擦耀。

? 一鍵上傳Binlog會在后臺異步提交清理任務,清理任務會將已寫入的Binlog上傳到OSS(非用戶購買的OSS)上涩堤,然后再從實例空間中刪除Binlog文件眷蜓,當前正在被寫入的Binlog文件由于未完成寫入,是不可以被清理的胎围。因此吁系,清理過程會有一定延遲,建議您單擊一鍵上傳Binlog后耐心等待一定時間白魂,請勿多次單擊該按鈕汽纤,可以到基本信息頁中查看已用空間是否減小。

? 由于DML等操作(比如涉及大字段的DML操作)導致快速生成Binlog福荸,可能會出現(xiàn)上傳Binlog文件到備份空間并且從實例空間中刪除的處理速度跟不上實例生成Binlog文件的速度蕴坪,在這種情況下,建議考慮升級磁盤空間敬锐,并且排查Binlog快速生成的原因辞嗡。

mysql的binlog太大太多占用大量磁盤的解決

處理方法一

? 分析過程及解決方案:通常出現(xiàn)這種問題都應該磁盤剩余空間過低捆等,使用df –lh檢查,發(fā)現(xiàn)磁盤空間已使用82%续室。再進一步通過du –sh對可以的目錄進行檢查,發(fā)現(xiàn)是mysql的binlog占用空間過大谒养。清理binlog的方法如下:

? 1) 設置日志保留時長expire_logs_days自動刪除

查看當前日志保存天數(shù):

  show variables like '%expire_logs_days%';

這個默認是0挺狰,也就是logs不過期,可通過設置全局的參數(shù)买窟,使他臨時生效:

  set global expire_logs_days=7;

設置了只保留7天BINLOG, 下次重啟mysql這個參數(shù)默認會失敗丰泊,所以需在my.cnf中設置

  expire_logs_days = 7

2) 手動刪除BINLOG (purge binary logs)

用于刪除列于在指定的日志或日期之前的日志索引中的所有二進制日志。這些日志也會從記錄在日志索引文件

mysql> show binary logs;   \#獲取binlog文件列表 
mysql> show master status始绍; #查看當前正在寫入的binlog文件(除了這個文件其他的都可以刪除) 
mysql> purge binary logs to “mysql-bin.000012”; 這里清楚12之前的文件(這里刪除后再mysql binlog 存放目錄下對應的文件會被刪除瞳购,mysql-bin.index 文件對應的名字也會被清除)
mysql> show variables like ‘expire_logs_days’; 查看 binlog自動刪除規(guī)則
±-----------------±------+
| Variable_name | Value |
±-----------------±------+
| expire_logs_days | 0 |
±-----------------±------+
1 row in set (0.00 sec)
此處為0,意思是不限制
mysql> set global expire_logs_days = 3; 動態(tài)設置binlog日志只保留3天
#修改mysql配置文件my.cnf亏推,永久修改binlog保留天數(shù)   寫在[Mysqld]下面   空閑狀態(tài)重啟Mysql
echo  "expire_logs_days = 3" >/etc/my.cnf

mysql> PURGE MASTER LOGS BEFORE DATE_SUB(CURRENT_DATE, INTERVAL 1 DAY); 刪除1天前的binlog日志文件
mysql> show binlog events; 只查看第一個binlog文件的內容(會有很多內容輸出学赛,具體根據(jù)binlog日志大小而定)
mysql> show binlog events in ‘mysql-bin.000002’; 查看指定binlog文件的內容

用mysqlbinlog工具查看:

[root@hd3 ~]# mysqlbinlog --start-datetime=‘2016-08-02 00:00:00’ --stop-datetime=‘2016-08-03 23:01:01’ -d hadoop /var/lib/mysql/mysql-bin.000001

如果需要查詢2017-09-17 07:21:09到2017-09-19 07:59:50 數(shù)據(jù)庫為geeRunner 的操作日志,輸入如下命令將數(shù)據(jù)寫入到一個備用的txt即可

mysqlbinlog --no-defaults --database=geeRunner --start-datetime=“2017-09-17 07:21:09” --stop-datetime=“2017-09-19 07:59:50” binlogs.000080 > sanjiaomao.txt
處理方法二

主從服務器之間同步數(shù)據(jù)

主服務器上所有的操作都在記錄日志中吞杭,從服務器可以根據(jù)該日志來進行盏浇,以確保兩個同步。

處理方法分兩種情況:
1:只有一個mysql服務器芽狗,關閉MySQL的日志功能步驟:

  1. 刪除日志:
    登錄后執(zhí)行:mysql> reset master;
    2)禁用MySQL日志:修改/etc/my.cnf 文件绢掰,找到
    log-bin=mysql-bin
    binlog_format=mixed
    這兩行前面加上#,將其注釋掉童擎,再執(zhí)行/etc/init.d/mysql restart即可滴劲。
    如果實在想保留日志,可以在/etc/my.cnf里加入expire_logs_days = 10 然后重啟mysql顾复,這樣10天就會自動清理日志班挖。
    2:如果你的環(huán)境是主從服務器,那么就需要做以下操作了捕透。
    A:在每個從屬服務器上聪姿,使用SHOW SLAVE STATUS來檢查它正在讀取哪個日志。
    B:使用SHOW MASTER LOGS獲得主服務器上的一系列日志乙嘀。
    C:在所有的從屬服務器中判定最早的日志末购,這個是目標日志,如果所有的從屬服務器是更新的虎谢,就是清單上的最后一個日志盟榴。
    D:清理所有的日志,但是不包括目標日志婴噩,因為從服務器還要跟它同步擎场。
    清理日志方法為:
    PURGE MASTER LOGS TO 'mysql-bin.010';
    PURGE MASTER LOGS BEFORE '2008-12-19 21:00:00';
    如果你確定從服務器已經同步過了羽德,跟主服務器一樣了,那么可以直接RESET MASTER將這些文件刪除迅办。
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末宅静,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子站欺,更是在濱河造成了極大的恐慌姨夹,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,590評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件矾策,死亡現(xiàn)場離奇詭異磷账,居然都是意外死亡,警方通過查閱死者的電腦和手機贾虽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評論 3 399
  • 文/潘曉璐 我一進店門逃糟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人蓬豁,你說我怎么就攤上這事绰咽。” “怎么了庆尘?”我有些...
    開封第一講書人閱讀 169,301評論 0 362
  • 文/不壞的土叔 我叫張陵剃诅,是天一觀的道長。 經常有香客問我驶忌,道長矛辕,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,078評論 1 300
  • 正文 為了忘掉前任付魔,我火速辦了婚禮聊品,結果婚禮上,老公的妹妹穿的比我還像新娘几苍。我一直安慰自己翻屈,他們只是感情好,可當我...
    茶點故事閱讀 69,082評論 6 398
  • 文/花漫 我一把揭開白布妻坝。 她就那樣靜靜地躺著伸眶,像睡著了一般。 火紅的嫁衣襯著肌膚如雪刽宪。 梳的紋絲不亂的頭發(fā)上厘贼,一...
    開封第一講書人閱讀 52,682評論 1 312
  • 那天,我揣著相機與錄音圣拄,去河邊找鬼嘴秸。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的岳掐。 我是一名探鬼主播凭疮,決...
    沈念sama閱讀 41,155評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼串述!你這毒婦竟也來了执解?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 40,098評論 0 277
  • 序言:老撾萬榮一對情侶失蹤纲酗,失蹤者是張志新(化名)和其女友劉穎材鹦,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體耕姊,經...
    沈念sama閱讀 46,638評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,701評論 3 342
  • 正文 我和宋清朗相戀三年栅葡,在試婚紗的時候發(fā)現(xiàn)自己被綠了茉兰。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,852評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡欣簇,死狀恐怖规脸,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情熊咽,我是刑警寧澤莫鸭,帶...
    沈念sama閱讀 36,520評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站横殴,受9級特大地震影響被因,放射性物質發(fā)生泄漏。R本人自食惡果不足惜衫仑,卻給世界環(huán)境...
    茶點故事閱讀 42,181評論 3 335
  • 文/蒙蒙 一梨与、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧文狱,春花似錦粥鞋、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,674評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至苏研,卻和暖如春等浊,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背楣富。 一陣腳步聲響...
    開封第一講書人閱讀 33,788評論 1 274
  • 我被黑心中介騙來泰國打工凿掂, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 49,279評論 3 379
  • 正文 我出身青樓庄萎,卻偏偏與公主長得像踪少,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子糠涛,可洞房花燭夜當晚...
    茶點故事閱讀 45,851評論 2 361