ORA-01691:无法在USERS表空间中将lob段XXXXXXXX扩展到8192



当我尝试在数据库中插入数据时,我得到以下错误。

ORA-01691: unable to extend lob segment XXXXXX by 8192 in tablespace USERS

我正在使用Oracle数据库(express 12c版本)。在谷歌上搜索这个错误,我发现这意味着表空间中没有更多的空间,您需要增加数据文件的维度或您正在使用的数据文件的数量。我有5个30gb的数据文件,其中一个是空的,所以我不明白问题是什么。

编辑

SYSTEM      793,19      800     99,15   32768   2,42
SYSAUX      2203,56     2320    94,98   32768   6,72
UNDOTBS1    48,13       23345   0,21    32768   0,15
USERS       153534,5    30720   499,79  30720   499,79
USERS       153534,5    30720   499,79  30720   499,79
USERS       153534,5    30720   499,79  30720   499,79
USERS       153534,5    30720   499,79  30720   499,79
USERS       153534,5    30720   499,79  30720   499,79

粘贴下面的结果

select d.tablespace_name "TS",
   (select round(sum(s.bytes/(1024*1024)),2)
      from dba_segments s
      where (s.tablespace_name = d.tablespace_name)
      group by s.tablespace_name) "Used",
round(d.bytes/(1024*1024)) "FSize",
round((select sum(s.bytes/(1024*1024))
  from dba_segments s
  where s.tablespace_name = d.tablespace_name
  group by s.tablespace_name)*100/(d.bytes/(1024*1024)),2) "% Used",
round(maxbytes/(1024*1024)) "MAX FSize",
round((select sum(s.bytes/(1024*1024))
  from dba_segments s
  where (s.tablespace_name = d.tablespace_name) AND (d.AUTOEXTENSIBLE = 'YES')
  group by s.tablespace_name)*100/(maxbytes/(1024*1024)),2) "% Used of MAX"  from dba_data_files d;

每个表空间(一个逻辑实体)映射到一个或多个操作系统文件(即使在原始设备上或某些安装上的不同设备上)。一个文件只能属于一个表空间。

如果您有多个表空间,那么您可能在其他表空间中有很多空闲空间,但您可能不会使用它。

您可以扩展数据文件或更改表索引所在的表空间。

您的特定错误与lob(即blob或clob)有关;可能你正在插入很多/大的二进制对象来填充表空间;您可以在不同的表空间中"分配"lob段。

如果你只是在试验,我建议放大数据文件,见这里的说明

最新更新