使用Vagant Box上的WP-CLI导出要导入的WP数据库

时间:2016-01-29 作者:jgraup

问题现在我有了一个新的环境WP-CLI db import / export 我需要从从未安装WP-CLI的网站导入数据库。

问题

WP-CLI导入的最佳非WP CLI导出方法是什么?

背景故事:我一直在使用Basic WordPress Vagrant Environment 对于本地测试,作者最近添加了WP-CLI. 我玩得越多,我就越爱它。我甚至创造了一个bash script 启动新的Vagrant 仅使用名称的框。

通过WordPress以WXR格式导出是否更好export panelscript 然后使用WP-CLIimport?

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;
或者是否有类似的方法可以利用WP-CLIdb export code 并生成一个文件imported.

$ wp db export /vagrant/site/site_export.sql
Success: Exported to /vagrant/site/site_export.sql
对于我的主服务器(最重要的服务器),最简单的方法就是mysqldump 直接通过SSH。

# backup:
mysqldump -u root -p[root_password] [database_name] > dumpfilename.sql

# restore:
mysql -u root -p[root_password] [database_name] < dumpfilename.sql
我只是不确定常规SQL转储是否会保存WP-CLI导入所需的所有值。

更新一个简单的mysqldump 可能是唯一需要的东西。现在我想我应该在导入之前转移所有文件。。。我会随时通知你,但这可能是一个两行的过程。

1 个回复
最合适的回答,由SO网友:jgraup 整理而成

短裤

Export

sudo mysqldump -u root -pPASSWORD DBNAME > filename.sql

Import

wp db import filename.sql


很长,所以这是非常无痛的。服务器转储正是WP-CLI 需要import.

REMOTE

  1. sudo mkdir backup <为文件创建目录
  2. sudo chown -f -R ec2-user:group backup <为我的SSH用户设置目录权限
  3. cd backup<进入董事会sudo mysqldump -u root -pPASSWORD DBNAME > filename.sql <最初我遇到权限错误,这是因为我的EC2-USER需要控制输出目录

LOCAL

<下载filename.sql 到我的流浪者文件夹vagrant ssh <进入WP-CLI访问框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.devrecommends 不更改GUID。您可以跳过搜索中的GUID并替换为wp search-replace \'http://example.dev\' \'http://example.com\' --skip-columns=guid
  • 相关推荐

    如何终止WP-CLI执行?

    我正在Windows 10和XAMPP上试用WP-CLI。我可能不理解它是如何工作的,因为我认为从XAMPP控制面板停止Apache会停止命令行上的WP-CLI脚本执行。我在一个插件类中有一个长时间运行的脚本,其中有一个进度条。我开始运行它,然后决定进行一些修改。我从控制面板上停止了Apache和MySQL,进度条一直在运行。脚本似乎没有停止运行。WP-CLI是否;“运行”;是自己的服务器吗?是否可以终止WP-CLI中所有正在运行的进程?