我正在尝试使用来 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/