【第22期】观点:IT 行业加班,到底有没有价值?

初识PGSQL

原创 2016年08月29日 09:25:49

一些查询基本命令


1.版本信息

  postgres # SELECT version();

  或者

  bash # psql ––version  (客户端)

  bash # cat $PGDATADIRECTORY/PG_VERSION 


2.启动时间

   SELECT pg_postmaster_start_time();

   持续时间

   postgres=# SELECT date_trunc('second',current_timestamp - pg_postmaster_start_time()) as uptime; 


3.默认数据文件位置 PGDATADIR
   
  Redhat/CentOS
   /var/lib/pgsql/data/ 

  Windows

  C:\Program Files\PostgreSQL\R.r\data 

  可以通过initdb命令添加额外的文件目录
 
  PGDATADIR目录下子目录和子文件说明
  
base Main data directory. Beneath this directory each database has its own
directory within which are the fles for each database table or index.
global Database server catalog tables that are shared across all databases.
pg_clog Transaction status fles.
pg_multixact Row-level lock status fles
pg_subtrans Subtransaction status fles
pg_tblspc Links to external tablespaces
pg_twophase "2-phase commit", or Prepared transaction status
pg_xlog Transaction log (or Write Ahead Log - WAL)
 pg_log                                        日志文件
 postgresql.conf                         配置文件
 pg_hba.conf  /pg_ident.conf                            连接配置文件
 postmaster.pid                          进程文件

 控制文件
 bash # pg_controldata <data-directory>

4.列出数据库
 bash $ psql -l
 或者
 postgres=# select datname from pg_database;

5.数据库中的表
 SELECT count(*) FROM information_schema.tablesWHERE table_schema NOT IN ('information_schema','pg_catalog');

 6.磁盘空间使用情况
  
  当前数据库
  SELECT pg_database_size(current_database()); 
  所有数据库
  SELECT sum(pg_database_size(datname)) from pg_database; 
  指定表
  select pg_relation_size('tablename‘);
  指定表(包含索引及其他)
  select pg_total_relation_size('tablename');
  命令行
  postgres=# \dt+ tablename
  
  特色功能,快速估算表行数(根据数据块计算,Row Estimate = Number of Data Blocks * Rows per Block
  SELECT (CASE WHEN reltuples > 0 
                                               THEN pg_relation_size('mytable')/(8192*relpages/reltuples) 
                                                ELSE 0
                     END)::bigint AS      estimated_row_count 
 FROM pg_class
 WHERE oid = 'mytable'::regclass;
 

其他参照后续视图介绍



版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

计算机科学精彩帖子收集

linux源码 LXR 源自“the Linux Cross Referencer”,中间的“X”形象地代表了“Cross”。与 Source Navigator 类似,它也是分析阅读源代码的好工具。...
  • unix21
  • unix21
  • 2014-04-24 15:39
  • 7895

PostgreSQL问题解决--连接失败

问题在pgAdmin中,将本地数据库连接的host由localhost或127.0.0.1改为自己的真实ip–10.xxx.xxx.xxx后,连接失败,报错如下:psql: could not con...

程序员升职加薪指南!还缺一个“证”!

CSDN出品,立即查看!

初识Hbase-使用批量导入将.TSV文件中数据导入到Hbase表中

Hbase中数据的批量导入->TSV格式文件的数据导入到hbase表中 importTSV工具 作用 1.hbase内部提供了将.TSV文件中数据导入到hbase表的jar包 2.tsv...

win环境 开启pgsql 扩展

用mac 开发真的挺好的 公司项目需要用到pgsql  同事的win  在一个接口报 404 代码提示 不支持pgsql 网上找到的 希望对以后有帮助 首先,打开这个扩展就费了不少事,然后php...

初识Qt绘图QGraphicsItem

最近学习Qt绘图,花了很长的时间,也费了一些心思,好在有所收获,也不枉这几个月的各种苦熬,在这里做一些总结。如题目所说,这也只是初识QGraphicsItem,我需要做的是继续往后学习,只是希望能够帮...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)