これは、Javaでpg_dump 9.3を使用してデータベースをバックアップするために使用しているコードです。 私の問題は、常に結果ファイルが空で、終了コードが1だということです。 psql
についてはjavaを使用してpostgresデータベースをバックアップする方法
public static void backupDb() throws IOException, InterruptedException {
Runtime rt = Runtime.getRuntime();
Process p;
ProcessBuilder pb;
rt = Runtime.getRuntime();
pb = new ProcessBuilder(
"C:\\Program Files\\PostgreSQL\\9.3\\bin\\pg_dumpall.exe",
"--host", "localhost",
"--port", "5432",
"--username", "postgres",
"--no-password",
"--format", "custom",
"--blobs",
"--verbose", "--file", "D:\\service_station_backup.backup", "service_station");
p = pb.start();
p.waitFor();
System.out.println(p.exitValue());
}
が、なぜ、あなたはここにJavaを使用していますか? – e4c5
プロセス/アプリケーションは、ファイル場所@Abdelwahhabへの書き込みアクセス権を持っていますか?例えば、プロセスのユーザIDは何ですか?また、ユーザIDは出力ファイルにアクセスできますか? – pnorton
@pnortonはい、プロセスは出力ファイルにアクセスできますが、ファイルは正しく作成されますが、コンテンツはダンプされません。私は問題がpostgresサーバーのパスワードと思う。 – Wolverine219