120 likes | 248 Views
Top considerations for backup of MySQL. Dmitri Joukovski, Zmanda. Why do you need to backup MySQL? . Disaster recovery Compliance requirements Protecting against user error Application testing. What are your recovery objectives?. To what point in time do you want to recover your database?
E N D
Top considerations for backup of MySQL • Dmitri Joukovski, Zmanda
Why do you need to backup MySQL? • Disaster recovery • Compliance requirements • Protecting against user error • Application testing
What are your recovery objectives? • To what point in time do you want to recover your database? • Recovery Point Objective (RPO) • How much time will you have to recover your database? • Recovery Time Objective (RTO)
Be ready for different types of recovery • The whole server • Specific database • Specific table • Specific transactions
Easy recovery = successful recovery • Make a list of possible recovery situations • Original location • New hardware and same OS and MySQL version • New hardware and different OS • Test all of them • Actual recoveries happen under stress
How much backup will impact your application? • Backup window – the amount of time your application is unavailable or degraded • Cold, warm and hot backup • Size of database • Database activity • Business requirements • Plan for backup early on Define your backup window
Do you know what to backup? • Number of MySQL servers • Storage engines (don’t forget about the future) • Use of MySQL replication • Pay special attention to: • Referential integrity • MySQL versions being used • Application might store data outside of MySQL
What is the best time to backup? • Database activity • Is there a time database is less active? • Nature of activity (selects, inserts/updates) • Postpone backup if database is busy • Where do you want to backup? • Not on the same spindles!
How do you manage backups? • Automation • Pre-backup and post-backup • Security • Encryption • Who has the rights to recover data • technical and business rights
What kind of tracking and reporting you need? • Timely notifications • Backup failures • Reports about backups • Retention period of your backups • Defines how much space you need • Purging expired backups
What are the available solutions? • Write your own script • Pay $300 for MySQL recommended solution – Zmanda Recovery Manager
Takeaways • Think about recovery first and be ready for different types of recovery • Understand impact of backup on your application • Figure out what, where and when to backup • Notifications and reports will simplify your backup procedures and ensure successful recoveries