データベースの合計サイズを表示
Oracle
SELECT ROUND(SUM(bytes)/1024/1024/1024, 2) AS total_gb
FROM dba_data_files;使用中のセグメントのみなら dba_segments を合計する。TEMP は dba_temp_files を加算する。
PostgreSQL
SELECT pg_size_pretty(pg_database_size(current_database()));全データベースの場合: SELECT datname, pg_size_pretty(pg_database_size(datname)) FROM pg_database ORDER BY 2 DESC;
MySQL
SELECT table_schema AS db,
ROUND(SUM(data_length + index_length)/1024/1024, 1) AS mb
FROM information_schema.tables
GROUP BY table_schema
ORDER BY mb DESC;InnoDB ではこの値は推定値。正確なファイルサイズは OS レベルで ibdata/各ファイルを確認する。
SQL Server
EXEC sp_spaceused;
-- All databases:
SELECT DB_NAME(database_id) AS db,
CAST(SUM(size) * 8.0 / 1024 AS DECIMAL(10,1)) AS mb
FROM sys.master_files
GROUP BY database_id;size 列は 8 KB ページ単位。* 8 / 1024 で MB に変換する。
MongoDB
db.stats(1024*1024)
// returns the dataSize, storageSize, indexSize fields in MBstorageSize は圧縮後のディスク上のサイズ、dataSize は非圧縮の論理サイズ。
Redis
INFO memory
# the used_memory_human line gives the total size in memory
DBSIZE # number of keysRedis はメモリベースのため、「サイズ」は RAM 使用量を意味する。RDB/AOF ファイルのサイズはディスクに永続化された状態。