クラウド関数から 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"
を使用して Unix ソケット経由で Postgresql 9.6 DB に接続する正しい方法は何ですかpyscopg2
?
ベストアンサー1
ここで必要な特別なキーワードは次のとおりです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