SlideShare a Scribd company logo
1 of 23
Download to read offline
DATABASEDATABASE
BACKUP AND RECOVERYBACKUP AND RECOVERY
By - Soumya Dash
Session Overview
When do we need backups?
What needs to be backed up?
When should backups be performed?
Where will the backups be stored?
How can backups be performed?
Restoring from backups
Backup strategy
Backup – Why do it?
● In business today,'You are your data'
● Lose data,lose business
● Lost productivity, customer relationships,etc
Types of Backup
● Logical backup
● Physical backup
● Local backup
● Remote backup
● Full backup
● Incremental backup
When do we need backup?
● Hardware Failures
– A system crash may cause some of the data in the database to be lost.
– Hardware failure leads to data loss.
● User/Application Failure
– Accidental DROP or DELETE statements
– Editing table files with text editors,usually leading to
corrupt tables.
What needs to be backed up?
● Database content
– For full backups
– Logical or physical backup
● Log files
– For incremental backups
– Point in time recovery
● Configuration information
– /etc/my.cnf
– Cron jobs
When should backups be performed?
● On a regular basis
● Not during high usage peaks(off hours)
● Static data can be backed up less frequently
● Schedule it at particular time intervals
Where to store backup?
● On the database server
On a separate file system/volume or hard disk drive
● Copied to another server
On or off site
Cloud storage
● Backed up to tape/disk
● Choose multiple locations
Database Backup Methods
● Backup programs
Mysqldump
Mysqlhotcopy
● Copying table files (*.frm, *.MYD, and *.MYI files)
● Delimited-Text files
● Incremental Backups using Binary Log
● Backups using Replication Slaves
Using mysqldump for backups
Mysqldump is a backup program originally written by Igor Romanenko.
Used to dump a database or a collection of databases for backup or transfer to
another server(not necessarily MySQL).
Mysqldump writes SQL statements to the standard output.
This output consists of CREATE statements to create dumped objects (databases,
tables, stored routines etc) and INSERT statements to load data into tables.
The output can be saved in a file and reloaded later using mysql to recreate the
dumped objects.
Options are available to modify the format of the SQL statements, and to control
which objects are dumped.
Generates files in CSV, other delimited text, or XML format also.
Backup using mysqldump
Set of one or more tables
$ mysqldump -u [uname] -p[pass] db_name table1 > table_backup.sql
$ mysqldump -u [uname] -p[pass] db_name table1 table2 > table_backup.sql
Set of one or more complete databases
$ mysqldump -u [uname] -p[pass] db_name1 db_name2 > db_backup.sql
All databases
$ mysqldump -u [uname] -p[pass] –all-databases > all_db_backup.sql
An entire MySQL
$ mysqldump -u [uname] -p[pass] db_name > db_backup.sql
Copying data from one server to another
$ mysqldump --opt db_name |mysql –host = remote_host -C db_name
Auto-compressing the output using gzip
$ mysqldump -u [uname] -p[pass] db_name | gzip > db_backup.sql.gz
Remote Backup
$ mysqldump -P 3306 -h [ip_address] -u [uname] -p[pass] db_name > db_backup.sql
Restore backup from mysqldump
● Create a database on the target machine
● Load the file using the mysql command:
$ mysql -u [uname] -p[pass] [db_to_restore] < [backupfile.sql]
● To restore to an existing database
$ mysqlimport -u [uname] -p[pass] [dbname] < [backupfile.sql]
Making delimited text file backups
● This method saves only table data, not the table structure.
● Writes the selected rows to a file on the server host
Syntax
SELECT * INTO OUTFILE 'file_name' FROM tbl_name
● Example of file in the comma-separated values (CSV) format
SELECT a,b,a+b INTO OUTFILE '/tmp/result.txt' FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY 'n' FROM table;
Making Incremental Backups by Enabling the Binary Log
● By default, the server creates binary log files in the data directory.
● The binary log files provide you with the information you need to replicate changes to
the database that are made subsequent to the point at which you performed a
backup.
● To see a listing of all binary log files
mysql> SHOW BINARY LOGS;
● An incremental backup only backs up data that changed since the previous backup.
● Start the server with the --log-bin option to enable binary logging.
● mysqlbinlog utility converts the events in the binary log files from binary format to text
so that they can be executed or viewed. mysqlbinlog has options for selecting
sections of the binary log based on event times or position of events within the log.
● Copy to the backup location,all binary logs from the moment the last backup was
taken to the last but one.
Enable binary logging
Configure mysql to do binary logging.
Edit : /etc/mysql/my.cnf:
Add : log-bin = mybinlog
Specify which databases to do binary logging for, or which databases NOT to do binary
logging for.
1) “binlog_do_db” turns binary logging on for a given database.
binlog_do_db = mydb
2) “binlog_ignore_db” turns binary logging on for all databases except the database(s)
names.
binlog_ignore_db = mydb
Restart mysql server.
Restore from binary logs
● Go to the folder where mysqlbinlog utility is placed and convert binary log file into
sql
C:xamppmysqlbin>mysqlbinlog C:xamppmysqldatabinlogbin-log.000001 >
sql.txt
● Directly execute sql on the database
C:xamppmysqlbin>mysqlbinlog C:xamppmysqldatabinlogbin-log.000001 |
mysql -u root -p
● Specify specific duration to extract sql
C:xamppmysqlbin>mysqlbinlog --start-datetime="2014-06-01 10:31:44"
C:xamppmysqldatabinlogbin-log.000001 > sql.txt
This will extract sql after the date of 2014-06-01 10:31:44.
Point In Time Recovery using binary logs
1) Point-in-Time Recovery Using Event Times
C:xamppmysqlbin>mysqlbinlog --start-datetime="2014-05-27 10:01:00"
C:xamppmysqldatabinlogbin-log.000001 | mysql -u root -p
C:xamppmysqlbin>mysqlbinlog --stop-datetime="2014-05-27 9:59:59"
C:xamppmysqldatabinlogbin-log.000001 | mysql -u root -p
2) Point-in-Time Recovery Using Event Position
C:xamppmysqlbin>mysqlbinlog --stop-position=368312
C:xamppmysqldatabinlogbin-log.000001 | mysql -u root -p
C:xamppmysqlbin>mysqlbinlog --start-position=368315
C:xamppmysqldatabinlogbin-log.000001 | mysql -u root -p
Making Backups Using Replication Slaves
● Used when there are performance problems with your master server while making
backups.
● Set up replication and perform backups on the slave rather than on the master.
● Put the master server db in a read-only state by executing these statements:
mysql> FLUSH TABLES WITH READ LOCK;
mysql> SET GLOBAL read_only = ON;
● While Master is read only, perform the backup using mysqldump.
● Restore Master to its normal operational state by executing these statements:
mysql> SET GLOBAL read_only = OFF;
mysql> UNLOCK TABLES;
Recovering from Backups
● Restoring tables to the state before a crash requires both the backup files and the
binary log.
Backup files restore the table to the state they were at the time of
backup.
The synchronised binary logs are used to extract queries issued between
the backup and now.
● If recovering data lost due to unwise queries,dont issue them again.
DB Recovery = Last full backup & binlogs
Recovering from Corrupt tables
● Bring the database in recovery mode
Shut down incase it's still running
Add innodb_force_recovery=1 to my.cnf
Change the port from 3306 to some random value.
● Check for the corrupt tables using mysqlcheck –all-databases
● Backup and drop corrupted tables using mysqldump
● Restart mysql in normal mode without changing the port
● Import the backup file
● Change port
Backup Strategy
Perform backups regularly and frequently
Performing Backups Before and After You Make Structural Changes
Turn on the binary update log
Synchronise update logs with the backup files
Store the backups on a different file system than where your databases are
Make periodic full backups, using the mysqldump command
Make periodic incremental backups by flushing the logs
Scheduling backups
Choose the right storage platform for backups
References
● http://dev.mysql.com/doc/refman/5.6/en
● http://www.techflirt.com/
● http://planet.mysql.com/
THANK YOU

