• progresql


    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;

  • 相关阅读:
    [转载]Jupyter Notebook 的快捷键
    【转载】mysql行列转换方法总结
    【Deep Learning Nanodegree Foundation笔记】第 10 课:Sentiment Analysis with Andrew Trask
    赵铁夫讲单词·解密单词的潜规则【2016全新精华版】
    【转载】ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'
    [IJCAI-17 口碑商家客流量预测]
    【Deep Learning Nanodegree Foundation笔记】第 9 课:Model Evaluation and Validation
    【Deep Learning Nanodegree Foundation笔记】第 5 课:Logistic Regression
    不用动笔背单词之托福
    Jenkins--02命令行构建Job
  • 原文地址:https://www.cnblogs.com/xiaofoyuan/p/5335356.html
Copyright © 2020-2023  润新知