こんにちは、エンジニアのnecomimiです。
今回は私が業務で直面したダンプインポート時の不具合についてご紹介します。同様の事象に遭遇している方がいたらぜひ参考していただければと思います。
1.不具合内容
私が直面したのは、ダンプインポート時に処理が完了しない問題です。具体的にはスキーマダンプのインポート中、以下の通りに処理が止まってしまいます。
$ impdp user/pass@TEST directory=test_dir dumpfile=test.dmp log=test.log schemas=TESTUSER
Import: Release 12.1.0.2.0 - Production on 金 10月 27 13:58:32 2023
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
接続先: Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
マスター表"SYSTEM"."SYS_IMPORT_SCHEMA_12"は正常にロード/アンロードされました
"SYSTEM"."SYS_IMPORT_SCHEMA_12"を起動しています: user/pass@TEST directory=test_dir dumpfile=test.dmp log=test.log schemas=TESTUSER
オブジェクト型SCHEMA_EXPORT/USERの処理中です
オブジェクト型SCHEMA_EXPORT/SYSTEM_GRANTの処理中です
オブジェクト型SCHEMA_EXPORT/ROLE_GRANTの処理中です
オブジェクト型SCHEMA_EXPORT/DEFAULT_ROLEの処理中です
オブジェクト型SCHEMA_EXPORT/TABLESPACE_QUOTAの処理中です
オブジェクト型SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMAの処理中です
オブジェクト型SCHEMA_EXPORT/SEQUENCE/SEQUENCEの処理中です
オブジェクト型SCHEMA_EXPORT/TABLE/TABLEの処理中です
オブジェクト型SCHEMA_EXPORT/TABLE/TABLE_DATAの処理中です
. . "SCHEMA"."TABLE" 690.0 MB 100000行がインポートされました
オブジェクト型SCHEMA_EXPORT/TABLE/COMMENTの処理中です
オブジェクト型SCHEMA_EXPORT/TABLE/INDEX/INDEXの処理中です
オブジェクト型SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINTの処理中です
オブジェクト型SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICSの処理中です
オブジェクト型SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICSの処理中です
オブジェクト型SCHEMA_EXPORT/STATISTICS/MARKERの処理中です
----------------ここで処理が止まる----------------
2.原因と対応策
これは推測になってしまいますが、DB領域がひっ迫していることが原因であると考えてます。DB領域を解消するには、DB領域の拡張や不要なログの削除がありますが、それらの対応をしてもうまくいかなかったので、以下の通り、処理を強制終了することにしました。(テーブルデータのインポートはできているのでとりあえずの暫定対応としています。)
$ ps -ef | grep imp
oracle 18960 18109 0 13:58 pts/0 00:00:00 impdp as sysdba directory=test_dir dumpfile=test.dmp log=test.log schemas=TESTUSER
$ kill 18960
「ps -ef | grep imp」でimpdpのプロセスIDを確認し、killコマンドでプロセスを強制終了しています。
3.最後に
今回ご紹介した内容はDB領域が改善できない場合の暫定対応ですが、同様の事象に直面している方がいらっしゃいましたら参考にしていただければと思います。