PostgreSQL-常用命令

PostgreSQL 提供了丰富的命令行工具和 SQL 命令,用于管理和操作数据库。以下是一些常用的命令和操作:


1. 数据库管理

创建数据库
复制代码
CREATE DATABASE dbname;
删除数据库
复制代码
DROP DATABASE dbname;
列出所有数据库
复制代码
\l

SELECT datname FROM pg_database;
切换到某个数据库
复制代码
\c dbname

2. 表管理

创建表
复制代码
CREATE TABLE tablename (    column1 datatype,    column2 datatype,    ...);
删除表
复制代码
DROP TABLE tablename;
列出所有表
复制代码
\dt
查看表结构
复制代码
\d tablename
重命名表
复制代码
ALTER TABLE oldname RENAME TO newname;
添加列
复制代码
ALTER TABLE tablename ADD COLUMN columnname datatype;
删除列
复制代码
ALTER TABLE tablename DROP COLUMN columnname;

3. 数据操作

插入数据
复制代码
INSERT INTO tablename (column1, column2, ...) VALUES (value1, value2, ...);
查询数据
复制代码
SELECT * FROM tablename;
更新数据
复制代码
UPDATE tablename SET column1 = value1 WHERE condition;
删除数据
复制代码
DELETE FROM tablename WHERE condition;
清空表
复制代码
TRUNCATE TABLE tablename;

4. 索引管理

创建索引
复制代码
CREATE INDEX indexname ON tablename (columnname);
删除索引
复制代码
DROP INDEX indexname;
重建索引
复制代码
REINDEX INDEX indexname;

5. 用户和权限管理

创建用户
复制代码
CREATE USER username WITH PASSWORD 'password';
删除用户
复制代码
DROP USER username;
授予权限
复制代码
GRANT ALL PRIVILEGES ON DATABASE dbname TO username;
撤销权限
复制代码
REVOKE ALL PRIVILEGES ON DATABASE dbname FROM username;
列出所有用户
复制代码
\du

6. 备份与恢复

备份数据库
复制代码
pg_dump -U username -d dbname > backup.sql
恢复数据库
复制代码
psql -U username -d dbname -f backup.sql
备份所有数据库
复制代码
pg_dumpall -U username > backup_all.sql

7. 维护与优化

清理表(VACUUM)
复制代码
VACUUM tablename;
分析表(ANALYZE)
复制代码
ANALYZE tablename;
重建表(CLUSTER)
复制代码
CLUSTER tablename USING indexname;

8. 其他常用命令

查看当前数据库
复制代码
SELECT current_database();
查看当前用户
复制代码
SELECT current_user;
查看 PostgreSQL 版本
复制代码
SELECT version();
查看活动连接
复制代码
SELECT * FROM pg_stat_activity;
终止连接
复制代码
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname = 'dbname';

9. psql 命令行工具常用命令

退出 psql
复制代码
\q
查看帮助
复制代码
\?
列出所有命令
复制代码
\?
列出所有数据库
复制代码
\l
列出所有表
复制代码
\dt
列出所有索引
复制代码
\di
列出所有函数
复制代码
\df
执行外部 SQL 文件
复制代码
\i filename.sql

10. 日志与监控

查看日志文件
复制代码
cat /var/log/postgresql/postgresql.log
查看慢查询
复制代码
SELECT * FROM pg_stat_activity WHERE state = 'active' AND now() - query_start > interval '5 seconds';

11. 扩展管理

列出所有扩展
复制代码
\dx
安装扩展
复制代码
CREATE EXTENSION extensionname;
卸载扩展
复制代码
DROP EXTENSION extensionname;

以上是 PostgreSQL 的常用命令,涵盖了数据库管理、表操作、数据查询、用户权限、备份恢复等方面。根据实际需求,可以灵活使用这些命令

相关推荐
YJlio19 分钟前
Active Directory 工具学习笔记(10.8):AdInsight——保存与导出(证据留存、共享与二次分析)
数据库·笔记·学习
suoyue_zhan24 分钟前
GBase的管理监控平台GEM实践指南
数据库
哈哈老师啊1 小时前
Springboot学生综合测评系统hxtne(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
java·数据库·spring boot
小小8程序员1 小时前
Redis-10
数据库·redis·缓存
liuzhilongDBA1 小时前
从collation mismatch异常到其原理
数据库·version·glibc·postgres·collation
梁萌1 小时前
MySQL数据库分库分表介绍
数据库·mysql·shardingsphere·分库分表
占疏3 小时前
dify API访问工作流/聊天
开发语言·数据库·python
Cat God 0074 小时前
SQL使用及注意事项
数据库·sql·mysql
@老蝴4 小时前
MySQL数据库 - 约束和联合查询
android·数据库·mysql
程序猿20234 小时前
MySQL索引使用--最左前缀法则
数据库·mysql