postgresql - 使用 SQLAlchemy 通过 unix 套接字连接到数据库

标签 postgresql sqlalchemy google-cloud-functions google-cloud-sql unix-socket

我正在尝试使用来 self 的云函数的 SQLAlchemy 连接到我的 Cloud SQL 数据库,但我似乎无法计算出正确的连接字符串。

DATABASE_URL=postgres://$DB_USER:$_DB_PWD@/$DB_NAME?unix_socket=/cloudsql/$DB_INSTANCE

这给了我错误:

pyscopg2.ProgrammingError: invalid dns: invalid connection option "unix_socket"

使用 pyscopg2 通过 unix 套接字连接到 Postgresql 9.6 数据库的正确方法是什么?

最佳答案

这里需要的特殊关键字是host:

DATABASE_URL=postgres://user:password@/dbname?host=/path/to/db

请注意,host 中的路径应该是路径,而不是套接字文件本身(psycopg2 假定套接字具有标准命名约定 .s.PGSQL.5432)

https://docs.sqlalchemy.org/en/latest/dialects/postgresql.html#unix-domain-connections

关于postgresql - 使用 SQLAlchemy 通过 unix 套接字连接到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54967660/

相关文章:

java - 使用 Spring Data jpa JPQL/HQL 删除查询

java - JDBC 查询抛出语法错误

python - 过滤 Sqlalchemy 关系条件

python - 如何在 SQLAlchemy 中将 "ANY"过滤器与 "<<="运算符结合使用?

database - Firestore : How to Store Data on User and Global Levels with Calculations?

node.js - 如何使用云函数更新集合?

postgresql - 如何在 PostgreSQL 中对表的每一行应用一个过程(不是触发器)

hibernate - PostgisDialect 与 PostgreSQLDialect 或两者兼而有之?

flask - 您可以并行运行多个 Flask SQLAlchemy 查询吗?

javascript - 如何使用 Firebase 模拟器从单元测试中调用 firebase 函数?