Original:
http://dev.joomla.org/...
Joomla! Developer Blog
May 19th, 2006 by davidgal
Joomla 1.5 liefert keinen Erweiterungspfad zu früheren Versionen. Eine ältere Seite in eine Joomla 1.5 Seite umzusetzen, erfordert die Neuanlegung einer neuen leeren Seite, die Joomla 1.5 verwendet und dann die neue Seite mit dem Inhalt aus der alten Seite füllen. Diese Migration des Inhalts ist kein Eins-zu-Eins-Prozess und schließt Umwandlungen und Änderungen am Inhalt ein.
Es gibt zwei Arten, die Migration auszuführen:
- Eine automatisierte Methode für Migration die eine migrator Komponente verwendet, um den Migrationsdump aus der alten Seite zu
erstellen, (Mambo 4.5.x bis
zu Joomla 1.0.x), und eine inteligente Importfunktion in der Joomla 1.5 Installation, welche die erforderlichen Umwandlungen und Änderungen während des Installationsprozesses durchführt.
- Die Migration kann manuell durchgeführt werden. Dies beinhaltet
die erforderlichen Tabellen zu
exportieren, manuell
die erforderliche Umwandlungen und Änderungen ausführen und dann den Inhalt in die neue Seite zu importieren, nachdem sie installiert ist.
Es folgt eine detaillierte Beschreibung beider Methoden.
Automatisierte Migration
Dies ist ein zwei Fasen Prozess, der zwei Hilfsprogramme benutzt. Das erste Hilfsprogramm ist eine migrator Komponente mit dem Namen 'com_migrator'.
Diese Komponente ist von Harald
Baer beigetragen worden und basiert auf seiner 'eBackup' Komponente. Das Migratorprogramm muss auf der alten Seite installiert werden und, wenn aktiviert, bereitet es den erforderlichen Exportspeicherauszug vor. Das zweite Hilfsprogramm wird während des Joomla 1.5 Installationsprozesses benutzt. Der exportierte
Inhaltsspeicherauszug wird in
die neue Seite geladen, und alle Umwandlungen und alle Änderung werden “on-the-fly”ausgeführt.
Schritt 1 - com_migrator benutzen:
- Installiere die Komponente auf der alten Seite.
- Wähle die Komponente im Komponentenmenü des Administrators aus.
- Klicke auf das
'Dump it' Symbol. Drei exportierte
gzipped Exportscripts werden erstellt. Das erste ist eine vollständige Sicherung der alten Seite. Das zweite ist der Migrationsinhalt aller Core-Elemente, die in die neue Seite importiert werden. Das dritte ist eine Sicherung aller Tabellen der 3PD
Komponenten.
- Klicke auf das Herunterladesymbol einer benötigten Exportdatei und speichere sie lokal.
- Es können mehrere Exportsätze erstellt werden.
- Die exportierten
Daten werden nicht modifiziert, und die Originalcodierung bleibt erhalten.
Dies macht das com_migrator Hilfsprogramm zu einem empfohlenen Hilfsprogramm, um es auch für manuelle Migrationen einzusetzen.
Schritt 2 - mit Hilfe der Migrationsfunktion während Joomla 1.5 Installation:
- in Schritt 6 - Konfiguration wählen sie die Option 'Load Migration Script' in der Sektion 'Load Sample Data, Restore or Migrate
Backed Up Content' der Seite.
- Geben Sie das im Content Dump verwendete
Tabellenpräfix ein.
Zum Beispiel: 'jos' oder
'jos_' sind gültige Werte.
- Wählen Sie die Zeichenkodierung des gedumpten Inhalts in der dropdown Liste aus. Dies sollte die auf den Seiten der alten Seite verwendete Zeichenkodierung sein. (Wie in der _ISO Variablen in der Sprachdatei definiert oder wie in der Browser Seite Information/Zeichenkodierung/Quelletext)
- Durchsuchen Sie den local
host und wählen den Migrationsexport und Klicken Sie auf 'Upload and Execute'
- Es sollte entweder eine Erfolgsnachricht oder eine Liste von db Fehlern
erscheinen.
- Füllen Sie die
restlichen erforderlichen Felder im Konfigurationsschritt wie
Seitenname und Admindetails aus und gehen Sie zum letzten Schritt der Installation. (Admindetails werden ignoriert, da die importierten Daten Priorität bekommen. Bitte erinnern Sie sich an den Adminnamen und das Kennwort aus der alten Seite)
Was tut die automatisierte Migration?
- Sie migriert
alle Kerninhaltsdatensätze in der Datenbank (d.h. Inhalt, Weblinks, Banner, Kontakte, Newsfeeds, Abstimmungen und Benutzer).
- Sie stellt Menüs mit Menüelementen, die auf Kerninhalt verweisen, (nicht 3PD Komponenten) wieder her.
- sie hängt alle Kernmoduldatensätze aus der alten Seite an die Modultabelle der neuen Seite an. Originalmoduldatensätze sind eingestellt 'unveröffentlicht'. Alle Parametrierungen sind erhalten. Der Benutzer muss Positionen in Grundstellung bringen, Einrichten ordnen und veröffentlichen.
Was tut die automatisierte Migration nicht?
- sie stellt keine Datenbankeinträge für 3 PD Erweiterungen um. Wenn Versionen dieser Komponenten
auf der neuen Seite installiert werden sollen, wird empfohlen eine manuelle
Migration der Komponentendaten durchzuführen, nachdem die Komponente auf der
Joomla 1.5 Seite installiert wurde. (Wie erwähnt,
erstellt com_migrator einen Dump aller 3PD Tabellen).
- Sie migriert keine Inhalter ausserhalb der db wie
Bannerbilder, Dateien, Fotos usw.
Manuelle Migration
Erstes Wort der Warnung! Das beliebte Hilfsprogramm, 'phpMyAdmin' führt unerbetene und normalerweise falsche Zeichenkodierungsumwandlungen während des Exports von Seitendaten aus. Es gibt gegenwärtig keine Möglichkeit, dies zu
kontrollieren. Es wird deshalb NICHT empfohlen phpMyAdmin für die Migration einzusetzen.
Der Grund dafür ist unklar, aber das Programm scheint die Zeihenkodierung der Datenbank, die in vielen Fällen 'latin1_swedish_ci' ist (der Standardwert) anzunehmen und hat keine Verbindung zur tatsächlichen Zeihenkodierung, die in der Seite verwendet wurde. Das Ergebnis ist normalerweise die Unbrauchbarkeit von allen erweiterten ASCII Zeichen.
Daten auf eine manuelle Migration vorzubereiten, beinhaltet die Zeihenkodierung in utf-8 zu
ändern, Vorbereitung für
hinzugefügte Felder im Joomla 1.5 Datenbankschema, Umbenennung von zwei Feldern und möglicherweise Umbenennung des Tabellenpräfix. Folgende sind einige Richtlinien für manuelle Migration. Bedenken Sie, dass es
mehr als eine Art gibt
"eine Katze abzuhäuten".
Zeichenkodierungsumwandlungen: Dies kann während des Exports getan werden (wenn das Exporttool es Unterstützt), off-line über das SQL-Script, mit einem geeigneten Editor der 'als utf-8 speichern' kann, oder während Imports (dies arbeitet gut mit phpMyAdmin).
Eine gute Prüfung besteht darin, die
konvertierte SQL-Datei
in einen Editor zu laden. Wenn der Editor im utf-8 Modus
ist (normalerweise im Statusbalken angezeigt) und der Inhalt lesbar ist, dann haben Sie es wahrscheinlich richtig gemacht. Wenn man eine Konvertierung mit dem Editor macht, sollte die BOM option (Bitordnungsmarkierer) NICHT verwendet werden, da dies mehrere unerwünschte Bytes am oberen Ende der Datei hinzufügt und einen
syntaktischen Analysefehler
verursacht.
Das Unterbringen für neue Felder in Joomla 1.5 db Schema: Alles was erforderlich ist, ist sicherzustellen das:
- Die Tabellenstruktur der Datenbank der alten Seite sollte NICHT in den Dump einbezogen werden. Das Letzte das wir tun wollen ist, die alte db Tabellenstruktur in die neue Datenbank zu bringen.
- INSERT Anweisungen sollten 'vollständig' sein, d.h. Feldliste uns dann Werteliste. Die
Abkürzungsanweisungen INSERT
nur mit Wertliste sollte NICHT verwendet werden, da db Fehler
auftreten, wenn die neuen Felder gefunden werden.
Umbenannte Felder:
Es gibt nur zwei Feldnamen, die in entsprechenden INSERT Anweisungen umbenannt werden müssen:
- in der 'jos_core_acl_aro'
Tabelle muss das erste Feld von 'aro_id' in 'id'
umbenannt werden.
- in der
'jos_core_acl_aro_groups' Tabelle, muss das erste Feld von 'group_id' in 'id'
umbenannt werden.
Welche Tabellen importierenden? Die Liste unten enthält Tabellen, die sich auf Core Content beziehen und deren Inhalte sicher mit den migrierten Daten bevölkert werden können. Beachten Sie,
dass die 'jos_usertypes' Tabelle bei Joomla 1.5 nicht mehr verwendet wird.
Menü- und Modultabellen können mit den entsprechenden Datensätzen aus der alten Seite wiederhergestellt werden. Sie müssen wissen, was Sie hier tun. Wenn im Zweifel,
könnte es eine bessere Idee sein, gerade Modulparameter und Menüstruktur mit Hilfe der Administratorschnittstellenteils zu rekonfigurieren. Menüdatensätze,
die sich auf
'content_typed' beziehen, sind nicht
mehr gültig, da diese Art des Inhalts nicht mehr anerkannt wird.
Der Tip des Tages
ist "Sei besonnen und mach ein gutes
Backup"
Core Datentabellen: jos_banner
jos_bannerclient
jos_bannerfinish
jos_categories
jos_contact_details
jos_content
jos_content_frontpage
jos_content_rating
jos_core_acl_aro
jos_core_acl_groups_aro_map
jos_core_log_items
jos_core_log_searches
jos_messages
jos_messages_cfg
jos_newsfeeds
jos_poll_data
jos_poll_date
jos_poll_menu
jos_polls
jos_sections
jos_users
jos_weblinks
|