Django PostgreSQL设置与分离的凭证文件?

时间:2017-06-04 09:46:56

标签: django postgresql psycopg2 django-settings

我想将我的django数据库从MySQL迁移到PostgreSQL。 以前我使用过数据库配置选项,就像Django website中的这个例子一样。

MySQL引擎数据库设置有选项:' read_default_file',所以我可以在外部文件上分离我的数据库凭据。

现在我已准备好使用psycopg2引擎切换到PostgreSQL,但我找不到像read_default_file这样的类似选项。

这有什么解决方案吗?

或者可能是我应该更改为具有此选项的PostgreSQL的其他数据库引擎?感谢

1 个答案:

答案 0 :(得分:3)

read_default_file纯粹是一个mysql的东西。它不能用于postgresql。 postgresql中最接近的等价物是.pgpass文件,该文件需要在运行psql客户端的用户的主目录中创建。这定义了用户的密码。

当你在开发中使用django时,在你的主目录中创建一个文件就可以了。但在生产中你不应该运行django dev服务器。生产WSGI服务器在可能没有主目录的受限用户帐户下运行。在这种情况下,您需要使用PGPASSFILE环境变量来告诉django在哪里查找密码。