progresql常用的管理命令

阿里 阅读:964 2020-05-08 10:22:36 评论:0

1、查看当前数据库实例的版本

Select version();

 

2、查看数据库的启动时间

Select pg_postmaster_start_time();

 

3、查看最后load配置文件的时间

select pg_conf_load_time();

 

4、显示当前数据库的时区

Show timezone;

 

5、查看当前用户名

select user;

 

6、查看Session 用户

select session_user;

注:通常情况下,Session_user和user是相同的,但当命令set role改变用户角色时,两者就不同了。

 

7、查询当前数据库名称

select current_catalog,current_database();

 

8、查询当前Session所在客户端的IP地址及端口

select inet_client_addr(),inet_client_port();

 

9、查询当前数据库服务器的IP地址及端口

select inet_server_addr(),inet_server_port();

 

10、查询当前Session的后台服务进程的Pid

select pg_backend_pid();

 

11、查看当前的一些参数配置情况

show shared_buffers;

12、修改当前Session的参数配置

set maintenance_work_mem to '128MB';

13、查看当前正在写的WAL文件

select pg_xlogfile_name(pg_current_xlog_location());

14、查看当前WAL的buffer中还有多少字节的数据没有写到磁盘中

select pg_xlog_location_diff(pg_current_xlog_insert_location(),pg_current_xlog_location());

15、查看数据库实例是否正在做基础备份

select pg_is_in_backup(),pg_backup_start_time();

16、查看当前数据库实例是Hot Standby状态还是正常数据库状态

select pg_is_in_recovery();

17、查看数据库的大小

select pg_database_size('osdba'),pg_size_pretty(pg_database_size('osdba'));

18、查看数据表的大小

select pg_size_pretty(pg_relation_size('tablename'));//字节展示

select pg_size_pretty(pg_total_relation_size('tablename'));//会转换成MB、GB展示,还包括索引的大小

19、查看表上全部索引的大小

select pg_size_pretty(pg_indexes_size('tablename'));

20、查看表空间的大小

select pg_size_pretty(pg_tablespace_size('pg_global'));

select pg_size_pretty(pg_tablespace_size('pg_default'));//默认

21、修改配置文件postgresql.conf后,让修改生效的方法有两种

方法一:在操作系统下使用如下命令

pg_ctl reload

方法二:在psql中使用如下命令

select pg_reload_conf();

注:以上两个方法只针对不需要重启数据库服务的配置项

22、切换日志文件

select pg_rotate_logfile();

select pg_switch_xlog();

23、手工产生一次checkpoint

checkpoint;

24、取消一个正在长时间执行的SQL方法

pg_cancel_backend(pid):取消一个正在执行的SQL,此命令会配置取消标志,正在执行的任务在合适的时候检测到此标志后会主动退出,但如果没有检测到,则任务无法正常退出。

select pg_cancel_backend(pid);

pg_teminate_backend(pid):终止一个后台服务进程,同时释放此后台服务进程的资源。此命令为强制执行

select pg_teminate_backend(pid);

pg_stat_activity 查询出运行最长的sql

select pid,usename,query_stat,query from pg_stat_activity;

 

标签:数据库
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号