使用SQLAlchemy通过Unix套接字连接到数据库

时间:2019-03-03 10:02:59

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

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

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 DB的正确方法是什么?

1 个答案:

答案 0 :(得分:2)

此处所需的特殊关键字是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