More Related Content

What's hot

Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기NeoClova
 
Histogram-in-Parallel-universe-of-MySQL-and-MariaDB
Histogram-in-Parallel-universe-of-MySQL-and-MariaDBHistogram-in-Parallel-universe-of-MySQL-and-MariaDB
Histogram-in-Parallel-universe-of-MySQL-and-MariaDBMydbops
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability SolutionsMydbops
 
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법Ji-Woong Choi
 
[2018] MySQL 이중화 진화기
[2018] MySQL 이중화 진화기[2018] MySQL 이중화 진화기
[2018] MySQL 이중화 진화기NHN FORWARD
 
Database replication
Database replicationDatabase replication
Database replicationArslan111
 
MariaDB Server Performance Tuning & Optimization
MariaDB Server Performance Tuning & OptimizationMariaDB Server Performance Tuning & Optimization
MariaDB Server Performance Tuning & OptimizationMariaDB plc
 
BACKUP & RECOVERY IN DBMS
BACKUP & RECOVERY IN DBMSBACKUP & RECOVERY IN DBMS
BACKUP & RECOVERY IN DBMSBaivabiNayak
 
MySQL Administrator 2021 - 네오클로바
MySQL Administrator 2021 - 네오클로바MySQL Administrator 2021 - 네오클로바
MySQL Administrator 2021 - 네오클로바NeoClova
 
