我试图通过将数据库复制到本地机器来同步本地主机上的数据库和服务器上的数据库。
我有以下 shell 命令,可以在终端中正常运行:
ssh user@server "mysqldump -u user -p'secret' db-name" | mysql -u local_user -p'secret' db-name
ssh 登录已自动使用密码,如 question@Serverfault .
我已经尝试在 php 中通过 exec()
执行此命令,但我没有得到任何结果。
exec(ssh user@server "mysqldump -u user -p'secret' db-name" | mysql -u local_user -p'secret' db-name)
关于如何进行的任何想法?
最佳答案
改用 ssh_exec
( docs )。
<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$stream = ssh2_exec($connection, '/usr/local/bin/php -i');
?>
关于php - 在 php 中通过 `mysqlddump` 将数据库与 `exec()` 同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46279380/