統(tǒng)計(jì)mysql和pgsql庫和表占用大小方式
適用背景
交付項(xiàng)目時,客戶需要統(tǒng)計(jì)數(shù)據(jù)庫和表占用情況,來評估后續(xù)磁盤使用計(jì)劃。
以下sql對應(yīng)庫的版本,mysql為5.7 pgsql為14.x
mysql
每個庫的大小,單位MB
use information_schema; select table_schema,round(sum(data_length/1024/1024),2) as data from tables group by table_schema order by data desc;

具體庫下的單表大小,單位MB
use information_schema; select table_name,round(sum(data_length/1024/1024),2) as data from tables where table_schema='db_name' group by table_name order by data desc;

pgsql
每個庫的大小,單位MB
SELECT
nspname AS table_schema,
ROUND(SUM(pg_total_relation_size(c.oid)) / 1024.0 / 1024.0, 2) AS total_mb
FROM
pg_class c
JOIN
pg_namespace n ON c.relnamespace = n.oid
WHERE
c.relkind = 'r'
GROUP BY
nspname
ORDER BY
total_mb DESC;

統(tǒng)計(jì)schema下單表大小,單位MB
SELECT
relname AS table_name,
ROUND(pg_relation_size(c.oid) / 1024.0 / 1024.0, 2) AS data_mb -- 表數(shù)據(jù)大?。∕B)
FROM
pg_class c
JOIN
pg_namespace n ON c.relnamespace = n.oid
WHERE
n.nspname = 'schema_name' -- 指定schema名稱
AND c.relkind = 'r' -- 只統(tǒng)計(jì)普通表
ORDER BY
data_mb DESC;

總結(jié)
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
MySQL通過binlog恢復(fù)數(shù)據(jù)
通過了解binlog日志的相關(guān)配置,簡單掌握通過binlog對數(shù)據(jù)庫進(jìn)行數(shù)據(jù)恢復(fù)操作。有此需求的朋友可以參考下2021-05-05
將mysql腳本轉(zhuǎn)化為oracle腳本的攻略與細(xì)節(jié)點(diǎn)
前段時間公司項(xiàng)目數(shù)據(jù)庫需要從mysql轉(zhuǎn)為oracle,所以需要修改下原有的mysql腳本,這篇文章主要給大家介紹了關(guān)于將mysql腳本轉(zhuǎn)化為oracle腳本的攻略與細(xì)節(jié)點(diǎn),需要的朋友可以參考下2023-09-09
MySQL實(shí)現(xiàn)崩潰恢復(fù)的幾種方法
MySQL 使用一系列日志和恢復(fù)機(jī)制來實(shí)現(xiàn)崩潰恢復(fù),確保數(shù)據(jù)庫在發(fā)生崩潰后可以恢復(fù)到一致的狀態(tài),主要依賴的日志包括 Redo Log、Undo Log 和 Binary Log,下面就來詳細(xì)的介紹一下2025-08-08
解決MySQL報錯:The last packet sent successfu
這篇文章主要介紹了解決MySQL報錯:The last packet sent successfully to the server was 0 milliseconds ago問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-12-12
php后臺經(jīng)常提示無法連接mysql 刷新后又可以訪問的解決方法
這幾天有一臺MySQL數(shù)據(jù)庫服務(wù)器出現(xiàn)了頻繁的掉線情況,通過排查,并沒有排查出哪個網(wǎng)站被攻擊,百思不得其解中的時候,群里有個朋友說是因?yàn)槲④汯B967723造成的,網(wǎng)上搜索了一下,果然很多人都是這樣的問題,都是windows系統(tǒng)下安裝的MySQL造成的2011-05-05
Mysql和SQLServer驅(qū)動連接的實(shí)現(xiàn)步驟
本文主要介紹了Mysql和SQL?Server的驅(qū)動連接,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06

