Maison > développement back-end > tutoriel php > Pratique de sauvegarde et de récupération de bases de données : application en programmation PHP

Pratique de sauvegarde et de récupération de bases de données : application en programmation PHP

WBOY
Libérer: 2023-06-22 19:16:01
original
1189 Les gens l'ont consulté

Avec le développement d'Internet, la sauvegarde et la récupération des bases de données sont devenues une partie très importante du processus d'exploitation et de développement d'un site Web. La base de données est le cœur du site Web et contient de nombreuses informations importantes. Si des données sont perdues ou endommagées, cela aura un impact important sur le fonctionnement du site Web et sur l'expérience utilisateur. Par conséquent, pour les opérateurs et les développeurs de sites Web, l’importance de la sauvegarde et de la restauration des bases de données va de soi.

Cet article se concentrera sur les opérations de sauvegarde et de récupération de bases de données dans la programmation PHP pour référence par les développeurs.

1. Sauvegarde de la base de données

La sauvegarde de la base de données peut être comprise comme la copie des données dans la base de données et leur enregistrement dans un autre emplacement au cas où elles devraient être restaurées à l'avenir. Les sauvegardes peuvent être effectuées en fonction de l'heure, de la période, de la fréquence, etc. Une fois les données perdues ou endommagées, les fichiers de sauvegarde peuvent être utilisés pour restaurer rapidement et assurer le fonctionnement normal des données.

Les méthodes de sauvegarde sont divisées en deux types : la sauvegarde manuelle et la sauvegarde automatique. Générer manuellement une sauvegarde nécessite d'exporter manuellement le fichier de base de données via des outils tels que phpMyAdmin, ce qui est fastidieux et nécessite des opérations fréquentes, ce qui n'est pas assez pratique. La sauvegarde automatique peut être effectuée en écrivant des scripts PHP pour effectuer une sauvegarde en fonction de la période de temps, de la fréquence, etc., et présente les caractéristiques d'automatisation et de synchronisation.

Ce qui suit décrit les méthodes de génération manuelle de sauvegardes et de sauvegardes automatiques.

  1. Générer manuellement des sauvegardes

La génération manuelle de sauvegardes nécessite l'utilisation d'outils de gestion de base de données tels que phpMyAdmin. Les étapes spécifiques sont les suivantes :

1.1 Connectez-vous à phpMyAdmin

Entrez l'adresse du serveur et les informations de chemin phpMyAdmin dans le navigateur. , entrez le nom d'utilisateur et le mot de passe, puis vous pouvez vous connecter à phpMyAdmin pour voir la liste des bases de données.

1.2 Sélectionnez la base de données à sauvegarder

Sélectionnez la base de données à sauvegarder dans la barre de navigation de gauche et accédez à la page de gestion de la base de données.

1.3 Sélectionnez Exporter

Cliquez sur "Exporter" dans le coin supérieur droit de la page et l'option d'exportation apparaîtra.

1.4 Exporter

Sélectionnez les options que vous souhaitez exporter, telles que le type d'exportation, le format de compression, le jeu de caractères, etc., et sélectionnez le tableau que vous souhaitez exporter. Enfin, cliquez sur le bouton "Exporter" lorsque vous y êtes invité.

  1. Sauvegarde automatique

La sauvegarde automatique peut être réalisée en écrivant des scripts PHP. Voici un exemple simple de code de sauvegarde :

<?php

//数据库信息
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '123456';
$dbname = 'test_db';

//备份文件信息
$backup_file = "backup/{$dbname}_".date("YmdHis").'.sql';
$file_handle = fopen($backup_file, 'w+');

//连接数据库
$conn = mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);
if (!$conn){
    die("连接失败:" . mysqli_error());
}

//获取数据库所有表信息
$table_result = mysqli_query($conn, 'SHOW TABLES');
$tables = array();
while ($row = mysqli_fetch_row($table_result)) {
    $tables[] = $row[0];
}

//获取所有表数据
foreach($tables as $table){
    $result = mysqli_query($conn, "SELECT * FROM {$table}");
    while ($row = mysqli_fetch_row($result)){
        $sql = "INSERT INTO {$table} VALUES ('".implode("', '",$row)."');
";
        fwrite($file_handle, $sql);
    }
}

//备份结束
fclose($file_handle);
mysqli_close($conn);
echo "备份成功:{$backup_file}";

?>
Copier après la connexion

Le code ci-dessus peut automatiquement sauvegarder les données de toutes les tables de la base de données spécifiée. Le fichier de sauvegarde est enregistré dans le répertoire de sauvegarde et le nom du fichier est nommé au format ". nom de la base de données_heure actuelle.sql".

2. Récupération de base de données

La récupération de base de données consiste à réimporter les fichiers sauvegardés dans la base de données pour restaurer l'état précédent des données. Les étapes spécifiques sont les suivantes :

2.1 Connectez-vous à phpMyAdmin

Entrez l'adresse du serveur et les informations de chemin phpMyAdmin dans le navigateur, entrez le nom d'utilisateur et le mot de passe, et vous pourrez vous connecter à phpMyAdmin pour voir la liste de la base de données.

2.2 Sélectionnez la base de données à restaurer

Sélectionnez la base de données à restaurer dans la barre de navigation de gauche et accédez à la page de gestion de la base de données.

2.3 Sélectionnez Importer

Cliquez sur "Importer" dans le coin supérieur droit de la page et l'option d'importation apparaîtra.

2.4 Importer

Sélectionnez le fichier de sauvegarde à importer et configurez les options, telles que le jeu de caractères, le délimiteur d'instructions SQL, etc. Enfin, cliquez sur le bouton "Démarrer l'importation" lorsque vous y êtes invité.

Il convient de noter que lorsqu'il existe une relation de clé primaire et étrangère dans la base de données, la relation de clé primaire et étrangère correspondante doit être supprimée manuellement lors de la récupération et supprimée du fichier de sauvegarde pour éviter les anomalies de données.

Les pratiques ci-dessus concernent la sauvegarde et la récupération de bases de données dans la programmation PHP. Je pense que cela peut aider les développeurs à mieux conserver et protéger les données de la base de données, tout en améliorant la stabilité et la sécurité des opérations du site Web.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal