Configuration de la sauvegarde MySQL. Sauvegardez et restaurez une base de données MySQL à l'aide de mysqldump. Types de sauvegardes de bases de données

Dans cet article, je vais essayer, brièvement mais précisément, d'envisager plusieurs options pour effectuer facilement et rapidement une sauvegarde de base de données.
Je propose trois options :

  • mysqldump (utilitaire de commande)
  • phpmyadmin (interface Web pour travailler avec la base de données)
  • Sypex Dumper (Script)
mysqldumpEn vous connectant via SSH ou en ayant un accès local via un terminal, vous pouvez effectuer une sauvegarde de base de données à l'aide de l'utilitaire de commande mysqldump, inclus avec le package MySQL installé. Regardons la syntaxe de cette commande.
mysqldump -u -p > – le nom de l'utilisateur qui a accès à la base de données.
- mot de passe de l'utilisateur.
- nom de la base de données.
– nom du fichier, dump de sortie.
Un exemple de sauvegarde de la base de données mydb_forum sur un serveur MySQL :

mysqldump -uadmin -pSuperPassword mondb_forum > mondb_forum.sql

La restauration d'un dump de base de données obtenu précédemment est également simple.

mysql -uadmin -pSuperPassword mondb_forum< mydb_forum.sql

Pour vider toutes les bases de données qui se trouvent sur votre serveur MySQL, utilisez ce qui suit. exemple:

mysqldump -uAdmin -pMyPass --all-databases > all_databases.sql

Sauvegarde de la structure de la base de données

mysqldump --no-data --databases ma_db1 ma_db2 ma_db3 > structurebackup.sql

Compresser les données en déplacement

mysqldump -uAdmin -pSuperPass mabase de données | bzip2 -c > backup.sql.bz2 mysqldump -uAdmin -pSuperPass mabase de données | gzip -c > sauvegarde.sql.gz

PHPMyAdminPHPMyAdmin est une interface Web légère pour travailler avec des bases de données MySQL. Vous pouvez l’utiliser sur un serveur ou un PC domestique si PHP est installé et configuré. C'est également une bonne option lorsque vous n'avez pas accès au serveur via telnet/ssh. Télécharger la dernière version
Le package PHPMyAdmin peut être trouvé ici.
Paramètres PHPMyAdmin
Avant de commencer à sauvegarder la base de données à l'aide de PHPMyAdmin, je vais décrire comment vous pouvez la configurer. Après avoir décompressé et installé le package PHPMyAdmin, nous devons éditer le fichier
config.inc.php
Spécifiez l'URL complète de l'emplacement où se trouve phpmyadmin

$cfg [ "PmaAbsoluteUri" ] = "http://myexample.com/phpmyadmin/" ;

Paramètres phpmyadmin pour travailler avec la base de données

$cfg [ "Serveurs" ] [ $i ] [ "hôte" ] = "235.104.1.5" ; $cfg [ "Serveurs" ] [ $i ] [ "port" ] = "3306" ; $cfg [ "Serveurs" ] [ $i ] [ "connect_type" ] = "tcp" ; $cfg [ "Serveurs" ] [ $i ] [ "auth_type" ] = "config" ; $cfg [ "Serveurs" ] [ $i ] [ "utilisateur" ] = "admin" ; $cfg [ "Serveurs" ] [ $i ] [ "mot de passe" ] = "FvAk41P" ;

