29

すべてのOracleGurusに電話をかけます!

私は、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)

私はオンラインでざっと見て、なぜこれが起こったのかについていくつかの可能な提案を見つけました。誰かがなぜこれが起こったのかについて明確な説明をすることができれば、私のアプリケーションはクラスター化されました。

よろしくカール

4

3 に答える 3

46

ディスク容量が不足しています。

あなたのを増やしてください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
于 2009-04-20T16:08:36.643 に答える
1

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;
于 2018-08-18T11:34:42.030 に答える
0

この質問には、大きなデータベースの小さなサブセットをDockerのテストデータベースに移行するときに同じエラーが発生することがわかりました。

私の場合、問題は単にユーザーテーブルにシステムテーブルスペースを使用することでした。これはOracleイメージのデフォルト設定でした。コマンドを使用してカスタム表領域を作成した後

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

(およびそのテーブルスペースにすべてのテーブルとインデックスを作成するだけでなく)問題は解消されました。データファイルを特別にいじる必要はありませんでした。

于 2021-06-08T17:30:50.297 に答える