Mysql
 sql >> Base de données >  >> RDS >> Mysql

La mise à jour du schéma Symfony2 Doctrine échoue

@maxian

La réponse de Michael Villeneuve n'est pas tout à fait juste. Dans le cas d'un environnement de production ou d'un type de , vous ne pouvez pas simplement supprimer le schéma et le recréer.

La seule façon de l'exécuter sur votre schéma actuel est la suivante :

  1. php app/console doctrine:schema:update --dump-sql . Copiez la sortie. Ce sont les requêtes SQL directes pour mettre à jour votre schéma
  2. connectez mysql avec la ligne de commande mysql ou via un client mysql
  3. Désactivez la vérification des clés étrangères en appelant cette requête :"set foreign_key_checks=0;"
  4. mettez les requêtes de doctrine:schema:update
  5. Activez la vérification de la clé étrangère avec :"set foreign_key_checks=1 ;"

Je ne peux pas garantir que vous ne perdrez pas certaines clés, mais vous ne perdez pas du tout vos données.