当前位置:  开发笔记 > 编程语言 > 正文

Sequelize通过Unix套接字连接到Postgres

如何解决《Sequelize通过Unix套接字连接到Postgres》经验,为你挑选了0个好方法。

我想通过Unix套接字(而不是localhost)使用Sequelize连接到Postgres 。

Postgres配置为接受来自user的Unix套接字连接pgdba。所有工作都可以从命令行使用进行psql。因此,Pg端已正确配置。

我似乎找不到Sequelize配置来支持Unix套接字。我能找到的最接近用于mysql的mysql,但似乎没有用:

var sequelizeConfig = {
    dialect: 'postgres',
    dialectOptions: {
        socketPath: '/home/pgdba/data/5432/.s.PGSQL.5432',
    }
    port: 5432
};
var sequelize = new Sequelize('fooDb', 'pgdba', 'passwd', sequelizeConfig);

启动应用程序时出现的错误:

Unable to connect to the database: +23ms { [SequelizeConnectionError: pg_hba.conf rejects connection for host "127.0.0.1", user "pgdba", database "fooDb"]
  name: 'SequelizeConnectionError',
  message: 'pg_hba.conf rejects connection for host "127.0.0.1", user "pgdba", database "fooDb"',...

显然,sequelize仍在尝试localhost代替Unix套接字,并且pg_hba.conf按配置正确拒绝了它。有没有一种方法可以为Postgres和Unix套接字配置Sequelize?

在Node v5.1.0和Postgresql 9.5.0beta2上使用Sequelize 3.14.2。

推荐阅读
家具销售_903
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有