【问题标题】:ORA-01654: unable to extend indexORA-01654: 无法扩展索引
【发布时间】:2010-10-20 14:45:00
【问题描述】:

呼叫所有 Oracle 大师!

我正在对 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)

我在网上快速浏览了一下,发现了一些关于为什么会发生这种情况的可能建议,如果有人能清楚地解释为什么现在我的应用程序已经被集群了,我将不胜感激。

问候卡尔

【问题讨论】:

    标签: java oracle cluster-computing


    【解决方案1】:

    您的磁盘空间不足。

    增加你的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
    

    【讨论】:

    • 如何选择当前的DATAFILES?
    • 从 v$datafile 中选择 *;
    • 而 MAXSIZE 64G 代表 64 Giga 字节,因此请始终添加小于当前可用大小的内容,否则会出现相同的错误。
    • 嗨,我收到以下错误。 java.sql.SQLException: ORA-01654: 无法在表空间 USERS 中将索引 ODM_DSI.EVENTSTORE_IDX2 扩展 1024。扩展表空间会在这里再次提供帮助吗?
    • @PranavNath 值得一试
    【解决方案2】:

    如果您使用的是 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;
    

    【讨论】:

      【解决方案3】:

      我发现这个问题在将大型数据库的小子集迁移到 Docker 中的测试数据库时有同样的错误。

      在我的情况下,问题只是将系统表空间用于用户表,这是 Oracle 映像中的默认设置。使用命令创建自定义表空间后

      create tablespace mytablespace datafile '/u01/app/oracle/oradata/XE/mytablespace.dbf' size 500M autoextend on next 250M maxsize 10G;` 
      

      (以及在该表空间中创建所有表和索引)问题消失了。不需要特别摆弄数据文件。

      【讨论】:

        猜你喜欢
        • 2012-03-23
        • 2015-07-15
        • 1970-01-01
        • 2013-07-29
        • 2023-03-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-11-09
        相关资源
        最近更新 更多