java调用pg_dump备份postgre数据库问题
在项目中,用java调用pg_dump进行postgre数据库备份,在本地机上跑,可以正确运行,发布
到其他机器上之后,会在调用外部程序,进行备份的地方卡住,代码如下:
/**备份数据库**/
File workPath=fetchDBInstallPath();//获取数据库的pg_dump工具的目录
if(workPath==null){
return false;
}
String dbBackupPath=fetchDBBackupPath();
StringBuffer sb=new StringBuffer();
sb.append( cmd /c pg_dump -h 127.0.0.1 -p 5432 -U postgres -F c -b -v
-f ).append(dbBackupPath+ \\ +fileName+ .backup ).append( dbname );
log.info( ********************************************** );
log.info( workPath= +workPath); www.docin.com
log.info( command: +sb.toString());
log.info( ********************************************** );
Process
process=Runtime.getRuntime().exec(sb.toString(),null,workPath);
log.info( ~~~~~~~~~~~~~~~~~~~~~~~~~~~ );<