
PostgreSQL 常用命令速查表
PostgreSQL 是世界上最先进的开源对象-关系型数据库,遵循类似 BSD/MIT 的开源协议,以其强大功能、高性能、可靠性以及可扩展性在企业中被广泛
应用。PostgreSQL 支持各种主流的平台,例如 Linux、BSD、AIX、HP-UX、Mac OS X 以及 Windows 等。PostgreSQL 遵循事务的 ACID 原则,高
度兼容 SQL 标准;同时支持自定义数据类型、索引类型、过程语言扩展(PL/pgSQL、PL/Python、PL/Java 等)。
角色、用户和组
CREATE USER
name
PASSWORD
'password
-- 创建用户
SELECT * FROM pg_user; -- 查看所有用户
SELECT user, current_user; -- 查看当前用户
ALTER USER
name
PASSWORD
'password
’;
-- 修改密码
ALTER USER
name
VALID UNTIL
‘timestamp
’;
-- 设置密码失效时间
DROP USER [IF EXISTS]
name
; -- 删除用户
GRANT
privilege_list
| ALL -- 授予权限
ON
object_type
TO
user
;
REVOKE
privilege_list
| ALL -- 撤销权限
ON
object_type
FROM
user
;
SELECT * FROM
role_table_grants
; -- 查看表的授权
备注:PostgreSQL 角色又包含了两种概念,具有登录权
限的角色称为用户,包含其他成员的角色称为组
(group)。因此,以上语句中 USER 关键字可以替换
为 ROLE 或者 GROUP。
数据库和模式
CREATE DATABASE
name
[WITH OWNER =
user
]; -- 创建数据库
SELECT * FROM pg_database; -- 查看数据库
ALTER DATABASE
name
…; -- 修改数据库
DROP DATABASE [IF EXISTS]
name
; -- 删除数据库
postgres=# \dn -- 查看当前数据库中的模式
SELECT * FROM pg_namespace; -- 查看所有模式
CREATE SCHEMA [IF NOT EXISTS]
name
[ AUTHORIZATION
user
]; -- 创建模式
ALTER SCHEMA
name
RENAME TO
new_name
;
ALTER SCHEMA
name
OWNER TO
new_owner
;
-- 修改模式
SHOW search_path; -- 查看模式搜索路径
SET search_path TO
schema1
,
shema2
-- 设置模式搜索路径
DROP SCHEMA [ IF EXISTS ]
name
; -- 删除模式
连接服务器
psql -h
hostname
-p
port
-U
username dbname
postgres=# \? [
topic
] -- 获取 psql 工具帮助
postgres=# \h
command
; -- 获取 SQL 命令帮助
postgres=# \conninfo -- 显示当前连接信息
postgres=# \l[+] -- 列出所有的数据库
postgres=# \q -- 退出 psql 客户端
SELECT version(); -- 查看服务器版本
SHOW { ALL |
name
} -- 查看运行时参数
SET [ SESSION | LOCAL ]
name
TO {
value
|
'value
' | DEFAULT } -- 设置运行时参数
SELECT pg_reload_conf(); -- 重新加载配置文件
SELECT * FROM pg_stat_activity; -- 查询所有连接
SELECT pg_cancel_backend(
pid
); -- 取消运行中的查询
SELECT pg_terminate_backend(
pid
); -- 终止指定连接
评论