如何为PostgreSQL';是否以非交互方式创建数据库?

如何为PostgreSQL';是否以非交互方式创建数据库?,postgresql,jenkins,phing,Postgresql,Jenkins,Phing,我在phing中有一个任务,在测试之前,我会删除数据库(如果存在)并创建它。这是在詹金斯身上运行的。 我想用createdb这样做: <exec command="createdb my_database" /> 问题是createdb要求我进行身份验证,添加-Umy_用户参数不是问题-问题是我无法在createdb命令中指定密码。我不想为系统用户创建角色(在本例中为“jenkins”)。有解决办法吗 createdb将使用环境变量(如果已设置),这是在非交互式运行中提供密码的

我在phing中有一个任务,在测试之前,我会删除数据库(如果存在)并创建它。这是在詹金斯身上运行的。 我想用createdb这样做:

<exec command="createdb my_database" />


问题是createdb要求我进行身份验证,添加-Umy_用户参数不是问题-问题是我无法在createdb命令中指定密码。我不想为系统用户创建角色(在本例中为“jenkins”)。有解决办法吗

createdb
将使用环境变量(如果已设置),这是在非交互式运行中提供密码的一种简单方法


另一个选项是在unix用户的主目录中设置一个文件,启动
createdb

With.pgpass,我最初尝试输入一行指定要创建的数据库的名称。但是,我仍然在
createdb
上得到密码提示。似乎数据库名称必须是
*
。如果我使用
PGPASSWORD
var,用户名将使用什么?用户名是否默认为
root
?@JamesWierzba:db用户名默认为操作系统用户名。