【发布时间】:2019-10-22 22:13:38
【问题描述】:
我有一个场景,我需要每天将生产数据库复制到我的开发数据库。两者都是不同的服务器。我想过写一个可以做这些事情的cronjob。我写了一个php脚本。我通过sshpass 连接到远程生产服务器,获取其转储然后填充该转储。
exec("sshpass -p 'mypassword' ssh root@IP_ADDRESS:PORT");
exec("mysqldump -u root -p DB > production_dump.sql");
exec("mysql -u root -p test < production_dump.sql");
但是在第一行它会抛出声明错误
ssh: Could not resolve hostname IP_ADDRESS:PORT: Name or service not known
我在互联网上尝试过给出的解决方案,但没有一个有效。任何人都可以解释我做错了什么吗?
【问题讨论】:
-
备份/恢复?
-
看起来你写的是用 PHP 包装的 bash 脚本?为什么不让它成为纯粹的 bash?
-
@MarcinOrlowski 因为我对此不太熟悉,也不知道如何在上述情况下实现这一点,例如将其作为 cron 作业运行