{"id":2253,"date":"2012-02-05T04:32:10","date_gmt":"2012-02-05T09:32:10","guid":{"rendered":"http:\/\/www.bytebot.net\/blog\/?p=2253"},"modified":"2012-02-05T06:31:18","modified_gmt":"2012-02-05T11:31:18","slug":"mysql-ha-reloaded-by-ivan-zoratti","status":"publish","type":"post","link":"http:\/\/www.bytebot.net\/blog\/archives\/2012\/02\/05\/mysql-ha-reloaded-by-ivan-zoratti","title":{"rendered":"MySQL HA reloaded by Ivan Zoratti"},"content":{"rendered":"<p>MySQL HA reloaded &#8211; old tricks and cool new tools to guarantee high availability to your MySQL Servers by <a href=\"http:\/\/mysql4all.wordpress.com\/\">Ivan Zoratti<\/a> of <a href=\"http:\/\/www.skysql.com\/\">SkySQL<\/a>. This talk is a little longer, so check out: <a href=\"http:\/\/mysql4all.wordpress.com\/2012\/01\/18\/ha-reloaded\/\">HA Reloaded &#8211; many ways to provide High Availability<\/a>. The slides are already online.<\/p>\n<p>Questions to ask: which level of high availability do I need? Do I require no loss of data? Do I need failover or is switchover enough? Can I provide a reasonable service when a component is down? Remember, five nine&#8217;s high availability also means a lot of infrastructure costs.<\/p>\n<p>Other things to clarify: availability vs scalability. HA costs. HA for your entire architecture, not just for your database servers. Review your SLAs.<\/p>\n<p>The best high availability solution today is combined solutions.<\/p>\n<p>MySQL replication &#8211; asynchronous &amp; semi-synchronous (lots of people use MySQL 5.5, about 4 people in room were on Percona Server &#8211; question asked due to semi-sync replication only being available in 5.5 &amp; greater), there are pros &amp; cons of row based replication vs statement based replication.<\/p>\n<p>MySQL Replication via Multi-Master replication Manager (MMM). Features such as monitoring, automatic failover, data backup &amp; resync. Unfortunately, it has some problems with the stability &amp; automatic failover. The project is not improved anymore, so there are other solutions that you should consider today.<\/p>\n<p>MySQL Replication with <a href=\"http:\/\/code.google.com\/p\/mysql-master-ha\/\">MHA<\/a> is a preferred solution. Something to consider: &#8211;read-only=1 and log-bin on slaves. Master IP failover. FIltering rules. Multi-tier replication.<\/p>\n<p>Tungsten Replicator &#8211; open source, heterogenous replication. Truly multi-master and fan-in with Global ID. Per-schema multi-thread. You can also use it to replicate to Postgresql, Oracle and other databases. There is also Tungsten Enterprise.<\/p>\n<p>Synchronous replication with DRBD is typical for active\/standby environments. People don&#8217;t really like this because they feel that there is a server doing nothing. You can always do it active\/passive. It works with InnoDB only.<\/p>\n<p>Synchronous replication with Galera works for InnoDB. Its multi-master with no SPOF. Its new\/young technology so you may find some issues with it. Application failover must be managed, but the conflict resolution is quite tricky (when you commit a transaction you might be fine, but you may have transactions that are removed due to conflicts).<\/p>\n<p>There is a commercial SchoonerSQL that provides synchronous master-slave replication for InnoDB. Its defined explicitly as a master-slave solution.<\/p>\n<p>Active\/Passive clusters using Shared Storage. Points to consider are the fact that redundancy &amp; replication must be guaranteed by the shared storage. InnoDB only. What about filesystems?<\/p>\n<p>Virtualized environments &#8211; data storage, high availability &amp; load balancing are provided and managed by the virtualized software. The faults are handled by the software, not the database.<\/p>\n<p>There is also geographical replication for disaster recovery, having a master-master asynchronous replication is used to update the backup data centre. There is also storage snapshots for disaster recovery (not-specific to MySQL, its storage systems based, use only InnoDB).<\/p>\n<p>There is also MySQL Cluster but there is another presentation about this later at FOSDEM. Very nice closing slide, &#8220;The absolutely necessary comparison chart&#8221; which some may disagree, but Ivan thinks is the best way forward.<\/p>\n<div class=\"sharedaddy sd-sharing-enabled\"><div class=\"robots-nocontent sd-block sd-social sd-social-icon-text sd-sharing\"><h3 class=\"sd-title\">Share this:<\/h3><div class=\"sd-content\"><ul><li class=\"share-email\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"\" class=\"share-email sd-button share-icon\" href=\"mailto:?subject=%5BShared%20Post%5D%20MySQL%20HA%20reloaded%20by%20Ivan%20Zoratti&body=http%3A%2F%2Fwww.bytebot.net%2Fblog%2Farchives%2F2012%2F02%2F05%2Fmysql-ha-reloaded-by-ivan-zoratti&share=email\" target=\"_blank\" title=\"Click to email a link to a friend\" data-email-share-error-title=\"Do you have email set up?\" data-email-share-error-text=\"If you&#039;re having problems sharing via email, you might not have email set up for your browser. You may need to create a new email yourself.\" data-email-share-nonce=\"c80736d93f\" data-email-share-track-url=\"http:\/\/www.bytebot.net\/blog\/archives\/2012\/02\/05\/mysql-ha-reloaded-by-ivan-zoratti?share=email\"><span>Email<\/span><\/a><\/li><li class=\"share-facebook\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-facebook-2253\" class=\"share-facebook sd-button share-icon\" href=\"http:\/\/www.bytebot.net\/blog\/archives\/2012\/02\/05\/mysql-ha-reloaded-by-ivan-zoratti?share=facebook\" target=\"_blank\" title=\"Click to share on Facebook\" ><span>Facebook<\/span><\/a><\/li><li class=\"share-linkedin\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-linkedin-2253\" class=\"share-linkedin sd-button share-icon\" href=\"http:\/\/www.bytebot.net\/blog\/archives\/2012\/02\/05\/mysql-ha-reloaded-by-ivan-zoratti?share=linkedin\" target=\"_blank\" title=\"Click to share on LinkedIn\" ><span>LinkedIn<\/span><\/a><\/li><li class=\"share-twitter\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-twitter-2253\" class=\"share-twitter sd-button share-icon\" href=\"http:\/\/www.bytebot.net\/blog\/archives\/2012\/02\/05\/mysql-ha-reloaded-by-ivan-zoratti?share=twitter\" target=\"_blank\" title=\"Click to share on Twitter\" ><span>Twitter<\/span><\/a><\/li><li class=\"share-end\"><\/li><\/ul><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>MySQL HA reloaded &#8211; old tricks and cool new tools to guarantee high availability to your MySQL Servers by Ivan Zoratti of SkySQL. This talk is a little longer, so check out: HA Reloaded &#8211; many ways to provide High Availability. The slides are already online. Questions to ask: which level of high availability do [&hellip;]<\/p>\n<div class=\"sharedaddy sd-sharing-enabled\"><div class=\"robots-nocontent sd-block sd-social sd-social-icon-text sd-sharing\"><h3 class=\"sd-title\">Share this:<\/h3><div class=\"sd-content\"><ul><li class=\"share-email\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"\" class=\"share-email sd-button share-icon\" href=\"mailto:?subject=%5BShared%20Post%5D%20MySQL%20HA%20reloaded%20by%20Ivan%20Zoratti&body=http%3A%2F%2Fwww.bytebot.net%2Fblog%2Farchives%2F2012%2F02%2F05%2Fmysql-ha-reloaded-by-ivan-zoratti&share=email\" target=\"_blank\" title=\"Click to email a link to a friend\" data-email-share-error-title=\"Do you have email set up?\" data-email-share-error-text=\"If you&#039;re having problems sharing via email, you might not have email set up for your browser. You may need to create a new email yourself.\" data-email-share-nonce=\"c80736d93f\" data-email-share-track-url=\"http:\/\/www.bytebot.net\/blog\/archives\/2012\/02\/05\/mysql-ha-reloaded-by-ivan-zoratti?share=email\"><span>Email<\/span><\/a><\/li><li class=\"share-facebook\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-facebook-2253\" class=\"share-facebook sd-button share-icon\" href=\"http:\/\/www.bytebot.net\/blog\/archives\/2012\/02\/05\/mysql-ha-reloaded-by-ivan-zoratti?share=facebook\" target=\"_blank\" title=\"Click to share on Facebook\" ><span>Facebook<\/span><\/a><\/li><li class=\"share-linkedin\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-linkedin-2253\" class=\"share-linkedin sd-button share-icon\" href=\"http:\/\/www.bytebot.net\/blog\/archives\/2012\/02\/05\/mysql-ha-reloaded-by-ivan-zoratti?share=linkedin\" target=\"_blank\" title=\"Click to share on LinkedIn\" ><span>LinkedIn<\/span><\/a><\/li><li class=\"share-twitter\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-twitter-2253\" class=\"share-twitter sd-button share-icon\" href=\"http:\/\/www.bytebot.net\/blog\/archives\/2012\/02\/05\/mysql-ha-reloaded-by-ivan-zoratti?share=twitter\" target=\"_blank\" title=\"Click to share on Twitter\" ><span>Twitter<\/span><\/a><\/li><li class=\"share-end\"><\/li><\/ul><\/div><\/div><\/div>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true,"jetpack_social_options":[]},"categories":[23],"tags":[1332,1337,1775,1338],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p4vJD-Al","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":3084,"url":"http:\/\/www.bytebot.net\/blog\/archives\/2015\/07\/08\/perconalive-amsterdam-schedule-now-out","url_meta":{"origin":2253,"position":0},"title":"#PerconaLive Amsterdam &#8211; schedule now out","date":"8\/7\/2015","format":false,"excerpt":"The schedule is out for Percona Live Europe: Amsterdam\u00a0(September 21-23 2015), and you can see it at: https:\/\/www.percona.com\/live\/europe-amsterdam-2015\/program. From MariaDB Corporation\/Foundation, we have 1 tutorial: Best Practices for MySQL High Availability - Colin Charles (MariaDB) And 5 talks: Using Docker for Fast and Easy Testing of MariaDB and MaxScale -\u2026","rel":"","context":"In &quot;MariaDB&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3071,"url":"http:\/\/www.bytebot.net\/blog\/archives\/2015\/05\/11\/upcoming-opportunities-to-talk-mysqlmariadb-in-may-2015","url_meta":{"origin":2253,"position":1},"title":"Upcoming opportunities to talk MySQL\/MariaDB in May 2015","date":"11\/5\/2015","format":false,"excerpt":"May is quickly shaping up to be a month filled with activity in the MySQL\/MariaDB space. Just a quick note to talk about where I'll be; looking forward to meet folk to talk shop.\u00a0The London MySQL Meetup Group - May 13 2015 - organized by former colleague & friend Ivan\u2026","rel":"","context":"In &quot;MariaDB&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2806,"url":"http:\/\/www.bytebot.net\/blog\/archives\/2013\/10\/04\/upcoming-mariadbmysql-events-tokyo-buenos-aires","url_meta":{"origin":2253,"position":2},"title":"Upcoming MariaDB\/MySQL events: Tokyo, Buenos Aires","date":"4\/10\/2013","format":false,"excerpt":"To bring to attention those who will be in Tokyo, Japan or Buenos Aires, Argentina: MariaDB\/MySQL Community Event - 9 October 2013 - Tokyo, Japan. Come see Michael Carney, Ivan Zoratti, Kentoku Shiba (creator of the SPIDER storage engine) and Colin Charles at this event. It is from 12.30pm -\u2026","rel":"","context":"In &quot;MariaDB&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2693,"url":"http:\/\/www.bytebot.net\/blog\/archives\/2013\/04\/12\/upcoming-talks-in-santa-clara","url_meta":{"origin":2253,"position":3},"title":"Upcoming talks in Santa Clara","date":"12\/4\/2013","format":false,"excerpt":"I'm planning my calendar and thought I'd share what talks I'd be giving in Santa Clara in a couple of weeks for the Percona Live MySQL Conference & Expo 2013 and the\u00a0MySQL & Cloud Database Solutions Day 2013. Its going to be a busy April 22-26 2013. MariaDB Cassandra Interoperability\u2026","rel":"","context":"In &quot;MariaDB&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2865,"url":"http:\/\/www.bytebot.net\/blog\/archives\/2014\/02\/01\/percona-live-mysql-conference-expo-santa-clara-2014","url_meta":{"origin":2253,"position":4},"title":"Percona Live MySQL Conference &#038; Expo Santa Clara 2014","date":"1\/2\/2014","format":false,"excerpt":"I'm looking forward to being at Percona Live Santa Clara 2014 later this year (April 1-4 2014). You should definitely register now. Early bird ends soon, and if you're looking for a discount, here's a 10% discount code -\u00a0SeeMeSpeak.\u00a0 SkySQL will have a booth. I'm hoping the DotOrg Pavillions continue,\u2026","rel":"","context":"In &quot;MariaDB&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2143,"url":"http:\/\/www.bytebot.net\/blog\/archives\/2011\/05\/26\/the-skysql-reference-architecture","url_meta":{"origin":2253,"position":5},"title":"The SkySQL Reference Architecture","date":"26\/5\/2011","format":false,"excerpt":"I have a bunch of notes from the O'Reilly MySQL Conference & Expo 2011, and I figure its about time I started blogging it. These are notes from the panel on the SkySQL Reference Architecture, led by Kaj Arno and Ivan Zoratti. The notes are raw (read their FAQ for\u2026","rel":"","context":"In &quot;MariaDB&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"amp_enabled":true,"_links":{"self":[{"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/posts\/2253"}],"collection":[{"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/comments?post=2253"}],"version-history":[{"count":4,"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/posts\/2253\/revisions"}],"predecessor-version":[{"id":2277,"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/posts\/2253\/revisions\/2277"}],"wp:attachment":[{"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/media?parent=2253"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/categories?post=2253"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/tags?post=2253"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}