MySQL Architecture and Engine
MySQL Architecture and EngineMySQL Architecture and Engine
MySQL Architecture and EngineAbdul Manaf
 
Database performance tuning and query optimization
Database performance tuning and query optimizationDatabase performance tuning and query optimization
Database performance tuning and query optimizationDhani Ahmad
 
Rman Presentation
Rman PresentationRman Presentation
Rman PresentationRick van Ek
 
Database backup & recovery
Database backup & recoveryDatabase backup & recovery
Database backup & recoveryMustafa Khan
 
Redo log improvements MYSQL 8.0
Redo log improvements MYSQL 8.0Redo log improvements MYSQL 8.0
Redo log improvements MYSQL 8.0Mydbops
 
MySQL Atchitecture and Concepts
MySQL Atchitecture and ConceptsMySQL Atchitecture and Concepts
MySQL Atchitecture and ConceptsTuyen Vuong
 
Backup & recovery with rman
Backup & recovery with rmanBackup & recovery with rman
Backup & recovery with rmanitsabidhussain
 
Optimizing MariaDB for maximum performance
Optimizing MariaDB for maximum performanceOptimizing MariaDB for maximum performance
Optimizing MariaDB for maximum performanceMariaDB plc
 
MySQL Space Management
MySQL Space ManagementMySQL Space Management
MySQL Space ManagementMIJIN AN
 

What's hot (20)

Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기
 
Histogram-in-Parallel-universe-of-MySQL-and-MariaDB
Histogram-in-Parallel-universe-of-MySQL-and-MariaDBHistogram-in-Parallel-universe-of-MySQL-and-MariaDB
Histogram-in-Parallel-universe-of-MySQL-and-MariaDB
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability Solutions
 
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
 
[2018] MySQL 이중화 진화기
[2018] MySQL 이중화 진화기[2018] MySQL 이중화 진화기
[2018] MySQL 이중화 진화기
 
Database replication
Database replicationDatabase replication
Database replication
 
MariaDB Server Performance Tuning & Optimization
MariaDB Server Performance Tuning & OptimizationMariaDB Server Performance Tuning & Optimization
MariaDB Server Performance Tuning & Optimization
 
BACKUP & RECOVERY IN DBMS
BACKUP & RECOVERY IN DBMSBACKUP & RECOVERY IN DBMS
BACKUP & RECOVERY IN DBMS
 
MySQL Administrator 2021 - 네오클로바
MySQL Administrator 2021 - 네오클로바MySQL Administrator 2021 - 네오클로바
MySQL Administrator 2021 - 네오클로바
 
MySQL Architecture and Engine
MySQL Architecture and EngineMySQL Architecture and Engine
MySQL Architecture and Engine
 
Database performance tuning and query optimization
Database performance tuning and query optimizationDatabase performance tuning and query optimization
Database performance tuning and query optimization
 
Rman Presentation
Rman PresentationRman Presentation
Rman Presentation
 
Database System Architecture
Database System ArchitectureDatabase System Architecture
Database System Architecture
 
MS-SQL SERVER ARCHITECTURE
MS-SQL SERVER ARCHITECTUREMS-SQL SERVER ARCHITECTURE
MS-SQL SERVER ARCHITECTURE
 
Database backup & recovery
Database backup & recoveryDatabase backup & recovery
Database backup & recovery
 
Redo log improvements MYSQL 8.0
Redo log improvements MYSQL 8.0Redo log improvements MYSQL 8.0
Redo log improvements MYSQL 8.0
 
MySQL Atchitecture and Concepts
MySQL Atchitecture and ConceptsMySQL Atchitecture and Concepts
MySQL Atchitecture and Concepts
 
Backup & recovery with rman
Backup & recovery with rmanBackup & recovery with rman
Backup & recovery with rman
 
Optimizing MariaDB for maximum performance
Optimizing MariaDB for maximum performanceOptimizing MariaDB for maximum performance
Optimizing MariaDB for maximum performance
 
MySQL Space Management
MySQL Space ManagementMySQL Space Management
MySQL Space Management
 

Viewers also liked

MySQL Server Backup, Restoration, And Disaster Recovery Planning Presentation
MySQL Server Backup, Restoration, And Disaster Recovery Planning PresentationMySQL Server Backup, Restoration, And Disaster Recovery Planning Presentation
MySQL Server Backup, Restoration, And Disaster Recovery Planning PresentationColin Charles
 
