26 votes

Comment dois-je faire des sauvegardes MySQL?

Comment dois-je faire des sauvegardes MySQL?

J'espère qu'il y aura quelque chose de mieux que de courir juste mysqldump tous les "x" heures.

Est-il quelque chose comme SQL Server a, où vous pouvez prendre une sauvegarde complète chaque jour, et puis des incréments toutes les heures, donc si votre DB meurt, vous pouvez restaurer la dernière sauvegarde?

Quelque chose comme le journal de base de données, où aussi longtemps que le journal ne meurt pas, vous pouvez restaurer jusqu'au point exact où la DB est mort?

Aussi, comment ces choses affectent de verrouillage? Je m'attends à de transactions en ligne est verrouillé pendant un certain temps si je fais un dump.

13voto

Kyle Cronin Points 35834

Vous voudrez peut-être consulter des sauvegardes incrémentielles.

11voto

Jon Topper Points 2530

mysqldump est une approche raisonnable, mais garder à l'esprit que pour certains moteurs, cela permettra de verrouiller vos tables pour la durée de la décharge - et cela a des problèmes de disponibilité pour la production de grandes séries de données.

Une alternative évidente à cela est mk-parallèle-vidage de Maatkit (http://www.maatkit.org/) qui vous devriez vraiment vérifier si vous êtes un administrateur mysql. Cette décharges de plusieurs tables ou bases de données en parallèle à l'aide de la commande mysqldump, et donc de diminuer la quantité de temps total de votre dump prend.

Si vous êtes en cours d'exécution dans un répliquées setup (et si vous utilisez MySQL pour les données importantes dans la production, vous n'avez pas d'excuses pour ne pas le faire), pris des décharges à partir d'un esclave de réplication dédié à l'objectif de prévenir toute serrure questions de causer des ennuis.

La prochaine alternative évidente - sur Linux, au moins - est d'utiliser des snapshots LVM. Vous pouvez verrouiller vos tables, prendre un instantané du système de fichiers, et de déverrouiller les tables de nouveau; puis commencer un supplément de MySQL à l'aide d'un montage de cet instantané, le dumping à partir de là. Cette approche est décrite ici: http://www.mysqlperformanceblog.com/2006/08/21/using-lvm-for-mysql-backup-and-replication-setup/

7voto

jake Points 952

maintenant je commence à sonner comme un marché pour ce produit. j'ai répondu à une question avec elle ici, alors j'ai répondu à un autre avec elle à nouveau ici.

en un mot, essayez de sqlyog (enterprise dans votre cas) à partir de webyog pour tous vos mysql exigences. non seulement les horaires des sauvegardes, mais aussi les horaires de synchronisation de sorte que vous pouvez réellement répliquer votre base de données à un serveur distant.

il a une communauté libre de l'édition ainsi que l'édition entreprise. je recommande le plus tard pour vous mais aussi je vous conseille de commencer avec le comm de l'édition et de d'abord voir comment vous l'aimez.

4voto

Leon Timmermans Points 23230

J'utilise mysqlhotcopy, un rapide en ligne à chaud, l'utilitaire de sauvegarde pour local MySQL bases de données et des tables. Je suis très heureux avec elle.

4voto

jipipayo Points 1358

le Percona les gars, un open source alternative de innobackup ...

Xtrabackup

https://launchpad.net/percona-xtrabackup/

Lire cet article sur XtraDB http://www.linux-mag.com/cache/7356/1.html

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X