oracle 查询哪些表占用空间
发布网友
发布时间:2022-04-28 17:37
我来回答
共2个回答
热心网友
时间:2022-04-08 05:27
1、查看临时表空间 (dba_temp_files视图)(v_$tempfile视图)
select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files;
select status,enabled, name, bytes/1024/1024 file_size from v_$tempfile;--sys用户查看
2、缩小临时表空间大小
alter database tempfile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\TELEMT\TEMP01.DBF' resize 100M;
3、扩展临时表空间:
方法一、增大临时文件大小:
SQL> alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp01.dbf’ resize 100m;
方法二、将临时数据文件设为自动扩展:
SQL> alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp01.dbf’ autoextend on next 5m maxsize unlimited;
方法三、向临时表空间中添加数据文件:
SQL> alter tablespace temp add tempfile ‘/u01/app/oracle/oradata/orcl/temp02.dbf’ size 100m;
4、创建临时表空间:
SQL> create temporary tablespace temp1 tempfile ‘/u01/app/oracle/oradata/orcl/temp11.dbf’ size 10M;
5、更改系统的默认临时表空间:
--查询默认临时表空间
select * from database_properties where property_name='DEFAULT_TEMP_TABLESPACE';
--修改默认临时表空间
alter database default temporary tablespace temp1;
所有用户的默认临时表空间都将切换为新的临时表空间:
select username,temporary_tablespace,default_ from dba_users;
--更改某一用户的临时表空间:
alter user scott temporary tablespace temp;
6、删除临时表空间
删除临时表空间的一个数据文件:
SQL> alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp02.dbf’ drop;
删除临时表空间(彻底删除):
SQL> drop tablespace temp1 including contents and datafiles cascade constraints;
7、查看临时表空间的使用情况(GV_$TEMP_SPACE_HEADER视图必须在sys用户下才能查询)
GV_$TEMP_SPACE_HEADER视图记录了临时表空间的使用大小与未使用的大小
dba_temp_files视图的bytes字段记录的是临时表空间的总大小
SELECT temp_used.tablespace_name,
total - used as "Free",
total as "Total",
round(nvl(total - used, 0) * 100 / total, 3) "Free percent"
FROM (SELECT tablespace_name, SUM(bytes_used) / 1024 / 1024 used
FROM GV_$TEMP_SPACE_HEADER
GROUP BY tablespace_name) temp_used,
(SELECT tablespace_name, SUM(bytes) / 1024 / 1024 total
FROM dba_temp_files
GROUP BY tablespace_name) temp_total
WHERE temp_used.tablespace_name = temp_total.tablespace_name
ORDER BY B.TABLESPACE, B.SEGFILE#, B.SEGBLK#, B.BLOCKS;
热心网友
时间:2022-04-08 06:45
1.如果是表,可以通过查看sql,了解大概。
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 256K
minextents 1
maxextents unlimited
);
2.如果使用表空间,可以通过以下sql查看:
SELECT tablespace_name,
file_id,
file_name,
round(bytes / (1024 * 1024), 0) total_space
FROM dba_data_files
ORDER BY tablespace_name;
Oracle查询表空间大小及每个表所占空间的大小
Oracle数据库提供了强大的查询功能,可以轻松获取表空间及其内表的占用情况。首先,要查询所有表空间的大小、已用空间、剩余空间以及使用率和空闲率,只需运行相应的SQL语句即可。对于特定表的占用空间,只需将"TABLE_NAME"替换为需要查询的表名。创建数据库实例通常是通过Database Configuration Assistant这样...
如何在Oracle中查看各个表,表空间占用空间的大小
Oracle版本:Oracle 10g 一、查看表占用空间大小语句:select t.segment_name, t.segment_type, sum(t.bytes / 1024 / 1024) "占用空间(M)"from dba_segments twhere t.segment_type='TABLE'group by OWNER, t.segment_name, t.segment_type;查询结果:二、查看表空间占用空间大小语句:select ...
Oracle中如何查询所有表及其所使用的表空间
Oracle中查询所有表及其所使用的表空间可以使用SQL语句:select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name;在数据库管理员的日常工作中,应该经常查询表空间的利用率,按照数据库系统的具体情况估算表空间的增长量,当表空间的利用率超过90%时,要及时采取措施。
oracle怎么查看表空间,可以用PL/SQL查看吗?
可以通过PL/SQL查看。\x0d\x0a1. 查看所有表空间大小\x0d\x0a select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name; \x0d\x0a2. 未使用的表空间大小 \x0d\x0aselect tablespace_name,sum(bytes)/1024/1024 from dba_free_space group by tabl...
oracle查看表空间被哪些表占用
1、查询表空间包含哪些表。2、例如 SQL>col SEGMENT_NAME format a30 SQL>select distinct SEGMENT_NAME,TABLESPACE_NAME from dba_segments where TABLESPACE_NAME='DATA_TS001' order by SEGMENT_NAME;
怎么察看Oracle 数据库表空间的使用情况
查看的方法和详细的操作步骤如下:1、首先,因为oracle在Linux系统下运行,所以必须连接到Linux系统,如下图所示,然后进入下一步。2、其次,完成上述步骤后,连接成功,进入Oracle控制台。 输入命令“sqlplus / as sysdba”,如下图所示,然后进入下一步。3、接着,完成上述步骤后,在sql命令行上,...
怎么查看数据库用户使用的是那个表空间(oracle如何查看用户的表...
SQL:方法一:select dbf.tablespace_name,dbf.totalspace "总量(M)",dbf.totalblocks as 总块数,dfs.freespace "剩余总量(M)",dfs.freeblocks "剩余块数",(dfs.freespace / dbf.totalspace)100 "空闲比例"from (select t.tablespace_name,sum(t.bytes)/ 1024 / 1024 totalspace,sum(t....
如何查看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 ...
oracle查询用户下表最大的数据量及占用空间最大的表,怎么写sql
占空间最大,可以通过dba_segments 查询,这里有一个types的字段,这个字段就是当前segments占用的空间的大小,单位是字节。具体的查询方式:select max(types) from dba_segments where segment_type='TABLE',如果想知道具体多大,可考虑除以3个1024,这样你得到以G为单位的存储量了。数据量最大,这个...
怎么察看Oracle 数据库表空间的使用情况
查看的方法和详细的操作步骤如下:1、首先,因为oracle在Linux系统下运行,所以必须连接到Linux系统,如下图所示,然后进入下一步。2、其次,完成上述步骤后,连接成功,进入Oracle控制台。 输入命令“sqlplus / as sysdba”,如下图所示,然后进入下一步。3、接着,完成上述步骤后,在sql命令行上,...