Postgresql

從 stdin 上給出的轉儲中恢復 postgres 數據庫本地的腳本 - 不明確的重定向

  • November 7, 2014

執行此命令:

sshpass -p "pass" ssh x@1.2.3.4 "pg_dump -U foo some_db"

執行良好。它在標準輸出上返回 db 的轉儲。

然後我想恢復new_db基於重定向到標準輸入的轉儲

psql -U foo -d new_db < `sshpass  -p "pass" ssh  x@1.2.3.4 "pg_dump -U foo some_db"`

我收到錯誤:ambiguous redirect

我建議這樣做:

sshpass  -p "pass" ssh  x@1.2.3.4 "pg_dump -U foo some_db" | psql -U foo -d new_db

這會將 ssh 標準輸出通過管道傳輸到 psql 標準輸入。

引用自:https://dba.stackexchange.com/questions/82156