8722 sujets

Développement web côté serveur, CMS

Bonjour,

J'apprend à créer et gérer des BDD mysql en ce moment.

J'ai constaté qu'il existe diffrentes méthodes pour initialiser une base de donnée (via l'interface visuel phpMyAdmin, en ligne SQL dans le gestionnaire de BDD ou via un fichier SQL dans le site (qui s'initialise via une page.php)

Pour illustrer la dernière méthode:
try {
  $connection = new PDO("mysql....s);
  $sql = file_get_contents("data/init.sql");
  $connection->exec($sql);


Quelqu'un saurait-il m'expliquer l'intérêt de cette dernière méthode ? Est-ce que c'est dans le cas d'un déploiement par le client ?

Merci d'avance !
Modérateur
Et l'eau,

Vraisemblablement l'application n'utilise pas d'outil de migration. Alors, chaque fois qu'un dev change la structure de la bdd, il doit faire un dump et versionner le fichier.

faire un dump de la structure (seulement) :

$mysqldump -d -u un_utilisateur -p base_donnees_cible > chemin/vers/data/init.sql

* code fait de tête, je peux m'être trompé

Ensuite, l'intérêt du script présenté je le trouve moyen puisqu'on peut faire :

$mysql -u un_utilisateur -p base_donnees_cible < chemin/vers/data/init.sql

* code fait de tête, je peux m'être trompé

Cela dit, je ne vois pas trop le contexte. Le script php est relativement pertinent.
Modifié par niuxe (28 Nov 2019 - 23:12)