Nachdem ich eine neue Umgebung mit WP-CLI db
import
export
habe, muss ich eine Datenbank von einer Website importieren, auf der WP-CLI noch nicht installiert war.
Was ist die beste Nicht-WP-CLI-Exportmethode für den WP-CLI-Import?
Hintergrundgeschichte: Ich habe Basic WordPress Vagrant Environment für lokale Tests verwendet und vor kurzem hat der Autor WP-CLI hinzugefügt. Je mehr ich damit rumgespielt habe, desto mehr bin ich verliebt. Ich bin sogar so weit gegangen, ein bash-Skript zu erstellen, um neue Vagrant -Kästchen mit nur einem Namen zu erstellen.
Ist es besser, einen Export im WXR-Format über das WordPress-Skript export panel oder script durchzuführen, dann verwenden Sie die WP-CLIs import
?
require ABSPATH . 'wp-admin/includes/export.php';
// Buffer output
ob_start();
// Generates the WXR export file for download.
$defaults = array (
'content' => 'all', 'author' => false, 'category' => false,
'start_date' => false, 'end_date' => false, 'status' => false,
);
export_wp( $defaults );
// Get the buffer contents
$xml_export_data = ob_get_clean();
echo $xml_export_data;
Oder gibt es eine ähnliche Möglichkeit wie oben, mit der ich den WP-CLI db-Exportcode nutzen und eine Datei erstellen kann, die zum Importieren bereit ist.
$ wp db export /vagrant/site/site_export.sql
Success: Exported to /vagrant/site/site_export.sql
Der einfachste Weg für meinen Haupt- (wichtigsten Server) ist, einfach einen mysqldump direkt über SSH auszuführen.
# backup:
mysqldump -u root -p[root_password] [database_name] > dumpfilename.sql
# restore:
mysql -u root -p[root_password] [database_name] < dumpfilename.sql
Ich bin mir nur nicht sicher, ob der reguläre SQL-Dump alle für einen WP-CLI-Import erforderlichen Werte enthält.
Eine einfache mysqldump
könnte das einzige sein, was benötigt wird. Jetzt denke ich, ich hätte vor dem Import alle Dateien übertragen sollen ... Ich werde auf dem Laufenden bleiben, aber dies könnte ein zweizeiliger Prozess sein.
Exportieren
Sudo mysqldump -u root -pPASSWORD DBNAME > filename.sql
Importieren
wp db import filename.sql
Das ist also sehr schmerzlos. Der Server-Dump ist genau das, was WP-CLI benötigt, um zu importieren .
REMOTE
Sudo mkdir backup
Sudo chown -f -R ec2-user:group backup
cd backup
Sudo mysqldump -u root -pPASSWORD DBNAME > filename.sql
Aus.LOCAL
filename.sql
in meinen Vagrant-Ordner heruntervagrant ssh
wp db import /vagrant/filename.sql
wp search-replace old-site.com new-site.dev --test-run
wp search-replace old-site.com new-site.dev
wp search-replace 'http://example.dev' 'http://example.com' --skip-columns=guid
ersetzen.