MySQL Enterprise Backup & Oracle Secure Backup
MySQL Enterprise Backup &  Oracle Secure BackupMySQL Enterprise Backup &  Oracle Secure Backup
MySQL Enterprise Backup & Oracle Secure BackupSanjay Manwani
 
MySQL Backup and Recovery Essentials
MySQL Backup and Recovery EssentialsMySQL Backup and Recovery Essentials
MySQL Backup and Recovery EssentialsRonald Bradford
 
Backing Up the MySQL Database
Backing Up the MySQL DatabaseBacking Up the MySQL Database
Backing Up the MySQL DatabaseSanjay Manwani
 
Pdb my sql backup london percona live 2012
Pdb my sql backup   london percona live 2012Pdb my sql backup   london percona live 2012
Pdb my sql backup london percona live 2012Pythian
 
Riding the Binlog: an in Deep Dissection of the Replication Stream
Riding the Binlog: an in Deep Dissection of the Replication StreamRiding the Binlog: an in Deep Dissection of the Replication Stream
Riding the Binlog: an in Deep Dissection of the Replication StreamJean-François Gagné
 
MySQL Server Backup, Restoration, and Disaster Recovery Planning
MySQL Server Backup, Restoration, and Disaster Recovery PlanningMySQL Server Backup, Restoration, and Disaster Recovery Planning
MySQL Server Backup, Restoration, and Disaster Recovery PlanningLenz Grimmer
 
Become a MySQL DBA - slides: Deciding on a relevant backup solution
Become a MySQL DBA - slides: Deciding on a relevant backup solutionBecome a MySQL DBA - slides: Deciding on a relevant backup solution
Become a MySQL DBA - slides: Deciding on a relevant backup solutionSeveralnines
 
Rafeeq Rehman - Breaking the Phishing Attack Chain
Rafeeq Rehman - Breaking the Phishing Attack ChainRafeeq Rehman - Breaking the Phishing Attack Chain
Rafeeq Rehman - Breaking the Phishing Attack Chaincentralohioissa
 
Learn PHP MySQL with Project
Learn PHP MySQL with ProjectLearn PHP MySQL with Project
Learn PHP MySQL with Projectayman diab
 
CYBER CRIME PRESENTATION PART 2 BY KRISHNAKNT ARUNKUMAR MISHRA
CYBER CRIME PRESENTATION PART 2 BY KRISHNAKNT ARUNKUMAR MISHRACYBER CRIME PRESENTATION PART 2 BY KRISHNAKNT ARUNKUMAR MISHRA
CYBER CRIME PRESENTATION PART 2 BY KRISHNAKNT ARUNKUMAR MISHRAKrishnakant Mishra
 
Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)Ontico
 
CFMA Cyber Crime Presentation
CFMA Cyber Crime PresentationCFMA Cyber Crime Presentation
CFMA Cyber Crime PresentationSteve Machesney
 

Viewers also liked (20)

MySQL Server Backup, Restoration, And Disaster Recovery Planning Presentation
MySQL Server Backup, Restoration, And Disaster Recovery Planning PresentationMySQL Server Backup, Restoration, And Disaster Recovery Planning Presentation
MySQL Server Backup, Restoration, And Disaster Recovery Planning Presentation
 
MySQL Enterprise Backup & Oracle Secure Backup
MySQL Enterprise Backup &  Oracle Secure BackupMySQL Enterprise Backup &  Oracle Secure Backup
MySQL Enterprise Backup & Oracle Secure Backup
 
MySQL Backup and Recovery Essentials
MySQL Backup and Recovery EssentialsMySQL Backup and Recovery Essentials
MySQL Backup and Recovery Essentials
 
Backing Up the MySQL Database
Backing Up the MySQL DatabaseBacking Up the MySQL Database
Backing Up the MySQL Database
 
Pdb my sql backup london percona live 2012
Pdb my sql backup   london percona live 2012Pdb my sql backup   london percona live 2012
Pdb my sql backup london percona live 2012
 
Riding the Binlog: an in Deep Dissection of the Replication Stream
Riding the Binlog: an in Deep Dissection of the Replication StreamRiding the Binlog: an in Deep Dissection of the Replication Stream
Riding the Binlog: an in Deep Dissection of the Replication Stream
 
MySQL Server Backup, Restoration, and Disaster Recovery Planning
MySQL Server Backup, Restoration, and Disaster Recovery PlanningMySQL Server Backup, Restoration, and Disaster Recovery Planning
MySQL Server Backup, Restoration, and Disaster Recovery Planning
 
