最近在导数据库的时候,发现导入失败,在日志里面一直打印
ORA-01653: unable to extend table 表名 by 8 in tablespace USERS的错。
百度了之后,知道表空间不足,很明显,需要扩展表空间;
查询表空间大小sql:
select tablespace_name ,sum(bytes) / 1024 / 1024 as MB,file_name
from dba_data_files
where tablespace_name = ‘USERS’
group by tablespace_name,file_name;
如果表空间大小还没有达到最大值(没有开启自动扩展),可以通过以下方法扩展表空间
这里需要注意,如果表空间大小最大值是32G,如果当前的表空间已经达到了最大值,则只能通过追加表空间文件来扩展
alter DATABASE DATAFILE ‘/eastest/users01.dbf’ RESIZE 4096m;
这里的大小最好设置成原来两倍
如图,已经达到了最大值,则需要追加表空间文件
alter tablespace USERS add datafile '/*/USERS03.dbf’ size 1024M autoextend on next 100M maxsize unlimited;
这个脚本的意思是:增加表空间文件,创建时就是一个GB,后面会自动扩大,直到32GB,增加的表空间文件最好是跟之前的users01在一个文件夹下;
表空间文件路径查询sql:
SELECT T.TABLESPACE_NAME,D.FILE_NAME,
D.AUTOEXTENSIBLE,D.BYTES,D.MAXBYTES,D.STATUS
FROM DBA_TABLESPACES T,DBA_DATA_FILES D
WHERE T.TABLESPACE_NAME =D.TABLESPACE_NAME
ORDER BY TABLESPACE_NAME,FILE_NAME;
oracle增加表空间文件
最新推荐文章于 2025-06-24 15:55:11 发布