2016-04-28 132 views
1

我想减少开始使用我的web应用程序的需求数量。在开始调试之前,您需要运行“创建数据库,创建用户,授予全部”脚本。在连接上创建PostgreSQL数据库

我希望代码被检出并立即运行,而不需要开发人员阅读大量文档并执行大量手动步骤。

h2允许您指定一个连接字符串,并且它会创建数据库,如果它尚不存在。

使用PostgreSQL可以这样做吗?

或者是我唯一的选择(满足要求)配置h2开发工作和PostgreSQL生产?

+0

“*要检出并立即运行的代码*”根本不适用于基于服务器的数据库。您将始终需要首先安装该数据库服务器。与安装DBMS服务器相比,创建数据库和用户是一个相对较小的步骤。所以答案是:不,这对于Postgres来说是不可能的。如果你真的想要,你将不得不使用嵌入式DBMS –

回答

0

Postgres中的连接总是指向特定的数据库,但默认情况下,每个安装都会有一个用于运行维护命令的postgres DB。用户仍然需要提供一些超级用户登录凭证,但假设您拥有这些凭证,则可以在第一次访问webapp时自动运行“创建数据库,创建用户,授予全部”脚本。

例如,有一个生成的配置文件在源代码管理中被忽略;在加载文件之前,检查它是否存在;如果没有,请运行安装例程。

您甚至可以加载HTML表单,允许用户提供超级用户凭据,为数据库选择名称以及任何其他常见更改的配置选项。如果这些都是默认的,那么“手动步骤”只是浏览它们是正确的,然后单击“确定”。