代码之家  ›  专栏  ›  技术社区  ›  Karl

ORA-01654:无法扩展索引

  •  18
  • Karl  · 技术社区  · 16 年前

    呼叫所有甲骨文大师!

    我正在WebSphere上集群一个测试良好的应用程序。在发生这种情况之前,所讨论的应用程序处理了来自队列的1K JMS消息的一半。

    ---- Begin backtrace for Nested Throwables
    java.sql.SQLException: ORA-01654: unable to extend index DABUAT.INDEX1 by 128 in tablespace DABUAT_TBLSP
    
        at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
        at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:745)
    

    我在网上快速浏览了一下,找到了一些可能的建议,说明为什么会发生这种情况,如果有人能就为什么会发生这种情况给出明确的解释,那么现在我的申请已经被归档了,我将非常感谢。

    问候卡尔

    2 回复  |  直到 7 年前
        1
  •  35
  •   Quassnoi    16 年前

    磁盘空间不足。

    增加你的 TABLESPACE :

    ALTER TABLESPACE DABUAT_TBLSP
    ADD DATAFILE 'C:\FolderWithPlentyOfSpace\DABUAT_TBLSP001.DBF' 
    SIZE 4M
    AUTOEXTEND ON NEXT 4M
    MAXSIZE 64G;
    
    -- Put your own size parameters here
    
        2
  •  0
  •   Pedram Ezzati    7 年前

    如果您使用的是ASM,则可以添加以下注释

    您可以运行下面的命令来获取数据文件的大小

    SELECT
        file_name,
        bytes / 1024 / 1024 mb
    FROM
        dba_data_files
    WHERE
        tablespace_name = 'APP_DATA'
    ORDER BY
        file_name;
    
    
    FILE_NAME mb
    ------------------------------------------------------------ -------
    +DATA/SID/datafile/app_data.dbf 20000
    +DATA/SID/datafile/app_data.dbf 28100
    

    调整大小和添加

    +DATA/path/indx_operational_00.dbf
    
    alter database datafile '+DATA/path/indx_operational_00.dbf' resize 3000m;