doureng1083 2014-10-01 04:49
浏览 41
已采纳

使用PHP - > SSH - > MYSQLDUMP复制远程MySQL数据库失败时无法获取错误代码

I created a script to copy a remote database using mysqldump inside a SSH connection. Then i ported to my PHP script so i can better manage several servers.

My problem is when the copy fails... I get no error code from the command.

This is the command:

ssh -p22 -i mykey.key -oStrictHostKeyChecking=no -oUserKnownHostsFile=/dev/null backup@hostname "mysqldump -hlocalhost -udbuser --databases db" > myfile.sql

It works =)

PHP code with simplified systax:

$comando = 'ssh -i mykey.key backup@hostname "mysqldump --databases db" > myfile.sql';
$ret_text = exec($comando, $output, $ret);
// Doesnt matter if command fails or sucess, result is?
//$ret = empty
//$output = empty
//$ret_text = empty

I need to know when the copy failed, does anyone know how to get a remote error code?

Thanks

  • 写回答

1条回答 默认 最新

  • dqingn8836 2014-10-02 10:39
    关注

    neubert Solution Works! Thanks...

    I ended with:

    $comando = 'ssh -i mykey.key backup@hostname "mysqldump --databases db 2>&1\" 2>&1 > myfile.sql';
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部