J'ai un script qui produira des sauvegardes à rotation quotidiennes pour MySQL, mais je ne trouve rien de même pour les postgres. J'ai également découvert qu'il possède une capacité de sauvegarde en ligne, qui devrait être utile, car il s'agit d'un site de production. P>
Quelqu'un peut-il connaître un programme / script qui m'aidera, voire un moyen de le faire? P>
Merci. P>
8 Réponses :
Un moyen est de Utilisez La méthode suivante consiste à éteindre temporairement votre base de données (ou si votre système de fichiers prend en charge les instantanés atomiques, en théorie qui pourrait fonctionner) et sauvegarde Votre postgreSQL Cette page à partir du site PostgreSQL explique également comment Faites des sauvegardes en ligne et une récupération de point à l'heure, qui est définitivement la plus difficile à configurer, mais aussi la méthode optimale. L'idée est que vous effectuez une sauvegarde de base (que vous pourriez faire tous les jours, quelques jours ou une semaine) en exécutant un SQL spécial ( pg_dump code > Pour générer un vidage plat SQL, que vous pouvez gzip ou autre. C'est certainement l'option la plus simple, car les résultats peuvent être corrects dans
PSQL CODE> pour ré-charger une base de données, et comme cela peut également exporter en tant que texte brut, vous pouvez rechercher ou modifier les données avant. restaurer si nécessaire. p>
Data code>. p>
pg_start_backup code> et
pg_stop_backup code>) et faites un (Niveau de système de fichiers) Copie de votre répertoire de base de données. La base de données ne va pas hors ligne pendant ce temps et tout fonctionne toujours comme normal. À partir de ce moment-là, la base de données génère un journal écrit à avance (WAL) de tout changement, qui peut ensuite être poussé (automatiquement, par la base de données) à l'endroit où vous le souhaitez. Pour restaurer, vous prenez la sauvegarde de base, chargez-la dans une autre instance de base de données, puis rejouez tous les fichiers WAL. De cette façon, vous pouvez également faire une récupération à moment intégrale en ne rejouant pas tous les journaux. P>
L'utilisation d'instantanés atomiques ne "pourrait pas fonctionner en théorie". Cela fonctionne parfaitement bien. Mais ils doivent être atomiques sur Tous les systèmes de fichiers i> PostgreSQL contient des données sur, y compris le répertoire PG_XLOG.
J'utilise habituellement pg_dump pour faire mes sauvegardes, mais je cherchais plus une solution complète utilisée pg_dump pour créer des sauvegardes pivotées, quelque chose comme Sourceforge.net/Projects/automysqlbackup . Ce serait encore mieux si le script utilisait des sauvegardes en ligne, mais je pense que cela ne devrait pas être difficile de le faire moi-même et de la mettre en place sur Launchpad ou quelque part. Merci pour votre réponse.
Pour une manière automatisée de faire des sauvegardes pg_dump avec le cryptage clé / mot de passe, la rotation et le téléchargement sur S3 Consultez la sécurité: Github .Com / Astrails / Safe
Vous pouvez également jeter votre base de données PostgreSQL à l'aide de PHPPGADMIN ou PGADMIN III . P>
généralement le moyen fort> de faire des sauvegardes est d'utiliser pg_dump. P>
Vous ne devriez pas "copier des fichiers du répertoire PostgreSQL, comme dans MySQL" - Parce que les chances sont que vous ne pourrez pas les utiliser (ces fichiers sont une architecture, un système d'exploitation et des options de compilation dépendantes). P >
Sauf si pg_dump est Lorsque vous utilisez pg_dump, vous pouvez choisir une vidette de fichier SQL uni (-f p) ou un format personnalisé (-f c). Le vidage SQL est plus facile à modifier / à modifier, mais le format personnalisé est beaucoup plus puissant et (depuis 8.4) plus rapidement, car vous pouvez le charger dans de nombreux travailleurs parallèles au lieu de séquentiellement. P>
Pour des sauvegardes automatisées de MySQL gem installer astrails-coffre-coffre --source = http: //gems.github.com code>").
Il utilise mysqldump pour sauvegarder mysql et pg_dump à la sauvegarde postgres. Il sait également à sauvegarder des fichiers unis avec goudron et de chiffrer tout avec GNUPG et télécharger sur S3, ou tout serveur UNIX avec SFTP. P>
Depuis que vous avez spécifié des bases de données, pg_dumpall code> sera beaucoup plus utile pour vous. Il décharge toutes les bases de données et les utilisateurs vers un fichier SQL au lieu d'un seul. P>
Je viens de tomber sur cette petite utilité soignée: p>
http://code.google.com/p/pg-rman/ p>
de la documentation qu'il a l'air prometteuse, mais je dois encore l'essayer. P>
Ici, les scripts que vous pouvez utiliser pour la sauvegarde postgreSQL par crontab p>
http://ithelpblog.com/os / Linux / Debian / Best-Way-To-Backup-PostgreSQL-Base de données / P>
Cordialement, Kevin P>
C'est ce que je ferais pour sauvegarder mon ancienne base de données et restaurer
pour sauvegarder votre base de données p> pour restaurer cette sauvegarde p> pg_restore -v -d newdb_name db_dump_file.dump