Sauvegardez la base de données MySQL à l'aide de PHPMyAdmin.
Pour faire une sauvegarde d'une base de données MySQL à l'aide de PHPMyAdmin, connectez-vous (par exemple http://localhost/phpmyadmin/), à gauche sélectionnez la base de données qui vous intéresse, et cliquez sur l'onglet Exporter, vous serez redirigé vers quelque chose comme cette page:

Comme vous pouvez le voir, il existe ici différents paramètres, la possibilité de sélectionner le type de futur dump de base de données, l'archivage du dump, etc. Cliquez sur le bouton « Go » pour lancer la sauvegarde de la base de données, une fenêtre apparaît vous demandant d'indiquer l'emplacement sur votre PC où le dump de la base de données sera enregistré, indiquez et profitez du processus de sauvegarde de la base de données. PHPMyAdmin. Restauration de la base de données
La procédure est assez simple, allez sur phpmyadmin, cliquez sur Importer, voyez le formulaire, utilisez-le pour sélectionner un fichier de dump de base de données locale. Lorsque vous cliquez sur « Go », la base de données sera restaurée. Sypex Dumper Également très intéressant, à mon avis, est un script gratuit – « Sypex Dumper » écrit en PHP.
Tout utilisateur ou administrateur novice qui ne souhaite pas se soucier de divers utilitaires de console et d'interfaces Web multifonctionnelles peut choisir un script Sypex Dumper pratique, simple et entièrement fonctionnel.

Bonjour lecteurs et abonnés du site ! Aujourd'hui, j'ai décidé de parler de la chose la plus importante, d'une sauvegarde du site, grâce à laquelle toutes les données du site peuvent être restaurées à toute heure du jour ou de la nuit sous la même forme qu'auparavant.

Il semblerait, qu'y a-t-il de si important dans un tel sujet ? Pensez-y, une sorte de copie du site, après tout, nous payons de l'argent pour l'hébergement et il est obligé d'être responsable de la sécurité du contenu des sites servis.

Il y a une part de vérité là-dedans, mais personne n'est à l'abri de la force majeure et imaginez votre surprise lorsqu'un jour vous accédez à votre site Web et voyez à la place un message d'erreur similaire.

Savez-vous quelle est la pire chose ? C'est que vous ne l'avez pas sauvegardé (fichiers et base de données).

Il est impossible d'imaginer que tout votre travail et vos revenus constants aient cessé d'exister à cause d'une telle stupidité.

Un exemple simple : vous gérez un blog depuis plusieurs années, passant du temps chaque jour à rédiger des articles et à en faire la promotion. Une armée de lecteurs et d'abonnés réguliers s'est rassemblée autour de vous, et votre site a déjà commencé à générer des bénéfices, ce qui vous a permis de quitter votre emploi et de devenir financièrement indépendant grâce au réseau en ligne.

Mais pour une raison quelconque, le serveur sur lequel se trouve le disque dur de votre site a cessé de fonctionner. Vous savez donc que l'hébergement n'est qu'un stockage de données virtuel, mais en réalité, quelque part sur terre, une salle spéciale a été construite avec de nombreux ordinateurs modernes et des milliers de Go. de mémoire.

Vous payez pour un espace sur un disque dur distant. Imaginez maintenant qu'il y ait un incendie dans cette pièce et que toutes les données du disque dur où se trouvait votre site soient endommagées.

Le fournisseur d'hébergement vous enverra des excuses et rien de plus. Eh bien, bien sûr, vous devrez commencer votre carrière d’entrepreneur en ligne à partir de zéro. (

Qui a été plus prévoyant pour faire une copie de sauvegarde du site, restaurer les données sur un autre hébergement et oublier un tel incident.

Personnellement, dans ma peau, j'ai ressenti il ​​y a quelques jours la peur de tout perdre en un instant lorsque mes serveurs d'hébergement tombaient en panne et que mon blog était indisponible aux visiteurs pendant un certain temps.

Bien sûr, je ne suis pas un débutant complet et je sais très bien que toutes les données de tels incidents doivent être copiées, mais à ce moment-là, je n'avais pas mis à jour la sauvegarde de mon blog depuis plusieurs mois.

Pour être honnête, il serait très décevant de revenir en arrière et d’écrire à nouveau des dizaines d’articles. Alors réfléchissez-y, et ci-dessous je vais vous montrer de quelle manière une copie de sauvegarde des données du site est créée.

Raisons pour lesquelles un site peut disparaître :

  • Erreur lors de la modification des fichiers du site. Vous pouvez facilement gâcher le code ou faire une erreur.
  • Hébergement. Il peut y avoir plusieurs raisons à cela, en commençant par les catastrophes naturelles et en terminant par le fait que l'hébergement lui-même se permet de tromper les clients. Tout peut arriver dans la vie !
  • Hacker ou attaque de virus sur le site. Il existe désormais de nombreux attaquants dont les cibles sont les webmasters ordinaires et leurs projets rentables.
Sauvegarde des fichiers du site Web sur l'hébergement

Commençons par le fait que presque tous les fournisseurs d'hébergement créent des sauvegardes quotidiennes de toutes les données clients.

Et maintenant, la chose la plus intéressante, dans le paragraphe suivant, vous devez définir la période de temps après laquelle le plugin copiera automatiquement et enverra une copie de sauvegarde de la base de données à votre adresse e-mail.

J'ai réglé la fréquence sur une fois par jour et créé un compte de messagerie séparé pour cela, afin de ne pas encombrer mon adresse professionnelle avec des copies archivées de la base de données du blog. Comme vous pouvez le constater, il n’y a rien de compliqué !

C'est ici que je terminerai cet article, j'espère que vous comprendrez la douleur et l'importance de créer périodiquement une copie de tous les fichiers du site et de la base de données MySQL.

Il vaut mieux passer quelques minutes que plusieurs mois à restaurer un projet à partir d'archives Web. Au revoir

Je voudrais vous raconter dans mon article « Sauvegarde automatique des bases de données Mysql sous Linux » comment j'ai réalisé des sauvegardes automatiques de mes bases de données sous Mysql. Informations très utiles, surtout si vous ne le savez pas et devez faire une sauvegarde.

1. Installation et configuration de Mysql (j'espère que vous avez tout configuré et prêt à fonctionner, comment existe-t-il des bases de données pour créer une sauvegarde), je fournirai des informations dans mes sujets précédents, peut-être que quelqu'un en aura besoin :

Il existe de nombreux autres sujets, il suffit de rechercher sur le site si nécessaire.

2. Nous créons la sauvegarde proprement dite de toutes les bases de données.

Tout d'abord, créons un dossier, toutes nos sauvegardes seront là, pour cela :

# mkdir /home/captain/backup && cd /home/captain/backup

Créez une sauvegarde à l'aide de la commande :

# mysqldump -u root -proot -h 127.0.0.1 --all-databases | gzip >

PS : les gars, ne confondez pas les signes (« -tilde, qui est similaire à un guillemet ordinaire »). La marque porte des tildes.

Nous nous assurons que le fichier a déjà été créé, et que tout va bien :

# ls -lah

Ce n'est pas toujours exact ! Alors vous devriez toujours y penser, ai-je fait une sauvegarde ? Vous devez ajouter cette commande à crontab pour une sauvegarde automatique des données MySQL, cela se fait comme ceci :

# vim /etc/crontab

Cette option convient, mais il y a un problème, elle est exécutée en tant qu'utilisateur root. Il est déconseillé de le faire. La bonne manière serait :

# crontab -e # Sauvegarde automatique des bases de données Mysql sous Linux 00 00 * * * /usr/bin/mysqldump -u root -proot -h 127.0.0.1 --all-databases | gzip > /home/captain/backup/my_database_backup_`date +%mm%jj%aa`.sql.gz

Avec cela, je complète mon sujet « Sauvegarde automatique des bases de données Mysql sous Linux » sur mon site https://site

Aujourd'hui, j'avais besoin de mettre en place une sauvegarde automatique de la base de données d'un hébergement à un autre. J'ai examiné plusieurs options pour créer des sauvegardes de bases de données et j'ai opté pour la plus simple : en utilisant l'utilitaire mysqldump. Maintenant, je vais vous dire comment j'ai fait.

Quelle est l’idée de sauvegarder d’un serveur à un autre ?

L'idée est très simple : si un serveur tombe en panne, la base de données peut être restaurée à partir d'un autre. C'est mieux que de stocker toutes les sauvegardes sur un seul serveur.

Ok, alors comment fait-on ça ?

Et maintenant quelques mots sur la manière dont se déroulera le processus de sauvegarde. Disons que nous avons un serveur « A » sur lequel se trouve une base de données dont nous souhaitons créer les sauvegardes. Et il y a le serveur « B » sur lequel nous allons sauvegarder ces sauvegardes. Pour effectuer un dump de base de données, exécutez simplement la commande suivante sur la ligne de commande du serveur :

mysqldump -u -p --extended-insert=false > site-$(date +%Y-%m-%d).sql

Et pour vous connecter à une base de données sur un autre serveur, il suffit d'ajouter le paramètre -h, par exemple comme ceci :

mysqldump -h 92.53.114.27 -u -p --extended-insert=false > site-$(date +%Y-%m-%d).sql

Eh bien, pour que tout cela fonctionne automatiquement, vous devez créer une tâche cron et écrire un petit script en PHP qui maintiendra un certain nombre de fichiers dans le répertoire dump (pourquoi avons-nous besoin de centaines de dumps ?).

Commençons par configurer la sauvegarde automatique de la base de données MySQL

Pour le travail, nous avons besoin de très peu :

  • Deux serveurs
  • Accès au serveur via ssh
  • utilitaire mysldump sur le serveur
  • 20 minutes de temps libre :)
  • Installer le script sur le serveur

    Écrivez le code ci-dessous dans le fichier database_backup.php et enregistrez-le sur le serveur qui sera le stockage de vidage dans n'importe quel dossier, que ce soit le dossier /var/database_backups. Créez ensuite un dossier dans lequel vos dumps seront stockés, que ce soit le dossier suivant /var/database_backups/sitename .

    $config = [ // Adresse IP du serveur à partir duquel nous allons copier la base de données "ip" => "11.11.111.11", // Chemin vers le dossier dans lequel seront situés les dumps de la base de données "path" => "/ var/database_backups/sitename" , // Modèle pour le nom du fichier de vidage de la base de données. À la place, la date sera remplacée au format 2015-04-19 "filenamePattern" => "dump_.sql", // Nombre maximum de dumps stockés sur le serveur "maxFilesCount" => 3, // Configuration d'une connexion à la base de données "db" => [ " name" => "site", "user" => "root", "password" => "mysql", ], ]; $ip = !empty($config["ip"]) ? "-h $config" : ""; $filename = str_replace("", "$(date +%Y-%m-%d)", $config["filenamePattern"]); $command = "mysqldump $ip -u ($config["db"]["user"]) -p($config["db"]["password"]) --extended-insert=false ($config[ "db"]["name"]) > ($config["path"])/$filename"; exec($commande); if (!empty($config["maxFilesCount"])) ( cleanDirectory($config["path"], $config["maxFilesCount"]); ) /** * Efface le répertoire des fichiers, ne laissant pas plus de $maxFilesCount nombre de fichiers * * @param string $dir * @param string $maxFilesCount */ function cleanDirectory($dir, $maxFilesCount) ( $filenames = ; foreach(scandir($dir) as $file) ( $filename = " $dir/$file"; if (is_file($filename)) ( $filenames = $filename; ) ) if (count($filenames)

    Avez-vous aimé l'article? Partager avec des amis: