gpt4 book ai didi

postgresql - 使用postgres pg_dump命令时转义包含@的密码

转载 作者:行者123 更新时间:2023-11-29 11:28:23 25 4
gpt4 key购买 nike

我正在使用 postgres,我创建了数据库、用户、密码,这是密码:

密码 = name&text@sob

我正在使用以下命令转储数据库,它适用于我拥有的其他数据库:

pg_dump -Fc --no-acl --no-owner --dbname=postgresql://db_user:password@127.0.0.1:5432/db_name

但是当使用密码包含&的数据库时它不起作用和 @ :

pg_dump -Fc --no-acl --no-owner --dbname=postgresql://db_user:name&text@sob@127.0.0.1:5432/db_name

因为 & 不工作和 @在密码中 - 所以我逃脱了 &\但它不适用于 @ - 有什么建议吗?

谢谢

最佳答案

添加 ?password=name%26te‌ xt%40sob 作为 uri 参数应该这样做:

pg_dump -Fc --no-acl --no-owner --dbname=postgresql://db_user:password@127.0.0.1:5432/db_name?password=name%26te‌​xt%40sob

根据 https://www.postgresql.org/docs/current/static/libpq-connect.html#LIBPQ-CONNSTRING

Components of the hierarchical part of the URI can also be given as parameters.

更新

正如 Roko 所注意到的,URL 必须是 encoded

关于postgresql - 使用postgres pg_dump命令时转义包含@的密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44561378/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com