189 8069 5689

怎么查oracle的大小,oracle判断大小

Oracle怎么查看表的大小?

有两种含义的表大小。一种是分配给一个表的物理空间数量,而不管空间是否被使用。可以这样查询获得字节数:

创新互联专业提供成都服务器托管服务,为用户提供五星数据中心、电信、双线接入解决方案,用户可自行在线购买成都服务器托管服务,并享受7*24小时金牌售后服务。

select segment_name, bytes 

from user_segments 

where segment_type = 'TABLE'; 

或者

Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name

另一种表实际使用的空间。这样查询:

analyze table emp compute statistics; 

select num_rows * avg_row_len 

from user_tables 

where table_name = 'EMP';

查看每个表空间的大小

Select Tablespace_Name,Sum(bytes)/1024/1024 From Dba_Segments Group By Tablespace_Name

oracle数据库如何查看表空间大小

1.查看Oracle数据库中表空间信息的工具方法: 使用oracle enterprise manager console工具,这是oracle的客户端工具,当安装oracle服务器或客户端时会自动安装此工具,在...

2.查看Oracle数据库中表空间信息的命令方法: 通过查询数据库系统中的数据字典表(data dictionary tables)获取表空间的相关信息,首先使用客户端工具连接到数据库,这些工具可以是SQL..

怎么查看oracle表空间,剩余大小,表空间利用

1、因为oracle运行在Linux系统下,首先,要连接Linux系统。

2、连上后,进行oracle控制台。输入命令: sqlplus  / as sysdba;

3、在sql命令行,输入:

SELECT UPPER(F.TABLESPACE_NAME) "表空间名",D.TOT_GROOTTE_MB "表空间大小(M)",D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",

TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),'990.99') || '%' "使用比",F.TOTAL_BYTES "空闲空间(M)",F.MAX_BYTES "最大块(M)"

FROM (SELECT TABLESPACE_NAME,ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES,

FROM SYS.DBA_FREE_SPACE,GROUP BY TABLESPACE_NAME) F,

(SELECT DD.TABLESPACE_NAME,ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB,

FROM SYS.DBA_DATA_FILES DD,GROUP BY DD.TABLESPACE_NAME) D,

WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME,ORDER BY 1;

4、这样就可以查看到相应结果。 完成效果图。

怎么查看oracle表空间类型和大小?

一、查看临时表空间

--查看所有临时表空间名字及文件名

select f.file#,t.ts#,f.name "File",t.name "Tablespace" from v$tempfile f,V$tablespace t where f.ts# = t.ts#;

--查看当前用户默认临时表空间

select * from database_properties where property_name='DEFAULT_TEMP_TABLESPACE';

--查看所有用户的默认表空间和默认临时表空间

select USERNAME,DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE from dba_users;

--查看所有临时表空间大小

SELECT D.TABLESPACE_NAME,SPACE "SUM_SPACE(M)",BLOCKS SUM_BLOCKS,

USED_SPACE "USED_SPACE(M)",ROUND(NVL(USED_SPACE,0)/SPACE*100,2) "USED_RATE(%)",

NVL(FREE_SPACE,0) "FREE_SPACE(M)"

FROM

(SELECT TABLESPACE_NAME,ROUND(SUM(BYTES)/(1024*1024),2) SPACE,SUM(BLOCKS) BLOCKS

FROM DBA_TEMP_FILES

GROUP BY TABLESPACE_NAME) D,

(SELECT TABLESPACE_NAME,ROUND(SUM(BYTES_USED)/(1024*1024),2) USED_SPACE,

ROUND(SUM(BYTES_FREE)/(1024*1024),2) FREE_SPACE

FROM V$TEMP_SPACE_HEADER

GROUP BY TABLESPACE_NAME) F

WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+);

二、查看所有表空间大小、使用

COLUMN dummy NOPRINT

COLUMN pct_used FORMAT 999.9 HEADING "%|Used"

COLUMN name FORMAT a19 HEADING "Tablespace Name"

COLUMN Kbytes FORMAT 999,999,999,999 HEADING "KBytes"

COLUMN used FORMAT 999,999,999,999 HEADING "Used"

COLUMN free FORMAT 999,999,999,999 HEADING "Free"

COLUMN largest FORMAT 999,999,999,999 HEADING "Largest"

BREAK ON report

COMPUTE sum OF kbytes ON REPORT

COMPUTE sum OF free ON REPORT

COMPUTE sum OF used ON REPORT

set pagesize 2000

set line 300

--SPOOL tablespace_size.lst

SELECT

NVL(b.tablespace_name,nvl(a.tablespace_name,'UNKOWN')) name

, kbytes_alloc kbytes

, kbytes_alloc-NVL(kbytes_free,0) used

, NVL(kbytes_free,0) free

, ((kbytes_alloc-NVL(kbytes_free,0))/kbytes_alloc)*100 pct_used

, NVL(largest,0) largest

FROM ( SELECT SUM(bytes)/1024 Kbytes_free

, MAX(bytes)/1024 largest

, tablespace_name

FROM sys.dba_free_space

GROUP BY tablespace_name

) a

, ( SELECT SUM(bytes)/1024 Kbytes_alloc

, tablespace_name

FROM sys.dba_data_files

GROUP BY tablespace_name

) b

WHERE a.tablespace_name (+) = b.tablespace_name

order by pct_used desc

/

三、查看undo表空间大小、使用

select * from (select

a.tablespace_name,

sum(a.bytes)/(1024*1024) total_space_MB,

round(b.free,2) Free_space_MB,

round(b.free/(sum(a.bytes)/(1024*1024))* 100,2) percent_free

from dba_data_files a,

(select tablespace_name,sum(bytes)/(1024*1024) free from dba_free_space

group by tablespace_name) b

where a.tablespace_name = b.tablespace_name(+)

group by a.tablespace_name,b.free)

where tablespace_name = 'UNDOTBS1';

怎么查看oracle数据库表的大小

1. 查看所有表空间大小 SQL select tablespace_name,sum(bytes)/1024/1024 from dba_data_files 2 group by tablespace_name; 2. 已经使用的表空间大小 SQL select tablespace_name,sum(bytes)/1024/1024 from dba_free_space 2 group by tablespace_name; 3. 所以使用空间可以这样计算 select a.tablespace_name,total,free,total-free used from ( select tablespace_name,sum(bytes)/1024/1024 total from dba_data_files group by tablespace_name) a, ( select tablespace_name,sum(bytes)/1024/1024 free from dba_free_space group by tablespace_name) b where a.tablespace_name=b.tablespace_name; 4. 下面这条语句查看所有segment的大小。 Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name 5. 还有在命令行情况下如何将结果放到一个文件里。 SQL spool out.txt SQL select * from v$database; SQL spool off

怎么查看oracle数据库数据量大小

现有数据量的大小,可以通过

dba_segments表内的bytes字段,这个不是完全正确, 不过基本来说还比较靠谱。

这个数据量是以字节为单位的。如果要查条数,那么就真的没有什么办法了,但是如果你每天都分析表,那么还可以在统计信息的表内查到,如果不是每天统计,那么基本就没有办法了。


分享文章:怎么查oracle的大小,oracle判断大小
网站链接:http://jkwzsj.com/article/hchdgc.html

其他资讯