我已经搜索了相关问题,但仍未找到答案。
我正在使用Wordmove尝试在WordPress的本地环境和实时环境之间推/拉数据库(在OSX的AMPPS上运行)。由于WP-Sync-DB的分支对我来说不再起作用,并且现在似乎已被放弃,因此我重新尝试了Wordmove方法。这是在WordPress环境之间迁移数据库的最佳免费方法。
运行wordmove pull -e runcloud --db
时出现的错误是sh: mysqldump: command not found
我正在使用Zsh,并且已经向我可以在系统上找到的唯一mysqldump添加了符号链接:.zprofile中的alias mysqldump='/Applications/AMPPS/mysql/bin/mysqldump --host=localhost -uroot -proot'
。它也包含在我的.bash_profile中。没有该行,我只会得到mysqldump not found
(通过注释该行并在每次更改后需要重新启动iTerm进行验证)。
所以现在如果我输入which mysqldump
,我会得到mysqldump: aliased to /Applications/AMPPS/mysql/bin/mysqldump --host=localhost -uroot -proot
但是Wordmove的错误仍然存在。我在Wordmove Github上打听过,作者说如果配置了mysqldump,这将是一个错误。
免责声明:我对CLI一点都不了解,只知道足够使用Wordmove之类的工具和SSH上的基本知识为Gulp配置环境。我选择Zsh是因为它使很多东西更易于使用和查看,但是为此进行的任何配置通常都会让我挠头!
我错过了这里明显的东西吗?也许符号链接设置不正确?
我在这里看到两个概念性问题:
(1)您不能导出别名。当前Zsh中定义的别名不会自动在子Zsh中可见。
((2)您的错误消息说]
sh:mysqldump:找不到命令
这意味着在寻找mysqldump时甚至不涉及Zsh。这是运行的Posix Shell脚本。
因此,要使用的每种机制都必须与Posix shell配合使用,这意味着您需要在PATH中使用一个名为mysqldump
的程序(合适的shell脚本),然后使用您拥有的参数调用原始的mysqldump
请记住。
请确保已设置PATH,以便在/ Applications / AMPPS / mysql / bin中找到mysqldump
的私有版本之前。