Become a MySQL DBA - slides: Deciding on a relevant backup solution
Become a MySQL DBA - slides: Deciding on a relevant backup solutionBecome a MySQL DBA - slides: Deciding on a relevant backup solution
Become a MySQL DBA - slides: Deciding on a relevant backup solution
 
10135 b 08
10135 b 0810135 b 08
10135 b 08
 
Rafeeq Rehman - Breaking the Phishing Attack Chain
Rafeeq Rehman - Breaking the Phishing Attack ChainRafeeq Rehman - Breaking the Phishing Attack Chain
Rafeeq Rehman - Breaking the Phishing Attack Chain
 
Mysql
MysqlMysql
Mysql
 
Learn PHP MySQL with Project
Learn PHP MySQL with ProjectLearn PHP MySQL with Project
Learn PHP MySQL with Project
 
Apache
ApacheApache
Apache
 
MySQL database
MySQL databaseMySQL database
MySQL database
 
CYBER CRIME PRESENTATION PART 2 BY KRISHNAKNT ARUNKUMAR MISHRA
CYBER CRIME PRESENTATION PART 2 BY KRISHNAKNT ARUNKUMAR MISHRACYBER CRIME PRESENTATION PART 2 BY KRISHNAKNT ARUNKUMAR MISHRA
CYBER CRIME PRESENTATION PART 2 BY KRISHNAKNT ARUNKUMAR MISHRA
 
Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)
 
CFMA Cyber Crime Presentation
CFMA Cyber Crime PresentationCFMA Cyber Crime Presentation
CFMA Cyber Crime Presentation
 
Automated master failover
Automated master failoverAutomated master failover
Automated master failover
 
FBI Cybercrime Presentation
FBI Cybercrime PresentationFBI Cybercrime Presentation
FBI Cybercrime Presentation
 
Xampp Ppt
Xampp PptXampp Ppt
Xampp Ppt
 

Similar to MySQL Backup & Recovery

MySQL for Oracle DBAs
MySQL for Oracle DBAsMySQL for Oracle DBAs
MySQL for Oracle DBAsMark Leith
 
7. backup & restore data
7. backup & restore data7. backup & restore data
7. backup & restore dataTrần Thanh
 
[Altibase] 13 backup and recovery
[Altibase] 13 backup and recovery[Altibase] 13 backup and recovery
[Altibase] 13 backup and recoveryaltistory
 
Percona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient BackupsPercona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient BackupsMydbops
 
Data Guard New Features
Data Guard New FeaturesData Guard New Features
Data Guard New Featuresxiangrong
 
MySQL Enterprise Backup (MEB)
MySQL Enterprise Backup (MEB)MySQL Enterprise Backup (MEB)
MySQL Enterprise Backup (MEB)Mydbops
 
All types of backups and restore
All types of backups and restoreAll types of backups and restore
All types of backups and restoreVasudeva Rao
 
Les 06 Perform Rec
Les 06 Perform RecLes 06 Perform Rec
Les 06 Perform Recvivaankumar
 
Les 05 Create Bu
Les 05 Create BuLes 05 Create Bu
Les 05 Create Buvivaankumar
 
Upgrade to MySQL 5.6 without downtime
Upgrade to MySQL 5.6 without downtimeUpgrade to MySQL 5.6 without downtime
Upgrade to MySQL 5.6 without downtimeOlivier DASINI
 
Loadays MySQL
Loadays MySQLLoadays MySQL
Loadays MySQLlefredbe
 
Restore MySQL database from mysqlbackup
Restore MySQL database from mysqlbackup Restore MySQL database from mysqlbackup
Restore MySQL database from mysqlbackup AllDatabaseSolutions
 
Highly efficient backups with percona xtrabackup
Highly efficient backups with percona xtrabackupHighly efficient backups with percona xtrabackup
Highly efficient backups with percona xtrabackupNilnandan Joshi
 
Oracle 12c New Features_RMAN_slides
Oracle 12c New Features_RMAN_slidesOracle 12c New Features_RMAN_slides
Oracle 12c New Features_RMAN_slidesSaiful
 
Training Slides: 203 - Backup & Recovery
Training Slides: 203 - Backup & RecoveryTraining Slides: 203 - Backup & Recovery
Training Slides: 203 - Backup & RecoveryContinuent
 
24 HOP edición Español - Sql server 2014 backup encryption - Percy Reyes
24 HOP edición Español - Sql server 2014 backup encryption - Percy Reyes24 HOP edición Español - Sql server 2014 backup encryption - Percy Reyes
24 HOP edición Español - Sql server 2014 backup encryption - Percy ReyesSpanishPASSVC
 
