Scaling your App with MySQL Replication

  • 1,586 views
Uploaded on

Brief introduction to using MySQL Replication to scale your application

Brief introduction to using MySQL Replication to scale your application

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,586
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
19
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide




























Transcript

  • 1. Scaling with MySQL Replication Simon McCartney simon@mccartney.ie @simonmcc
  • 2. MySQL • MySQL - the M in the LAMP stack • open source • flexible • multi-user • multi-engine • I’m going to talk primarily about 5.0.50ish
  • 3. What are you trying to solve? • bottle neck? • read or write? • location • availability?
  • 4. MySQL Replication • Increase select query capacity • Improve data localilty for multi-site environments • Categorise & Prioritise Queries • Bring unknown weirdness
  • 5. How? • Queries get • tagged with the origin server-id • added to the bin-log • Slave pulls bin-logs, executes queries • also adds to local bin-log
  • 6. Master/Slave MySQL MySQL MySQL query replication MySQL MySQL Master Slave Slave Slave Slave Writes Reads App
  • 7. Master/Master query replication MySQL MySQL Master Master query replication read & write read & write App
  • 8. Hub & Spoke
  • 9. I have multiple database servers, now what? • select servers at app level • proxy (MySQL Proxy, Zeus ZXTM) • Round Robin DNS
  • 10. Gotchas • Replication - running & lag? • binlog retention • don’t replicate certain commands
  • 11. Tools • live topology diagram (perl, GraphViz) • server weighting (memcached & app/proxy) • scripted reseed you’ll do this more often than you expect also handy for building staging/sandboxes
  • 12. each node here is You can MySQL get really instance crazy
  • 13. Pretty Pictures communicate issues quicker
  • 14. Thank you for listening!