Symfony Make:Migration : Der Metadatenspeicher ist nicht aktuell, bitte führen Sie den Befehl sync-metadata-storage aus, um dieses Problem zu beheben
Lesezeit: 3 Minuten
Aziz Bouaouina
Ich bekomme jedes Mal dieses Problem, wenn ich versuche, über die Befehlszeile zu migrieren: php bin/console make:migration
oder auch doctrine:migration status
wenn ich das versuche doctrine:migration:sync-metadata-storage Wie sie mir sagen, bekomme ich immer noch die gleiche Fehlermeldung.
Ich lerne gerade Symfony und habe eine Anleitung befolgt, aber ich bekomme dieses Problem irgendwie Symfony 4.4 php 7.2
Meis van Wel
Versuchen Sie, die DATABASE_URL in .env von zu ändern
Die Symfony-Dokumentation schlägt vor, die Versionsnummer, aber nicht den Datenbanktyp anzugeben
“Es gibt weitere Optionen in config/packages/doctrine.yaml, die Sie konfigurieren können, einschließlich Ihrer server_version (z. B. 5.7, wenn Sie MySQL 5.7 verwenden), die sich auf die Funktionsweise von Doctrine auswirken können.” https://symfony.com/doc/current/doctrine.html
Für MariaDB benötigen Sie die vollständige Semver-kompatible Version: Major.Minor.Patch. Durch Ausführen mysql --versionerhalten Sie die richtige Version, die Sie gerade ausführen.
Welchen Servertyp verwendest du denn?
– Meis van Wel
23. Juni 2020 um 18:44 Uhr
Nun, ich benutze mysql
– Vincent PHILIPPE
23. Juni 2020 um 18:46 Uhr
Wenn Sie XAMPP verwenden, können Sie zu folgendem gehen: localhost/phpmyadmin/index.php um Ihre Serverversion und Ihren Typ zu überprüfen.
– Meis van Wel
24. Juni 2020 um 8:05 Uhr
In meinem Fall habe ich Docker verwendet, also musste ich dasselbe unter tun environment in docker-compose.yml
– Waqleh
29. August 2020 um 17:25 Uhr
Führen Sie einfach “SELECT VERSION()” auf Ihrem mariaDB-Server aus und verwenden Sie diesen String als Version in Ihrer Konfiguration. In meinem Fall ?serverVersion=10.3.25-MariaDB-0+deb10u1 und es funktioniert.
– Papa
6. November 2020 um 4:40 Uhr
Für mich war es ausreichend, der Serverversion mariadb-xxx voranzustellen. Das Problem wurde behoben.
„Wenn Sie eine MariaDB-Datenbank betreiben, sollten Sie der serverVersion mariadb- voranstellen (z. B. mariadb-10.2.12).“
In meinem Fall funktioniert es, wenn ich : ?serverVersion=5.2 aus der URL entferne.
Mauswurzel
die musst du ändern serverVersion=5.7 in .env zu serverVersion=mariadb-10.4.8
elkuku
Ich bin nach dem Upgrade auf Doctrine-Migrationen 3 auf das gleiche Problem gestoßen
Scheint, dass sich eine Menge Dinge geändert haben, einschließlich des Tabellennamens, in dem Migrationsversionen gespeichert sind 🙁
Also habe ich aktualisiert config/packages/doctrine_migrations.yamleine neue (leere) Migration erstellt, den Cache geleert (nur für den Fall) und alles lief gut 🙂
doctrine_migrations:
migrations_paths:
# namespace is arbitrary but should be different from App\Migrations
# as migrations classes should NOT be autoloaded
'DoctrineMigrations': '%kernel.project_dir%/src/Migrations'
storage:
# Default (SQL table) metadata storage configuration
table_storage:
table_name: 'migration_versions'
version_column_name: 'version'
version_column_length: 1024
executed_at_column_name: 'executed_at'
execution_time_column_name: 'execution_time'
Ich kann diese Antwort nicht genug positiv bewerten. War mir wirklich nicht bewusst, dass Sie server_version: ‘mariadb-…’ angeben müssen.
– Mechanik
6. November 2021 um 7:45 Uhr
13242500cookie-checkSymfony Make:Migration : Der Metadatenspeicher ist nicht aktuell, bitte führen Sie den Befehl sync-metadata-storage aus, um dieses Problem zu behebenyes