mmm-master漂移问题的分析
一、问题描述
线上store应用,偶尔出现慢的现象。检查发现是writer角色在master-backup之前漂移
检查mysql-log没有发现异常,也没前端nginx/php以及mysql-proxy无关
master show processlist500多个线程
二、分析
1.查看mmm-monitor检测mysql状态的代码,确认漂移的条件
1).无法链接 return "ERROR: Invalid host '$host'" unless ($peer_host); 帐号密码的问题
2).链接过多的情况 return "UNKNOWN: Too many connections! "
3).执行SELECT NOW()语句,无法执行
4).超时
2.打开mmm-monitor debug日志,确认详细的漂移原因
# vim /etc/mysql-mmm/mmm_mon_log_3310.conf
修改
log4perl.logger = DEBUG, MMMLog
log4perl.appender.MMMLog.Threshold = DEBUG
# /etc/init.d/mysql-mmm-monitor restart 3310
3.等待重现,获取漂移原因
# grep -n move mmm_mond_3310.log
143932:2014/05/15 10:54:24 INFO Removed role 'writer(192.168.201.10)' from host 'db2'
2014/05/15 10:54:21 DEBUG Received Answer: OK: Status applied successfully!|UP:7818568.42
2014/05/15 10:54:22 ERROR Check 'mysql' on 'db2' has failed for 10 seconds! Message: ERROR: Connect error (host = 192.168.201.2:3310, user = dbslave)! Can't create a new thread (errno 11); if you are not out of available memory, you can consult the manual for a possible OS-dependent bug
2014/05/15 10:54:23 DEBUG Listener: Waiting for connection...
2014/05/15 10:54:24 FATAL State of host 'db2' changed from ONLINE to HARD_OFFLINE (ping: OK, mysql: not OK)
2014/05/15 10:54:24 INFO Removing all roles from host 'db2':
2014/05/15 10:54:24 INFO Removed role 'writer(192.168.201.10)' from host 'db2'
2014/05/15 10:54:24 DEBUG Sending command 'SET_STATUS(HARD_OFFLINE, , )' to db2 (192.168.201.2:43310)
2014/05/15 10:54:24 DEBUG Received Answer: OK: Status applied successfully!|UP:34710477.06
2014/05/15 10:54:24 INFO Orphaned role 'writer(192.168.201.10)' has been assigned to 'db3'
2014/05/15 10:54:24 DEBUG Sending command 'SET_STATUS(ONLINE, reader(192.168.201.11), db3)' to db216 (192.168.201.216:43310)
2014/05/15 10:54:24 DEBUG Received Answer: OK: Status applied successfully!|UP:28460505.74
漂移原因:
Message: ERROR: Connect error (host = 192.168.201.2:3310, user = dbslave)! Can't create a new thread (errno 11); if you are not out of available memory, you can consult the manual for a possible OS-dependent bug
4.原因分析
if you are not out of available memory
内存不够?
实际内存是够的,排除。系统最大连接数问题?
原因分析:
和mysql本身没关系
操作系统连接数太小。(centos6 默认的 max user process只有 1024个。当mysql process大于这个值时 就会出现Can't create a new thread的问题)
确认系统限制
# su -s /bin/bash mysql
bash-4.1$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 256352
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 65536
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 1024
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
5.解决问题
修改
test -f /etc/security/limits.d/90-nproc.conf && echo "mysql soft nproc 65536" >> /etc/security/limits.d/90-nproc.conf
或者:
#vim /etc/bashrc
#su -s /bin/bash mysql
ulimit -u 65536
确认
# su -s /bin/bash mysql
bash-4.1$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 256352
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 65536
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimit ed
max user processes (-u) 65536
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
diff一下发现变化信息
max user processes (-u) 1024
max user processes (-u) 65536
这个是64位的。32位的变化情况为(同样配置为mysql soft nproc 65536的情况下)
max user processes (-u) 15036
6. 将write角色从backup move回来
mmm_control @3310 move_role writer db2

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

《蒼翼混沌效應》擁有許多角色,每位角色都有獨特的身份和背景故事。為此,小編特為各位玩家整理了蒼翼混沌效應角色介紹。蒼翼混沌效應有幾個角色答:有7個角色。 1.【死神】拉格納·查·布拉德艾奇(綽號RG、尼桑)其與弟弟、妹妹曾由教堂修女撫養,在一天,六英雄之一的反派闖入,殺害修女,燒毀教堂,帶走妹妹,留下弟弟「事象兵器」冰劍雪女。 2、諾愛爾梵蜜利昂梵蜜利昂家的養女,與拉格納的妹妹長得幾乎一樣。畢業後進入統禦機關工作,擔任拉格納弟弟的秘書官。 3.λ-11統稱拉姆達、十一妹。原開發者放棄後,九重救並

我們將在本文中向您介紹CrushOn.AI的最佳替代方案,並提供免費且無限的訊息功能。現在市場上有許多人工智慧平台,用戶可以與來自動漫等各種媒體的角色進行對話,這為用戶提供了更有趣和互動性的體驗。什麼是CrushOn.AI? CrushonAI是一個AI聊天機器人平台,使用者可以透過與虛擬角色進行對話來體驗互動的樂趣。用戶有機會與動漫等多種媒體中的虛擬角色展開交流,建立聯繫,並創造與自己最喜歡的角色相關的故事情節。提供無限免費訊息的CrushOn.AI的最佳替代方案如果你正在尋找最好的Crush

錨點降臨是一款擁有高畫質美少女二次元主題的3D回合卡牌遊戲,提供了豐富角色的精彩組合可供玩家來探索和體驗,擁有許多精品陣容的強力搭配,新人玩家也是好奇新手池有哪些強力角色推薦,以下來看看新手十連金的選擇參考!錨點降臨新手池強力角色推薦第一個十連選艾莉絲,她主要是一個單體雷系爆發角色,單體輸出非常爆炸的,對新人的體驗也會是非常的友善的,所以十分推薦選取。 10抽必金建議選擇「艾莉絲」+「羚角」的組合,艾莉絲是最值得選的金皮雷屬性輸出角色,比新手卡池中的另外2個角色要強得不是一星半點。艾莉絲可以透過特

PHP是一種廣泛應用的程式語言,被廣泛用於創建和開發各種Web應用程式。在許多網路應用程式中,角色權限管理系統是一個重要的功能,它可以確保不同使用者擁有適當的存取權限。本文將介紹如何使用PHP來實作一個簡單而實用的角色權限管理系統。角色權限管理系統的基本概念是將使用者分為不同的角色,並為每個角色分配相應的權限。這樣,使用者只能執行他們有權限執行的操作,從而確保系統的

有用戶想要在微軟商店尋找自己喜歡的應用程式並下載安裝,但是發現微軟商店打不開了,同時還提示"很抱歉!出錯了,但我們做對了",那麼我們應該如何解決,才能讓微軟商店恢復正常運作並使用呢?下面小編整理了兩種方法,希望可以很好的幫助你!方法一可以按Win+R→輸入cmd然後按住ctrl+shift→點選確定(彈出UAC後點選是)然後彈出cmd視窗(管理員模式)然後複製貼上以下內容:netshwinsockresetnetshintipresetipconfig/releaseipconfig/renewi

在《蒼翼:混沌效應》遊戲中有許多角色供玩家選擇,有很多玩家都想知道《蒼翼:混沌效應》角色推薦哪些,小編推薦大家選擇NO-11、白面、諾愛兒,接下來就由小編為大家詳細的介紹一下《蒼翼:混沌效應》角色推薦攻略吧,有興趣的玩家快來和小編一起看看吧!《蒼翼:混沌效應》角色推薦:一、NO -11角色解析1、NO-11的傷害高,且還有不錯的機動性。 2.上手難度一般,適合新手玩家使用。 3.專屬模組推薦強化跳a、技能和長按技能奧義。二、白面角色解析1、上手難度較高,適合有一定操作的玩家。 2.角色生存能力強,可以彈

《誅仙世界》二測結束後,玩家的評價兩極化。在二測結束後,官方也列出了調校清單,從經濟、養成、玩法、功能、美術五個面向進行調整。表示針對玩家回饋的問題都會做出相對應的最佳化對策。今日,《誅仙世界》放出了爆改計畫中角色醫美進度展示。透過畫面對比,來向展示這幾個月來,專案組對角色爆改的階段性成果。大家覺得哪個版本比較好看呢?以下是先前《誅仙世界》公佈的曝光計畫:

永夜降臨復甦強勢角色有哪些?一個遊戲內強勢的角色會帶給玩家舒適的體驗,那麼在永夜降臨復甦中又有哪些呢?小編接下來會來把整理的永夜降臨復甦強勢角色總結分享在下方,有需要的可以來看看。 《永夜降臨:復甦》強勢角色一覽一、角色強度榜一覽T0:阿庫婭、波琪T1:小艾芙、伊蓮、菲妮T2:小麥二、最強角色推薦(1)阿庫婭角色解析1、擅長使用各種武器進行輸出,取得難度低,且傷害高。 2.傷害高的同時也具備高額的血量,可以為自己加上護盾。 3.每次攻擊敵方目標的時候為敵方加上印記,增加自己的傷害。 (2)小艾芙角色
