Support » Allgemeine Fragen » WordPress von Produktivumgebung nach Testumgebung übertragen

  • Hallo.

    Ich möchte WordPress aus meiner Produktivumgebung in eine Testumgebung unter XAMPP auf einem lokalen Gerät übertragen.

    Zu diesem Zweck habe ich die Datenbank (mittels WP-Plugin gesichert) nach phpMyAdmin (in die Datenbank „wordpress-live“) importiert. Die Datei „wp-config.php“ habe ich so geändert, dass als Datenbankname „wordpress_live“ angegeben ist (wie in phpMyAdmin). Dann habe ich das WordPress-Verzeichnis mittels FTP-Client nach htdocs von XAMPP übertragen. Das WordPress-Verzeichnis habe ich dabei umbenannt, in „wordpress-live“.

    Doch wenn ich versuche, WordPress mittels „localhost/wordpress-live/wp-admin“ aufzurufen, erhalte ich den Fehler „Error establishing a database connection“ von WordPress im Browser.

    Wie ist dieses Problem zu lösen?

    Ganz einfach:
    Schritt 1:
    Die Datei „wp-config.php“ ändere ich so, dass als Benutzername „root“ angegeben ist und als Passwort eine leere Zeichenfolge, sprich: nichts.

    Schritt 2:
    Ich gehe noch einmal in die Verwaltungsoberfläche von phpMyAdmin, gehe auf die Datenbank „wordpress_live“, gehe auf die Tabelle „wp_options“ (für „wp_“ kann hier u. U. etwas anders stehen – je nach Konfiguration), suche den Eintrag „siteurl“ und klicke dort auf „Bearbeiten“. Dort ändere ich den bisherigen Domain-Namen um, in „http://localhost/wordpress-live“ („wordpress-live“, so hieß ja das Verzeichnis).

    Jetzt komme ich in die Administrationsoberfläche unseres WordPress‘, jedoch die „normale“ Seite ist noch nicht verfügbar.

    Schritt 3:
    Ich melde mich in der Administrationsoberfläche von WordPress ein, wähle „Einstellungen“ aus dem Menü am linken Bildschirmrand und suche das Feld „Seiten-Adresse (URL)“ (unterhalb von „WordPress-Adresse (URL)“). Dort ändere ich ebenfalls noch einmal den Domain-Namen um, in „http://localhost/wordpress-live“.

    Das war es. Nun ist WordPress aus der Produktivumgebung in die Testumgebung übertragen und lokal abrufbar (so lange XAMPP läuft).

    Kommentare erwünscht.

Ansicht von 6 Antworten - 1 bis 6 (von insgesamt 6)
  • Kommentare erwünscht.

    Du könntest in der Options-Tabelle der Datenbank auch noch den „home“-Eintrag ändern, das wäre der Seiten-Adresse-Eintrag, den Du am Ende manuell in WP änderst.

    Alle Bilder sind jetzt aber noch absolut verlinkt, das könntest Du per Suchen & Ersetzen lösen:
    http://interconnectit.com/products/search-and-replace-for-wordpress-databases/
    http://wordpress.org/plugins/search-and-replace/

    Die User/Passwort-Angaben sind nur für Xamp gültig. Bei Mamp (einer ähnlichen Software für den Mac) ist es root/root (also root als Benutzer und root als Passwort).

    Explizit für diesen Zweck kann man auch dieses Plugin benutzen:
    http://wordpress.org/plugins/wp-migrate-db/
    Das sind die beiden Schritte schon kombiniert.

    Gruß, Torsten

    Moderator espiat

    (@espiat)

    Torsten hat vollkommen recht. Das Problem hierbei besteht, dass die Links in allen Seiten und Beiträgen ja immer noch auf die alte Domain zeigen.

    Nun könnte man auf die Idee kommen, dass das ganze einfach per Suche und Ersetzen in phpMyAdmin funktioniert. Das ist leider FALSCH.

    Hierbei übersieht man oft, dass Daten „serialized“ gespeichert werden.
    http://www.php.net/manual/de/function.serialize.php

    Hierbei benutze ich selbst oft diese Lösung:
    http://interconnectit.com/products/search-and-replace-for-wordpress-databases/
    Jedoch habe ich bisher nur bei einigen Hostern mit der aktuellen Beta Version 3 erfolg gehabt. Die Version 2 funktioniert jedoch einwandfrei.

    Zu Schritt2:
    Eventuell muss man noch den „DB_HOST“ ändern in der wp-config.php

    Frage an WP-Crack: Sieht so aus als würdest du das als Vorlage für einen Artikel in deinem Blog benutzen? Du kannst ja den Link zum fertigen Artikel hier gerne posten.

    Gruss

    Hierbei übersieht man oft, dass Daten „serialized“ gespeichert werden.

    Genau! Gerade Plugins und Themes speichern so gerne ihre Einstellungen. Daher ist der Weg über das Skript besser.
    Das Migrate-Plugin macht das meines Erachtens auch korrekt.

    Eventuell muss man noch den „DB_HOST“ ändern in der wp-config.php

    Das war mir auch noch eingefallen. Ich habe dazu mal eine Liste gestartet:
    http://torstenlandsiedel.de/2012/08/31/datenbankserver-in-der-wp-config-php-konfigurieren/

    Erweiterungen für andere Hoster gerne auch hier posten (oder in meinem Blog als Kommentar).

    Gruß, Torsten

    Ahh, der home-Eintrag steht auf der 2. Seite der Liste – das muss einem doch einmal einer sagen! 😀

    Guter Tipp, mit dem Plugin. Danke.

    Was mir noch nicht ganz einleuchtet ist, was der Vorteil von den beiden genannten Tools sein soll:
    http://interconnectit.com/products/search-and-replace-for-wordpress-databases/
    http://wordpress.org/plugins/search-and-replace/

    Alle nötigen Ersetzungen kann ich auch mit Notepad++ durchführen. Vielleicht mag das jemand noch einmal etwas näher ausführen.

    Alle nötigen Ersetzungen kann ich auch mit Notepad++ durchführen. Vielleicht mag das jemand noch einmal etwas näher ausführen.

    Das ist nur eine Frage, welches Werkzeug man einsetzt. Du kannst es manuell per phpmyadmin machen oder per Editor in der exportieren SQL-Datei oder über das Plugin von Frank Bültge (Search & Replace). Alle haben das Problem, was Es piaT schon erklärt hat:

    Nun könnte man auf die Idee kommen, dass das ganze einfach per Suche und Ersetzen in phpMyAdmin funktioniert. Das ist leider FALSCH.

    Hierbei übersieht man oft, dass Daten „serialized“ gespeichert werden.
    http://www.php.net/manual/de/function.serialize.php

    Das von Es piaT und mir ebenfalls erwähnte Tool (kein Plugin):
    http://interconnectit.com/products/search-and-replace-for-wordpress-databases/
    kann serialisierte Daten korrekt anpassen, daher ist es besser als die Notepad++-Lösung.

    Auch das WP Migrate DB kann das:

    It even takes into account serialized data (both arrays and objects) and updates the string length values.

    Diese beiden Lösungen sind also zu empfehlen.

    Persönlich nutze ich das erstgenannte.

    Hat jemand Erfahrungen mit WP Migrate DB?

    Gruß, Torsten

Ansicht von 6 Antworten - 1 bis 6 (von insgesamt 6)
  • Das Thema „WordPress von Produktivumgebung nach Testumgebung übertragen“ ist für neue Antworten geschlossen.