本文详细介绍在 PostgreSQL 中切换和选择数据库的三种常用方法。涵盖在 psql 命令提示符中使用 \c 命令切换、通过系统命令行启动时指定数据库名,以及使用 pgAdmin 图形界面直接点击选择。每种方法均提供具体操作步骤和命令示例,帮助用户快速连接目标数据库进行开发或管理。
选择数据库后的界面状态
成功选择或切换数据库后,PostgreSQL 的命令提示符会发生变化,显示当前连接的数据库名称。例如,从默认的 postgres 切换到 runoobdb 后,提示符将从 postgres=# 变为 runoobdb=#。这标志着后续执行的 SQL 语句将在该数据库上下文中运行。
第1步:在 psql 命令窗口中切换数据库
如果你已经通过 psql 命令连接到了 PostgreSQL 服务器,但默认进入的是 postgres 数据库,可以使用内置的元命令(Meta-commands)来切换。
操作目的:在当前会话中切换到另一个已存在的数据库。
具体步骤:
- 在命令提示符
postgres=#后,首先可以使用\l(或\list)命令查看当前服务器上所有可用的数据库列表,确认目标数据库存在。
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+---------+-------+-----------------------
postgres | postgres | UTF8 | C | C |
runoobdb | postgres | UTF8 | C | C |
template0 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | postgres | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
(4 rows)
- 使用
\c(或\connect)命令后跟数据库名称来切换连接。
postgres=# \c runoobdb
You are now connected to database "runoobdb" as user "postgres".
runoobdb=#
完成判断:提示符变为 runoobdb=#,表示已成功切换至 runoobdb 数据库。
第2步:在系统命令行启动时指定数据库
如果你尚未连接数据库,可以直接在操作系统的终端(Terminal 或 CMD)中,通过 psql 命令连接时指定目标数据库名称。这是最直接的连接方式。
操作目的:在启动 psql 客户端时直接连接到指定数据库,避免后续切换步骤。
具体步骤:
- 打开操作系统的命令行工具。
- 输入
psql命令,并依次指定主机(-h)、端口(-p)、用户名(-U)以及目标数据库名。
$ psql -h localhost -p 5432 -U postgres runoobdb
Password for user postgres: ****
psql (11.3)
Type "help" for help.
You are now connected to database "runoobdb" as user "postgres".
runoobdb=#
参数说明:
-h localhost:指定数据库服务器地址,本地通常为localhost。-p 5432:指定 PostgreSQL 默认端口号。-U postgres:指定登录用户名。runoobdb:目标数据库名称,放在命令最后。
完成判断:系统提示输入密码,验证通过后,命令行直接显示 runoobdb=#,表示已连接成功。
第3步:使用 pgAdmin 图形界面选择数据库
对于偏好图形界面的用户,pgAdmin 提供了更直观的操作方式。无需记忆命令,只需通过鼠标点击即可完成数据库的选择和连接。
操作目的:通过可视化界面快速切换数据库并查看其属性。
具体步骤:
- 打开 pgAdmin 工具并连接到服务器。
- 在左侧的对象浏览器树状结构中,展开
Databases(数据库)节点。 - 找到目标数据库(例如
runoobdb)。 - 直接点击该数据库名称,或者右键选择
Connect(连接)。

完成判断:右侧的查询工具(Query Tool)会自动切换到所选数据库的上下文,你可以在其中直接执行 SQL 语句。同时,数据库的属性信息(如所有者、编码等)也会在右侧面板中显示。
常见问题与调整
- 问题:切换数据库时提示
FATAL: database "xxx" does not exist。 - 原因:指定的数据库名称拼写错误或该数据库尚未创建。
- 解决方法:使用
\l命令确认数据库列表,确保名称完全一致(PostgreSQL 默认不区分大小写,除非创建时使用了双引号包裹且包含大写字母)。
- 问题:命令行连接时提示
Connection refused。 - 原因:数据库服务未启动,或指定的主机/端口不正确。
- 解决方法:检查 PostgreSQL 服务状态,确认
pg_hba.conf和postgresql.conf中的监听设置。
总结
在 PostgreSQL 中选择数据库主要有三种途径:在已连接的 psql 会话中使用 \c 命令切换;在系统命令行启动时直接指定数据库名;或使用 pgAdmin 图形界面点击选择。掌握这些方法,可以灵活应对不同开发和管理场景的需求。
以上就是 PostgreSQL 选择数据库的详细内容,更多关于 PostgreSQL 基础操作的知识请关注本站其它相关文章!
