oracle的users表空间数据文件,之前修改为30G,实际使用不到1G。
使用命令
alter database datafile 'xxx.dbf' resize 1000M
调整数据文件大小时,报错:文件包含在请求的resize值以外的数据。
根据百度查询到解决方案
1,查询users表空间的file_id=4
2,查询dba_extents表
select segment_name,partition_name,segment_type from dba_extents where file_id=4;
3,移动查询出来的表和索引到新空间后,重新resize仍旧是同样错误。因为查出来的信息owner属于scott和oe,这两个用户说是oracle的示例用户,索性直接删除了这两个用户。
执行命令:drop user scott cascade;
4,目前dba_extents表已查询不到数据,数据库也重启过,但是仍然不能resize users表空间。