postgresql - 如何以非交互方式为 PostgreSQL 的 createdb 提供密码?

标签 postgresql jenkins phing

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

<exec command="createdb my_database" />

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

最佳答案

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

另一种选择是设置 .pgpass启动 createdb 的 unix 用户的主目录中的文件。

关于postgresql - 如何以非交互方式为 PostgreSQL 的 createdb 提供密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13351078/

相关文章:

nginx - 包含多个 phar 文件时出现 Php5-FPM 错误

postgresql - 我如何将 Postgres DateRange 类型与 TypeOrm 一起使用

php - 如何使用 PHP 显示 postgresql 搜索结果

xcode - 你如何配置 XCode Jenkins 插件来运行测试?

node.js - 使用 Jenkins 自动化 CoffeeScript 编译

php - 为 PHP 项目设置部署/构建/CI 周期

sql - Oracle 在 PostgreSQL 中提取 xml

python - 使用 psycopg2 插入多词字符串和空数组

jenkins - 如何使用 Jenkins job dsl 为 gitlab 插件设置 secret token ?

scope - 通过 <phingcall> 调用的目标不会在调用目标中设置属性