Tha*_* K. 6 postgresql unix-socket node.js sequelize.js
我想通过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);
Run Code Online (Sandbox Code Playgroud)
启动应用程序时出现的错误:
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"',...
Run Code Online (Sandbox Code Playgroud)
显然,sequelize仍在尝试localhost代替Unix套接字,并且pg_hba.conf按配置正确拒绝了它。有没有一种方法可以为Postgres和Unix套接字配置Sequelize?
在Node v5.1.0和Postgresql 9.5.0beta2上使用Sequelize 3.14.2。
| 归档时间: |
|
| 查看次数: |
1096 次 |
| 最近记录: |