資料庫數么
--查看所有資料庫:
selectnamefromsys.databases
--查看當前資料庫的所有表的名字
='U'andcategory=0
xtype可替換為如下參數
--C = CHECK 約束
--D = 默認值或 DEFAULT 約束
--F = FOREIGN KEY 約束
--L = 日誌 --FN = 標量函數
--IF = 內嵌表函數
--P = 存儲過程
--PK = PRIMARY KEY 約束(類型是 K)
--RF = 復制篩選存儲過程
--S = 系統表
--TF = 表函數
--TR = 觸發器
--U = 用戶表
--UQ = UNIQUE 約束(類型是 K)
--V = 視圖
--X = 擴展存儲過程
㈡ 涓涓狹YSQL鏁版嵁搴撲笅闈㈡渶澶氬彲浠ュ壋寤哄氬皯涓鏁版嵁搴撲篃灝辨槸database錛100涓鏈夐棶棰樺悧錛屼細涓嶄細褰卞搷鏁堢巼
100涓娌¢棶棰橈紝1000浠ヤ笅閮戒笉褰卞搷鏁堢巼錛學INDOWS瀵圭洰褰曚笅鐨勬枃浠舵病鏈変嬌鐢ㄧ儲寮曪紝澶澶氫簡鑲瀹氫細褰卞搷鏁堢巼鐨勩
㈢ 資料庫數據量有多大
查詢一張表的總大小(單位MB,包含表的索引和數據,假設表的模式為<schemaname>,表名為<tablename>):
select pg_size_pretty(pg_total_relation_size('<schemaname>.<tablename>'));
查詢表的數據大小(單位MB,不包括索引,假設表的模式為<schemaname>,表名為<tablename>):
select pg_size_pretty(pg_relation_size('<schemaname>.<tablename>'));
查詢分區表所有分區的總大小(單位MB,包含表的索引和數據,假設表的模式為<schemaname>,表名為<tablename>):
select schemaname,tablename,round(sum(pg_total_relation_size(schemaname || '.' || partitiontablename))/1024/1024) "MB" from pg_partitions where schemaname='<schemaname>' and tablename='<tablename>' group by 1,2;
查詢一個Schema下面的所有表的總大小(單位MB,包括索引和數據,假設模式為<schemaname>):
select schemaname ,round(sum(pg_total_relation_size(schemaname||'.'||tablename))/1024/1024) "Size_MB" from pg_tables where schemaname='<schemaname>' group by 1;
查詢每個資料庫的大小(單位 MB):
select datname,pg_size_pretty(pg_database_size(datname)) from pg_database;