Zararfa SummerCamp 2012 - Performing fast backups in large scale environments...
Zararfa SummerCamp 2012 - Performing fast backups in large scale environments...Zararfa SummerCamp 2012 - Performing fast backups in large scale environments...
Zararfa SummerCamp 2012 - Performing fast backups in large scale environments...Zarafa
 

Similar to MySQL Backup & Recovery (20)

MySQL for Oracle DBAs
MySQL for Oracle DBAsMySQL for Oracle DBAs
MySQL for Oracle DBAs
 
7. backup & restore data
7. backup & restore data7. backup & restore data
7. backup & restore data
 
[Altibase] 13 backup and recovery
[Altibase] 13 backup and recovery[Altibase] 13 backup and recovery
[Altibase] 13 backup and recovery
 
Percona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient BackupsPercona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient Backups
 
Les 07 rman_rec
Les 07 rman_recLes 07 rman_rec
Les 07 rman_rec
 
Data Guard New Features
Data Guard New FeaturesData Guard New Features
Data Guard New Features
 
Mydumper
MydumperMydumper
Mydumper
 
MySQL Enterprise Backup (MEB)
MySQL Enterprise Backup (MEB)MySQL Enterprise Backup (MEB)
MySQL Enterprise Backup (MEB)
 
All types of backups and restore
All types of backups and restoreAll types of backups and restore
All types of backups and restore
 
Xpp c user_rec
Xpp c user_recXpp c user_rec
Xpp c user_rec
 
Les 06 Perform Rec
Les 06 Perform RecLes 06 Perform Rec
Les 06 Perform Rec
 
Les 05 Create Bu
Les 05 Create BuLes 05 Create Bu
Les 05 Create Bu
 
Upgrade to MySQL 5.6 without downtime
Upgrade to MySQL 5.6 without downtimeUpgrade to MySQL 5.6 without downtime
Upgrade to MySQL 5.6 without downtime
 
Loadays MySQL
Loadays MySQLLoadays MySQL
Loadays MySQL
 
Restore MySQL database from mysqlbackup
Restore MySQL database from mysqlbackup Restore MySQL database from mysqlbackup
Restore MySQL database from mysqlbackup
 
Highly efficient backups with percona xtrabackup
Highly efficient backups with percona xtrabackupHighly efficient backups with percona xtrabackup
Highly efficient backups with percona xtrabackup
 
Oracle 12c New Features_RMAN_slides
Oracle 12c New Features_RMAN_slidesOracle 12c New Features_RMAN_slides
Oracle 12c New Features_RMAN_slides
 
Training Slides: 203 - Backup & Recovery
Training Slides: 203 - Backup & RecoveryTraining Slides: 203 - Backup & Recovery
Training Slides: 203 - Backup & Recovery
 
24 HOP edición Español - Sql server 2014 backup encryption - Percy Reyes
24 HOP edición Español - Sql server 2014 backup encryption - Percy Reyes24 HOP edición Español - Sql server 2014 backup encryption - Percy Reyes
24 HOP edición Español - Sql server 2014 backup encryption - Percy Reyes
 
Zararfa SummerCamp 2012 - Performing fast backups in large scale environments...
Zararfa SummerCamp 2012 - Performing fast backups in large scale environments...Zararfa SummerCamp 2012 - Performing fast backups in large scale environments...
Zararfa SummerCamp 2012 - Performing fast backups in large scale environments...
 

More from Mindfire Solutions (20)

Physician Search and Review
Physician Search and ReviewPhysician Search and Review
Physician Search and Review
 
diet management app
diet management appdiet management app
diet management app
 
Business Technology Solution
Business Technology SolutionBusiness Technology Solution
Business Technology Solution
 
Remote Health Monitoring
Remote Health MonitoringRemote Health Monitoring
Remote Health Monitoring
 
Influencer Marketing Solution
Influencer Marketing SolutionInfluencer Marketing Solution
Influencer Marketing Solution
 
ELMAH
ELMAHELMAH
ELMAH
 
High Availability of Azure Applications
High Availability of Azure ApplicationsHigh Availability of Azure Applications
High Availability of Azure Applications
 
IOT Hands On
IOT Hands OnIOT Hands On
IOT Hands On
 
Glimpse of Loops Vs Set
Glimpse of Loops Vs SetGlimpse of Loops Vs Set
Glimpse of Loops Vs Set
 
Oracle Sql Developer-Getting Started
Oracle Sql Developer-Getting StartedOracle Sql Developer-Getting Started
Oracle Sql Developer-Getting Started
 
