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

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/31311964/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-09-08 07:56:43  来源:igfitidea点击:

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

databaseoracleoracle12c

提问by scatolone

I get the below error when I try to insert data in the database.

当我尝试在数据库中插入数据时出现以下错误。

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

I'm using an Oracle database (express 12cversion). Googling the error I found that it means that there no more space in the tablespace and you need to increase the dimension of your datafile or the number of datafile you are using. I have 5 datafile of 30 GB and one of them is empty so I don't understand what the problem is.

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

Edit

编辑

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

回答by Giovanni

Each tablespace (a logical entity) maps to one or more o.s. file (even on raw device or something different on some installations). One file may belong to only one tablespace.

每个表空间(一个逻辑实体)都映射到一个或多个 os 文件(甚至在原始设备上或在某些安装上有所不同)。一个文件可能只属于一个表空间。

If you have more than one tablespace you may have a lot fo free space in other tablespace but you may not use it.

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

You can enlarge you data file oo change the tablespace where your table indexes are located.

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

Your specific error is related to lob (i.e. blob or clob); may be you are inserting a lot of/large binary objects that fill the tablespace; you can "allocate" the lob segment in a different tablespace.

您的具体错误与 lob(即 blob 或 clob)有关;可能是您插入了大量/大型二进制对象来填充表空间;您可以在不同的表空间中“分配”lob 段。

If you are just experimenting I suggest to enlarge the data file, see herefor instructions

如果您只是在试验,我建议放大数据文件,请参阅此处的说明

回答by davegreen100

paste the results of the following

粘贴以下结果

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;