通过 psql 登录并连接到 PostgreSQL 服务器的方法
选项 1. 命令提示符
-U和-d可以省略不写。
psql
# パスワード
psql ユーザ名 データベース名
# パスワード
psql -U ユーザ名 -d データベース名
# パスワード
psql -h ホスト -p ポート ユーザ名 データベース名
# パスワード
psql -h ホスト -p ポート -U ユーザ名 -d データベース名
# パスワード
# 省略した場合
# ユーザ名: ログインしている OS のユーザ名
# データベース名: ログインしている OS のユーザ名
# ホスト: localhost, 127.0.0.1
# ポート: 5432
- psql – PostgreSQL: Documentation
◯ 注销/断开连接方法 /
斜杠“ \ ”和字母“ q ”
\q
如果输入密码很麻烦的话
据说可以使用环境变量PGPASSWORD进行以下方式的写法。
PGPASSWORD=パスワード psql -U ユーザ名 データベース名
- How do I specify a password to ‘psql’ non-interactively? – Stackoverflow
◯ 如果忘记了密码
如果管理员忘记了拥有 Administrator 权限的用户(准确的说是一个角色)的密码,可以通过修改 pg_hba.conf 文件来禁用密码。对于非 Windows 系统,可以使用以下命令查找文件的位置:
find / -name ‘pg_hba.conf’ 2>/dev/null根据需要将 md5 和 peer 更改为 trust。请查阅链接以获取详细信息。
find / -name ‘pg_hba.conf’ 2>/dev/null根据需要将 md5 和 peer 更改为 trust。请查阅链接以获取详细信息。
Postgresql 密码忘记 – Google 搜索结果
重置忘记的 postgres 用户密码 – POSTGRES教程
使用 Rails 运行 pgsql 时出错:用户 “postgres” 的对等身份验证失败 – Stackoverflow
◯ 广告观点
这是由2023年11月13日由マイナビ転職运营的媒体发布的广告。

- ttps://meetscareer.tenshoku.mynavi.jp/entry/data_01/vo
上述的文章中提到,“感受到工作价值”的时候不是“获得与工作相匹配的报酬”,而是“感受到成长”的时候。我认为企业可以向劳动者提供两种可明文化的价值,即“待遇”和“职业发展”。企业可以向劳动者提供的价值包括:1. 待遇,包括1.1年薪和1.2福利;2. 职业发展,包括2.1成长,其中又包括工作动力和乐趣。我害怕的是这篇文章中透露出企业希望低薪工作者辞职的意图。我认为,“职业发展”是“待遇”的提供者,没有提供“职业发展”的企业即使提供很好的“待遇”也是黑企业。我还觉得这篇文章令人担心的地方有两点。首先是人们在确定辞职的标准时,将“工作动力”作为“职业发展”的附属物,并将其与“待遇(年薪)”平等对比,即使二者无法相比,并且似乎将“工作动力”置于比“待遇(年薪)”更高的优先级。其次是将“职业发展”用模糊的“成长”一词来描述。任何技能只要发展就会有“成长”,但这是否有助于“职业发展”是另外一个问题。这篇文章显示出的态度或立场是用模糊的“成长”一词来回避承诺提供“职业发展”的。
选项2. 环境变量
export PGUSER=ユーザ名
export PGPASSWORD=パスワード
export PGHOSTNAME=ホスト
export PGPORT=ポート
export PGDATABASE=データベース名
- 33.14. Environment Variables – PostgreSQL: Documentation
方法3:密码文件
文件格式
用冒号(:)进行分隔。
ホスト:ポート:データベース名:ユーザ名:パスワード
◯ 文件的位置 de
1. Windows の場合
%APPDATA%\postgresql\pgpass.conf
2. それ以外 OS の場合
~/.pgfile
3. あるいは環境変数 PGPASSFILE でファイルパスを指定できます。
- 33.15. The Password File – PostgreSQL: Documentation
总结
连接到PostgreSQL服务器时,您可以通过以下四种方式指定主机名等信息。
項目ホスト名ポート番号データベース名ユーザ名パスワードデフォルト値127.0.0.15432OS のユーザ名OS のユーザ名-プロンプト-h, –host-p, –port-d, –dbname-U, –username-環境変数PGHOSTPGPORTPGDATABASEPGUSERPGPASSWORDパスワードファイル12345
如果未指定值,则应用默认值。如果在提示符、密码文件和环境变量中分别指定了不同的值,则我没有调查哪个值优先使用,所以我不知道。
psql 是什么意思?
我认为以下两个点可能是关键。
-
- 区分PostgreSQL服务器和psql客户端
- 区分psql客户端和psql命令
psql 客户端是用于操作 PostgreSQL 服务器的交互式终端。psql 客户端可以独立作为一个应用程序运行。
psql – PostgreSQL 互动终端
psql客户端不仅可以操作在自己计算机上运行的PostgreSQL服务器,还可以操作在网络上其他计算机上运行的PostgreSQL服务器。这可以从psql命令中指定主机名和端口号来确认。
然后 psql 客户端可以通过 psql 命令启动。psql 是一个客户端。它与运行数据库的服务器不同。虽然有点复杂,但分清服务器和客户端会更好。
通过以下链接中 “PostgreSQL客户端应用程序” 列表中的psql命令,我们可以知道psql是一个客户端。
PostgreSQL客户端应用程序 – PostgreSQL:文档
我曾经对服务器和客户端是两个不同的实体的意识变得模糊。这是因为psql命令如果没有指定任何内容,它会回退并自动连接到本地的127.0.0.1服务器。