我在amazone有一個帳戶。我的主MySql是一個大的實例。並且我還有其他2 小型實例作爲複製服務器。層次結構是Primary - > slave 1-> slave 2。問題在於從1和從2顯示CPU利用率很高。我們無法找出確切的原因。奴隸1充當主要的奴隸,同時充當奴隸2的主人。我們搜查了很多東西,但我們仍然被視爲盲人。 在此先感謝您的幫助。Mysql副本服務器的CPU利用率在EC2中變得很高
回答
作爲一般規則,當使用MySQL本機異步複製(這是RDS使用的)時,副本服務器需要與主副本或有時更大的一樣大。副本從主服務器接收「複製事件」,其中可能包含修改數據的實際查詢 - 插入,更新,刪除但不選擇 - 這是「基於語句的複製」 - 或者可能接收添加的行的二進制映像刪除或更改主 - 這是「基於行復制」。默認情況下,主服務器在逐個查詢的基礎上決定使用哪種格式發送複製事件(「混合」)。
在所有情況下SELECT
語句不會發送到副本(當然除了爲INSERT ... SELECT
),但他們確實需要足夠的能力來處理無論是從主引入的變更,以及是直接針對運行SELECT
查詢複製品由您的應用程序。
在RDS for MySQL 5.6及更高版本中,您可以將binlog_format
設置爲ROW
以強制主服務器始終使用基於行的複製。這可能會提高您的性能,而且可能不會 - 這取決於工作負載。你不能強迫RDS只使用「語句」模式,你也不應該這樣做。
http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.Concepts.MySQL.html
在然而,一般而言,任何時間該副本是具有比主資源較少的機器,複製的機會滯後增加。 Cloudwatch中可以監控副本的滯後。
謝謝邁克爾。我希望我們的問題是我們的奴隸比師父配置更少。我也有一個疑問。我們怎麼能發現我們的slave是基於語句的複製或基於行的複製? –
- 1. MySQL數據庫服務器中CPU利用率高
- 2. WSO2 ESB中的CPU利用率很高
- 3. sqlserver2012上的CPU利用率很高
- 4. EC2實例CPU利用率
- 5. CPU利用率高
- 6. 當CPU爲100%時,WCF服務無法獲得CPU利用率
- 7. httpd - CPU利用率100% - Mysql服務器遠程位置
- 8. WP7,高CPU利用率
- 9. CPU利用率高 - VB.NET
- 10. 服務DLL的CPU利用率?
- 11. EC2 CPU利用率vs內存
- 12. System.net.Socket.beginReceive()中的CPU使用率很高()
- 13. 應用服務器攻擊CPU利用率的原因
- 14. 我該如何讓R利用高內存,高CPU服務器?
- 15. AWS ec2實例高CPU使用率
- 16. asp.net網絡服務高CPU使用率
- 17. 使用MQTT deamon時CPU利用率高!
- 18. 高mySQL cpu使用率
- 19. Java多線程服務器 - 高CPU利用率和java.net.SocketException:套接字關閉
- 20. Django App的CPU使用率很高
- 21. Java Web App的CPU佔用率很高
- 22. Java線程 - 高cpu利用率?
- 23. 線程長,CPU利用率高
- 24. oracle組期間CPU利用率高
- 25. 在Linux服務器上認爲CPU使用率有多高
- 26. CPU利用率6
- 27. Fedora Gnome CPU突然很高使用率
- 28. 在Linux EC2實例和Openfire服務器中Java CPU使用率超過100%
- 29. 如何減少Windows服務器的高CPU使用率?
- 30. 排除Windows服務器CPU佔用率過高的問題
mysql複製方法是重新運行從服務器內的CRUD。它不是「直接數據同步」,可以想象你在主服務器中有很高的CRUD活動。 – mootmoot
感謝我的朋友,我有另外一個疑問,讀取操作是否會在從服務器中重新運行? –