Mysql
 sql >> Database >  >> RDS >> Mysql

Come posso creare backup incrementali di database MySQL

Un modo hacky potrebbe essere, una volta che hai preso il database completo in un file. confrontarlo con il backup settimanale e archiviare la patch su disco. Quando vuoi recuperare, applica semplicemente diff al backup settimanale e ottieni db completo

Per memorizzare

  mysqldump -u $USERNAME --password=$PASSWORD -h $HOSTNAME -e --opt --skip-lock-tables  --skip-extended-insert -c $DATABASE >hourlyFile
  diff weeklyFile hourlyFile >hourlyFile.patch
  rm hourlyFile

Per recuperare:

  cp weeklyFile hourlyFile
  patch hourlyFile <hourlyFile.patch

Non sono davvero consapevole del tipo di output che sqldump offre. se è il testo sopra funzionerebbe. Altrimenti bsdiff può aiutarti qui:http://www.daemonology.net/bsdiff/