【问题标题】:Lucene Indexing from Oracle:ORA-01652: unable to extend temp segmentOracle 的 Lucene 索引:ORA-01652:无法扩展临时段
【发布时间】:2012-03-23 10:47:37
【问题描述】:

使用Lucene构建Oracle 11g数据库数据全文索引时遇到问题,信息如下: “ora-01652 无法在 MDSYS.SDO_RDF_TRIPLE_S 上的表空间 temp 中将 temp 段扩展 128”,第 608 行”

数据集的总大小约为 1.5GB。出现问题后,我按照网上的一些说明进行操作:

CREATE TEMPORARY TABLESPACE temp01
TEMPFILE 'D:\oracle\oradata\temp01.dbf' SIZE 2048M AUTOEXTEND ON MAXSIZE UNLIMITED;  

ALTER DATABASE DEFAULT TEMPORARY TABLESPACE temp01;

但是,问题仍然存在。不过,磁盘空间足够了。谁能给我一些帮助?提前致谢!

【问题讨论】:

  • in tablespace temp in tablespace temp01.

标签: oracle lucene indexing tablespace


【解决方案1】:

MDSYS.SDO_RDF_TRIPLE_S 在哪个表空间中?那是需要添加空间的表空间。此外,MAXSIZE UNLIMITED 并不真正意味着无限;在大多数平台上,这意味着 32767 MB。

【讨论】:

  • 感谢您的回复!我认为这是原因,因为每次程序抛出这个数据库异常(ORA-01652)时,“dbf”文件的大小大约为 33GB。那么如果表空间需要超过33GB的空间应该怎么办呢?
  • 由于数据集本身只有 1.5GB,有谁能解释一下为什么 Lucene 的索引构建过程会消耗这么多磁盘空间?
  • @ChenXie: Alter tablespace some_tablespace add datafile some_path_to_file size 1023m autoextend on next 1024m maxsize unlimited
【解决方案2】:

更改数据库的默认临时表空间不会修改为显式设置临时表空间的现有用户分配的值。在dba_users 中检查您要连接的用户,如果它有不同的临时表空间,请使用alter user <id> temporary tablespace temp01

您还可以通过增加临时表空间的大小、将其设置为自动扩展或添加额外的临时文件来增加现有临时表空间的大小。但是,如果这是一次性任务,那么为它创建一个新的大表空间并在之后删除它可能不是一个坏主意。

【讨论】:

    猜你喜欢
    • 2013-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-27
    • 2014-10-10
    • 1970-01-01
    • 2021-07-24
    • 1970-01-01
    相关资源
    最近更新 更多