Adaptive Layout In iOS 8
Adaptive Layout In iOS 8Adaptive Layout In iOS 8
Adaptive Layout In iOS 8
 
Introduction to Auto-layout : iOS/Mac
Introduction to Auto-layout : iOS/MacIntroduction to Auto-layout : iOS/Mac
Introduction to Auto-layout : iOS/Mac
 
LINQPad - utility Tool
LINQPad - utility ToolLINQPad - utility Tool
LINQPad - utility Tool
 
Get started with watch kit development
Get started with watch kit developmentGet started with watch kit development
Get started with watch kit development
 
Swift vs Objective-C
Swift vs Objective-CSwift vs Objective-C
Swift vs Objective-C
 
Material Design in Android
Material Design in AndroidMaterial Design in Android
Material Design in Android
 
Introduction to OData
Introduction to ODataIntroduction to OData
Introduction to OData
 
Ext js Part 2- MVC
Ext js Part 2- MVCExt js Part 2- MVC
Ext js Part 2- MVC
 
ExtJs Basic Part-1
ExtJs Basic Part-1ExtJs Basic Part-1
ExtJs Basic Part-1
 
Spring Security Introduction
Spring Security IntroductionSpring Security Introduction
Spring Security Introduction
 

Recently uploaded

Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastPapp Krisztián
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...masabamasaba
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024Mind IT Systems
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 

Recently uploaded (20)

Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 

