2017-02-15 1 views
0

これは奇妙な問題です。私は3つのデータベースを含むSQLファイルにデータベースをダンプしているビルドスクリプトを持っています。リモートのmysqlインポート:そのようなファイルやディレクトリはありません

その後、私は(作品)ステージングサーバーにファイルをアップロードし、私が実行したり、コマンドを実行すると:

sshpass -p 'webmin' ssh [email protected] mysql -u root < /var/www/complete_db.sql 

私はエラーを取得する:

bash: /var/www/complete_db.sql: No such file or directory 

正しくされていない - それは、ほとんどのそのパスのステージングサーバー上にあります。 Iリモートサーバーにする場合と実行します。

mysql -u root < /var/www/complete_db.sql 

を期待どおりにインポートし、すべてが正常に動作します...

私は

sshpass -p 'webmin' ssh [email protected] ls -al /var/www 

を行う場合でも、私は明らかに上のファイルを見ることができますサーバー...任意のアイデア?

+0

恐ろしい - それはそれをくそだったこと - なぜ私はそのことを考えていませんでした:)どうもありがとうございます! –

+0

問題ありません。私は答えとしてそれを追加して、今それを行う必要があります –

答えて

0

< /var/www/complete_db.sqlの部分がsshpassに渡されていて、リモートサーバーに送信されているコマンドの一部ではありません。

引用のいくつかの巧妙な使用は、おそらくそれを修正することができます - 私は引用符の中に全体のリモートコマンドを入れて試してみた:

sshpass -p 'webmin' ssh [email protected] "mysql -u root < /var/www/complete_db.sql" 
関連する問題