PostgreSQL 是一款功能强大的数据库,既能存传统的表格数据,也能处理 JSON 这类非结构化数据,深受开发者喜爱。但对新手来说,刚接触时可能会被各种命令搞得晕头转向。今天就整理了 20 个最常用的 PostgreSQL 命令,从登录到备份,手把手带你快速上手。
一、基础操作:登录与切换
1. 登录 PostgreSQL 服务器
首先要进入 PostgreSQL 的命令行环境。默认有个 postgres 超级用户,先用它登录:
# 切换到 postgres 用户(需要 root 权限)
su - postgres
# 进入 PostgreSQL 命令行
psql
成功后会看到 postgres=# 提示符,说明已经进入数据库交互模式。
2. 退出 PostgreSQL
不想玩了?输入 \q 退出:
postgres=# \q
二、数据库管理:创建、删除、查看
3. 创建新数据库
用 CREATE DATABASE 命令,比如创建一个叫 db_1 的数据库:
postgres=# CREATE DATABASE db_1;
也可以直接在 Linux 终端创建(不用进入 psql):
createdb db_1
4. 删除数据库
确认不要了再删,用 DROP DATABASE:
postgres=# DROP DATABASE db_1;
终端直接删:
dropdb db_1
5. 查看所有数据库
想知道服务器里有哪些数据库?输入 \l(小写 L):
postgres=# \l
会列出数据库名称、所有者、编码等信息。
6. 切换到指定数据库
操作数据库前,需要先"进入"它,用 \c 命令:
postgres=# \c db_1
提示符会变成 db_1=#,说明已经切换到 db_1 数据库了。
三、表操作:创建、查看、修改
7. 创建表
进入数据库后,用 CREATE TABLE 创建表,比如建一个 users 表存用户信息:
db_1=# CREATE TABLE users (
id INT,
name VARCHAR(50), -- 姓名,最长50个字符
join_date DATE -- 加入日期
);
8. 查看所有表
想知道当前数据库有哪些表?输入 \dt:
db_1=# \dt
会显示表名、类型、所有者等。
9. 查看表结构
想知道表有哪些字段?用 \d 表名:
db_1=# \d users
会列出字段名、类型、是否为主键等信息。
10. 给表添加字段
表建好后想加个新字段(比如用户的邮箱):
db_1=# ALTER TABLE users ADD email VARCHAR(100);
11. 删除表中的字段
如果某个字段没用了,比如删掉 join_date:
db_1=# ALTER TABLE users DROP join_date;
四、用户与权限:角色管理
12. 创建角色(用户)
PostgreSQL 用"角色"管理权限,创建一个能登录的角色 user1:
postgres=# CREATE ROLE user1 WITH LOGIN ENCRYPTED PASSWORD '123456' CREATEDB;
LOGIN:允许这个角色登录ENCRYPTED PASSWORD:设置密码(记得换成复杂密码)CREATEDB:允许这个角色创建数据库
13. 查看所有角色
输入 \du 查看服务器上的所有角色:
postgres=# \du
能看到角色的权限、是否为超级用户等。
14. 给角色授权
让 user1 拥有 db_1 数据库的所有权限:
postgres=# GRANT ALL PRIVILEGES ON DATABASE db_1 TO user1;
15. 修改角色权限
比如让 user1 成为超级用户(谨慎使用!):
postgres=# ALTER ROLE user1 SUPERUSER;
16. 删除角色
如果角色没用了,用 DROP ROLE 删除:
postgres=# DROP ROLE user1;
五、备份与恢复:数据安全
17. 备份单个数据库
用 pg_dump 命令备份 db_1 到 backup.sql:
# 在 Linux 终端执行(不用进 psql)
pg_dump db_1 > backup.sql
18. 恢复数据库
从备份文件 backup.sql 恢复 db_1:
# 先确保 db_1 已经存在,或者新建一个
psql db_1 < backup.sql
19. 备份所有数据库
用 pg_dumpall 备份服务器上的所有数据库:
pg_dumpall > all_databases_backup.sql
六、其他实用技巧
20. 查看数据库运行参数
想知道数据库的配置?输入 SHOW ALL:
postgres=# SHOW ALL;
会列出所有运行参数,比如内存设置、编码格式等。
21. 用图形界面管理:phpPgAdmin
如果觉得命令行麻烦,可以装个网页版管理工具 phpPgAdmin,像操作 Excel 一样管理数据库。具体安装方法可以搜对应系统的教程(比如 CentOS、Ubuntu 安装方法略有不同)。
总结:新手必备命令速查表
| 操作 | 命令 |
|---|---|
| 登录数据库 | su - postgres → psql |
| 创建数据库 | CREATE DATABASE 库名; 或 createdb 库名 |
| 查看数据库 | \l |
| 切换数据库 | \c 库名 |
| 创建表 | CREATE TABLE 表名 (字段...); |
| 查看表 | \dt |
| 备份单个库 | pg_dump 库名 > 备份文件.sql |
| 恢复库 | psql 库名 < 备份文件.sql |
















