Maison >développement back-end >tutoriel php >Comment sauvegarder automatiquement les tables de base de données en php
L'éditeur suivant vous proposera une méthode d'implémentation de sauvegarde automatique des tables de base de données à l'aide de PHP. L'éditeur pense que c'est plutôt bien, alors je vais le partager avec vous maintenant et le donner comme référence. Suivons l'éditeur et jetons un coup d'œil
1 Avant-propos
Il existe de nombreuses façons de sauvegarder la base de données MySQL
<.>Par exemple :1. Utilisez la fonction mysqldump
mysqldump -u username -p dbname table1 table2 ... > BackupName.sql
le paramètre dbname représente le nom de la base de données
Les paramètres table1 et table2 représentent les noms des tables qui doivent être sauvegardées. Si elles sont vides, toute la base de données sera sauvegardée. ;
Conception de la table des paramètres BackupName.sql Le nom du fichier de sauvegarde peut être ajouté devant le nom du fichier. La base de données est généralement divisée en un fichier avec le suffixe sql ;
Utilisation de base :2. Outils de gestion
Il existe de nombreuses façons de sauvegarder la base de données, les deux ci-dessus sont plus courantes Cette fois, j'explique principalement comment sauvegarder automatiquement via la base de données des fonctions php2 Introduction aux fonctions associées
2.2, array_keys
2.3, array_values
2.4, imploser
2.5, substr
2.6, fwrite
3. Idées de mise en œuvre
4. Composition du code
/** * [copyDb description] 备份数据库 * @param [type] $dbname [description] 数据库名 * @param [type] $fileName [description] 存储的文件名 * @return [type] [description] */ public function copyDb($dbname, $fileName){ $myfile = fopen($fileName, "w") or die("Unable to open file!");//打开存储文件 $this->link->query("use {$dbname}");//切换数据库 $this->changeDb($dbname); $tables = $this->link->query('show tables');//获取当期数据库所有表名称 while($re = $tables->fetch(PDO::FETCH_ASSOC)){ //var_dump($re);//查看数组构成 $tableName = $re['Tables_in_'.$dbname];//构成特定的下标 $sql = "show create table {$tableName};"; $tableSql = $this->link->query($sql); fwrite($myfile, "DROP TABLE IF EXISTS `{$tableName}`;\r\n");//加入默认删除表的遇见 //下面备份表结构,这个循环之执行一次 while($re = $tableSql->fetch(PDO::FETCH_ASSOC)){ // echo "<pre class="brush:php;toolbar:false">"; // var_dump($re); // echo ""; echo "正在备份表{$re['Table']}结构
5. Conclusion
Le processus principal de sauvegarde la base de données : commutation Accédez à la base de données correspondante ; Utilisez show create table tableName pour obtenir la structure de la table et écrivez-la dans le fichier Ensuite, interrogez toutes les données de la table ; , bouclez pour générer l'instruction SQL correspondante et écrivez-la dans le fichier ;Le fichier SQL généré par l'essai ;La méthode d'implémentation ci-dessus consistant à utiliser PHP pour sauvegarder automatiquement la base de données Le tableau contient tout le contenu partagé par l'éditeur. J'espère qu'il pourra vous donner une référence.mysql Comment sauvegarder la base de données et importer
mysqlPlusieurs méthodes de sauvegarde de base de données
Petit Mysql sans hôte virtuelSauvegarde de base de donnéesscript
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!