데이터베이스 전체 크기 조회
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 파일 크기는 디스크에 저장된 상태다.