Ich habe eine Website, die live ist und die Leute aktiv Inhalte einfügen. Ich musste jedoch einige Änderungen in der Entwicklungsumgebung vornehmen, was mich einige Wochen gekostet hat. Die Änderungen erforderten die Installation neuer Module und die Entfernung alter Module, was natürlich den Inhalt und die Struktur der Datenbank veränderte.
Meine Frage ist, wie ich diese Site wieder in die Live-Umgebung hochlade und die Datenbank aktualisiere, ohne die neuen Inhalte zu überschreiben, die neue Benutzer in den letzten zwei Wochen hinzugefügt haben.
Antworten:
Thomas Zahreddin hat recht. Aber je nachdem, was sich geändert hat ("hat mich ein paar Wochen gekostet ..."), gibt es noch mehr Dinge zu beachten.
settings.php
.Wenn Sie keinen trivialen Fall haben, empfehle ich Ihnen, Ihr Verfahren im Voraus zu testen. Und natürlich sichern Sie Dateien und Daten, bevor Sie mit dem Live-System beginnen. ( Backup and Migrate ist hier nützlich.)
quelle
Sie müssen überprüfen, was Sie ändern möchten:
quelle
Ich habe das gleiche Verfahren bei der Arbeit, wenn ich Drupal-Websites aktualisiere. Das größte Problem ist, dass Drupal nicht wirklich gute Arbeit darin leistet, Inhalte und Logik in seiner Datenbank auseinander zu halten.
Die Antworten von Thomas Zagreddin und BetaRide reichen aus, um Ihnen die beste Chance zu geben, die Migration erfolgreich abzuschließen. Es gibt wirklich keinen heiligen Gral zu diesem Thema.
Ich möchte Ihnen jedoch einen Entwicklungstipp geben, der mir viel Mühe erspart, unsere Websites auf dem neuesten Stand zu halten: Versuchen Sie, Ihre Logik so weit wie möglich in Ihrem Code (Module / Themen) zu halten. Versuchen Sie beispielsweise, das Erstellen von Ansichten so weit wie möglich zu vermeiden. Manchmal müssen Sie, aber das erfordert ein weiteres Datenbank-Update ...
Verwenden Sie das Quellcodeverwaltungsmanagement!
Wenn Sie in der Lage sind, alles auf den Code zu beschränken (dies ist natürlich nicht immer möglich), können Sie einfach einen SCM wie Git , SubVersion oder Mercury verwenden , um Ihre Quelle zu aktualisieren, und im schlimmsten Fall auf a zurückkehren vorherige Version Ihrer Quelle, wenn Ihr Update nicht wie geplant funktioniert.
Und natürlich, wie in den vorherigen Antworten angesprochen: Backup, Backup, Backup, Backup ...
quelle
Für die meisten Änderungen können Sie das Funktionsmodul verwenden. Dieses Modul kann nur die Änderungen ändern, die Sie in der lokalen Umgebung vorgenommen haben.
Andernfalls können Sie dieses schöne Modul verwenden. Sichern und migrieren. Installieren Sie dieses Modul zuerst online, erstellen Sie dann die Sicherung des gesamten vorhandenen Inhalts oder der Datenbank und stellen Sie es dann lokal bereit . Nehmen Sie dann die gewünschten Änderungen vor Ort vor, erstellen Sie erneut eine Sicherungskopie Ihrer lokalen Daten und stellen Sie sie dann online bereit.
quelle
Ich hatte gerade das gleiche Problem. Um es zu lösen, bemerkte ich, dass der einzige Inhalt, den ich im Leben hatte, der nicht in dev war, neue Benutzerdetails waren. Ich ging einfach zur Registerkarte "Personen" des Administrators und kopierte die Personendetails in "dev". In dev habe ich sie einfach ohne Automatisierung eingegeben. Wenn ich das nächste Mal von dev hochlade, stimmen die Personendetails natürlich und werden nicht überschrieben.
quelle