postgresql 查看数据库,表,索引,表空间以及大小
1.查看数据库
#psql -U postgres
#psql -U postgres
//\加上字母l,相当于mysql的,mysql> show databases;
postgres-# \l
postgres-# \l
//查看testuser数据库的大小
postgres-# select pg_database_size('postgres');
postgres-# select pg_database_size('postgres');
//查看所有数据库的大小
select pg_database.datname, pg_database_size(pg_database.datname) AS size from pg_database;
select pg_database.datname, pg_database_size(pg_database.datname) AS size from pg_database;
//以KB,MB,GB的方式来查看数据库大小
select pg_size_pretty(pg_database_size('postgres'));
select pg_size_pretty(pg_database_size('postgres'));
2.查看多表
psql -U testuser -d testdb
//相当于mysql的,mysql> show tables;
testuser=> \dt
List of relations
Schema | Name | Type | Owner
--------+------+-------+---------
public | test | table | testuser
psql -U testuser -d testdb
//相当于mysql的,mysql> show tables;
testuser=> \dt
List of relations
Schema | Name | Type | Owner
--------+------+-------+---------
public | test | table | testuser
3.查看单表
//相当于mysql的,mysql> desc test;
testuser=> \d test;
Table "public.test"
Column | Type | Modifiers
--------+-----------------------+-----------
id | integer | not null
name | character varying(32) |
Indexes: "testuser_id_pk" PRIMARY KEY, btree (id)
//相当于mysql的,mysql> desc test;
testuser=> \d test;
Table "public.test"
Column | Type | Modifiers
--------+-----------------------+-----------
id | integer | not null
name | character varying(32) |
Indexes: "testuser_id_pk" PRIMARY KEY, btree (id)
//查看表大小
testuser=> select pg_relation_size('test');
pg_relation_size
------------------
0
(1 row)
testuser=> select pg_relation_size('test');
pg_relation_size
------------------
0
(1 row)
//以KB,MB,GB的方式来查看表大小
testuser=> select pg_size_pretty(pg_relation_size('test'));
pg_size_pretty
----------------
0 bytes
(1 row)
testuser=> select pg_size_pretty(pg_relation_size('test'));
pg_size_pretty
----------------
0 bytes
(1 row)
//查看表的总大小,包括索引大小
testuser=> select pg_size_pretty(pg_total_relation_size('test'));
pg_size_pretty
----------------
8192 bytes
(1 row)
testuser=> select pg_size_pretty(pg_total_relation_size('test'));
pg_size_pretty
----------------
8192 bytes
(1 row)
4.查看索引
//相当于mysql的,mysql> show index from test;
testuser=> \di
List of relations
Schema | Name | Type | Owner | Table
--------+---------------+-------+---------+-------
public | testuser_id_pk | index | playboy | test
(1 row)
//查看索大小
testuser=> select pg_size_pretty(pg_relation_size('playboy_id_pk'));
pg_size_pretty
----------------
8192 bytes
(1 row)
5.查看表空间,以及大小
//查看所有表空间
testuser=> select spcname from pg_tablespace;
spcname
------------
pg_default
pg_global
(2 rows)
//查看表空间大小
testuser=> select pg_size_pretty(pg_tablespace_size('pg_default'));
pg_size_pretty
----------------
14 MB
(1 row)
testuser=> select pg_size_pretty(pg_tablespace_size('pg_default'));
pg_size_pretty
----------------
14 MB
(1 row)