Oracle:ORA-01658の対処法
「SQLエラー [1658] [72000]: ORA-01658: 表領域SYSTEMにセグメント用のINITIALエクステントを作成できません。」
create tableを実行した際に上記エラーが発生しました。
DB(特にOracle)に疎い私は初めて見たエラーに戸惑いました。
その際に対処した方法をご紹介します。
これが発生した場合は、ほとんど素人ではどうしようもないと考えた方がよい。
ORA-01658:「表領域HHHにセグメント用のINITIALエクステントを作成できません。」対処法について | 職場で使える!30代エンジニアのoracleエラー対応
↑を見たときはそっとパソコンを閉じかけました。
が、こういう時に限って時間に追われている状況だったので調査を続行しました。
YMLib – other – ORA-01658 表領域にセグメント用のINITIALエクステントを作成できません
↑これを参考にした結果、、、
-- SYSTEM領域確認
select tablespace_name,initial_extent,next_extent,min_extents,max_extents,pct_increase from dba_tablespaces;
-- SYSTEM領域のファイルパス確認
select * from dba_data_files;
↑ここまでは良かったのですが、最後でエラーとなりました。。。
alter tablespace SYSTEM add datafile '/u01/app/oracle/oradata/XE/system.dbf' size 4096M
2 ;
alter tablespace SYSTEM add datafile '/u01/app/oracle/oradata/XE/system.dbf' size 4096M
*
ERROR at line 1:
ORA-01537: cannot add file '/u01/app/oracle/oradata/XE/system.dbf' - file
already part of database
拡張は↑を参考に、、、
alter database datafile '/u01/app/oracle/oradata/XE/system.dbf' resize 4096M;
Database altered.
できました!
先人方が書いた記事がなければ到底自己解決できない内容でした、、、
この記事がどなたかの参考になれば幸いです。