--CALL SP_DB_STAT_INIT ();SELECT
TABLE_NAME AS 表名 ,
OWNER AS 所属用户 ,
TABLESPACE_NAME AS 所属表空间,
NUM_ROWS AS 行数
FROM
DBA_TABLES
WHERE
OWNER NOTIN ('SYS', 'SYSTEM', 'SYSAUDITOR', 'SYSJOB', 'SYSSSO', 'CTISYS')
AND TABLESPACE_NAME !='TEMP';
SELECTSUM(A.BYTES/1024/1024)
||' MB'AS TOTAL_SIZE
FROM
DBA_SEGMENTS A
WHERE
OWNER ='BENCH';
所有索引占用空间
SELECTSUM(INDEX_USED_PAGES(S.ID)*(PAGE/1024))/1024||' MB'AS TOTAL_SPACE
FROM
(
SELECT
TABLE_NAME,
INDEX_NAME,
INDEX_TYPE
FROM
DBA_INDEXES
WHERE
OWNER ='BENCH'
)
DBAIDX,
(
SELECT ID, NAME FROM SYSOBJECTS S WHERE S.SUBTYPE$ ='INDEX'
)
S
WHERE
DBAIDX.INDEX_NAME = S.NAME;
需要收集过统计信息。
--CALL SP_DB_STAT_INIT (); SELECT TABLE_NAME AS 表名 , OWNER AS 所属用户 , TABLESPACE_NAME AS 所属表空间, NUM_ROWS AS 行数 FROM DBA_TABLES WHERE OWNER NOT IN ('SYS', 'SYSTEM', 'SYSAUDITOR', 'SYSJOB', 'SYSSSO', 'CTISYS') AND TABLESPACE_NAME != 'TEMP';
所有schema表占用空间
SELECT SUM(A.BYTES/1024/1024) ||' MB' AS TOTAL_SIZE FROM DBA_SEGMENTS A WHERE OWNER = 'BENCH';
所有索引占用空间
SELECT SUM(INDEX_USED_PAGES(S.ID)*(PAGE/1024))/1024 ||' MB' AS TOTAL_SPACE FROM ( SELECT TABLE_NAME, INDEX_NAME, INDEX_TYPE FROM DBA_INDEXES WHERE OWNER = 'BENCH' ) DBAIDX, ( SELECT ID, NAME FROM SYSOBJECTS S WHERE S.SUBTYPE$ = 'INDEX' ) S WHERE DBAIDX.INDEX_NAME = S.NAME;