MySQL Backup & Recovery

  • 1. DATABASEDATABASE BACKUP AND RECOVERYBACKUP AND RECOVERY By - Soumya Dash
  • 2. Session Overview When do we need backups? What needs to be backed up? When should backups be performed? Where will the backups be stored? How can backups be performed? Restoring from backups Backup strategy
  • 3. Backup – Why do it? ● In business today,'You are your data' ● Lose data,lose business ● Lost productivity, customer relationships,etc
  • 4. Types of Backup ● Logical backup ● Physical backup ● Local backup ● Remote backup ● Full backup ● Incremental backup
  • 5. When do we need backup? ● Hardware Failures – A system crash may cause some of the data in the database to be lost. – Hardware failure leads to data loss. ● User/Application Failure – Accidental DROP or DELETE statements – Editing table files with text editors,usually leading to corrupt tables.
  • 6. What needs to be backed up? ● Database content – For full backups – Logical or physical backup ● Log files – For incremental backups – Point in time recovery ● Configuration information – /etc/my.cnf – Cron jobs
  • 7. When should backups be performed? ● On a regular basis ● Not during high usage peaks(off hours) ● Static data can be backed up less frequently ● Schedule it at particular time intervals
  • 8. Where to store backup? ● On the database server On a separate file system/volume or hard disk drive ● Copied to another server On or off site Cloud storage ● Backed up to tape/disk ● Choose multiple locations
  • 9. Database Backup Methods ● Backup programs Mysqldump Mysqlhotcopy ● Copying table files (*.frm, *.MYD, and *.MYI files) ● Delimited-Text files ● Incremental Backups using Binary Log ● Backups using Replication Slaves
  • 10. Using mysqldump for backups Mysqldump is a backup program originally written by Igor Romanenko. Used to dump a database or a collection of databases for backup or transfer to another server(not necessarily MySQL). Mysqldump writes SQL statements to the standard output. This output consists of CREATE statements to create dumped objects (databases, tables, stored routines etc) and INSERT statements to load data into tables. The output can be saved in a file and reloaded later using mysql to recreate the dumped objects. Options are available to modify the format of the SQL statements, and to control which objects are dumped. Generates files in CSV, other delimited text, or XML format also.
  • 11. Backup using mysqldump Set of one or more tables $ mysqldump -u [uname] -p[pass] db_name table1 > table_backup.sql $ mysqldump -u [uname] -p[pass] db_name table1 table2 > table_backup.sql Set of one or more complete databases $ mysqldump -u [uname] -p[pass] db_name1 db_name2 > db_backup.sql All databases $ mysqldump -u [uname] -p[pass] –all-databases > all_db_backup.sql An entire MySQL $ mysqldump -u [uname] -p[pass] db_name > db_backup.sql Copying data from one server to another $ mysqldump --opt db_name |mysql –host = remote_host -C db_name Auto-compressing the output using gzip $ mysqldump -u [uname] -p[pass] db_name | gzip > db_backup.sql.gz Remote Backup $ mysqldump -P 3306 -h [ip_address] -u [uname] -p[pass] db_name > db_backup.sql
  • 12. Restore backup from mysqldump ● Create a database on the target machine ● Load the file using the mysql command: $ mysql -u [uname] -p[pass] [db_to_restore] < [backupfile.sql] ● To restore to an existing database $ mysqlimport -u [uname] -p[pass] [dbname] < [backupfile.sql]
  • 13. Making delimited text file backups ● This method saves only table data, not the table structure. ● Writes the selected rows to a file on the server host Syntax SELECT * INTO OUTFILE 'file_name' FROM tbl_name ● Example of file in the comma-separated values (CSV) format SELECT a,b,a+b INTO OUTFILE '/tmp/result.txt' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY 'n' FROM table;
  • 14. Making Incremental Backups by Enabling the Binary Log ● By default, the server creates binary log files in the data directory. ● The binary log files provide you with the information you need to replicate changes to the database that are made subsequent to the point at which you performed a backup. ● To see a listing of all binary log files mysql> SHOW BINARY LOGS; ● An incremental backup only backs up data that changed since the previous backup. ● Start the server with the --log-bin option to enable binary logging. ● mysqlbinlog utility converts the events in the binary log files from binary format to text so that they can be executed or viewed. mysqlbinlog has options for selecting sections of the binary log based on event times or position of events within the log. ● Copy to the backup location,all binary logs from the moment the last backup was taken to the last but one.
  • 15. Enable binary logging Configure mysql to do binary logging. Edit : /etc/mysql/my.cnf: Add : log-bin = mybinlog Specify which databases to do binary logging for, or which databases NOT to do binary logging for. 1) “binlog_do_db” turns binary logging on for a given database. binlog_do_db = mydb 2) “binlog_ignore_db” turns binary logging on for all databases except the database(s) names. binlog_ignore_db = mydb Restart mysql server.
  • 16. Restore from binary logs ● Go to the folder where mysqlbinlog utility is placed and convert binary log file into sql C:xamppmysqlbin>mysqlbinlog C:xamppmysqldatabinlogbin-log.000001 > sql.txt ● Directly execute sql on the database C:xamppmysqlbin>mysqlbinlog C:xamppmysqldatabinlogbin-log.000001 | mysql -u root -p ● Specify specific duration to extract sql C:xamppmysqlbin>mysqlbinlog --start-datetime="2014-06-01 10:31:44" C:xamppmysqldatabinlogbin-log.000001 > sql.txt This will extract sql after the date of 2014-06-01 10:31:44.
  • 17. Point In Time Recovery using binary logs 1) Point-in-Time Recovery Using Event Times C:xamppmysqlbin>mysqlbinlog --start-datetime="2014-05-27 10:01:00" C:xamppmysqldatabinlogbin-log.000001 | mysql -u root -p C:xamppmysqlbin>mysqlbinlog --stop-datetime="2014-05-27 9:59:59" C:xamppmysqldatabinlogbin-log.000001 | mysql -u root -p 2) Point-in-Time Recovery Using Event Position C:xamppmysqlbin>mysqlbinlog --stop-position=368312 C:xamppmysqldatabinlogbin-log.000001 | mysql -u root -p C:xamppmysqlbin>mysqlbinlog --start-position=368315 C:xamppmysqldatabinlogbin-log.000001 | mysql -u root -p
  • 18. Making Backups Using Replication Slaves ● Used when there are performance problems with your master server while making backups. ● Set up replication and perform backups on the slave rather than on the master. ● Put the master server db in a read-only state by executing these statements: mysql> FLUSH TABLES WITH READ LOCK; mysql> SET GLOBAL read_only = ON; ● While Master is read only, perform the backup using mysqldump. ● Restore Master to its normal operational state by executing these statements: mysql> SET GLOBAL read_only = OFF; mysql> UNLOCK TABLES;
  • 19. Recovering from Backups ● Restoring tables to the state before a crash requires both the backup files and the binary log. Backup files restore the table to the state they were at the time of backup. The synchronised binary logs are used to extract queries issued between the backup and now. ● If recovering data lost due to unwise queries,dont issue them again. DB Recovery = Last full backup & binlogs
  • 20. Recovering from Corrupt tables ● Bring the database in recovery mode Shut down incase it's still running Add innodb_force_recovery=1 to my.cnf Change the port from 3306 to some random value. ● Check for the corrupt tables using mysqlcheck –all-databases ● Backup and drop corrupted tables using mysqldump ● Restart mysql in normal mode without changing the port ● Import the backup file ● Change port
  • 21. Backup Strategy Perform backups regularly and frequently Performing Backups Before and After You Make Structural Changes Turn on the binary update log Synchronise update logs with the backup files Store the backups on a different file system than where your databases are Make periodic full backups, using the mysqldump command Make periodic incremental backups by flushing the logs Scheduling backups Choose the right storage platform for backups