こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

インポート時のエラーについて

新サーバーのOracleにTABLESPACEを作成したのですが、旧サーバーで保管したデータをインポートしようとすると一部件数の多いテーブルでエラーが発生します。内容は
IMP-00003:Oracleエラー:1562が発生しました。
ORA-01562:ロールバックセグメント番号:2を拡張できません。
ORA-01628:最大エクステント:121に達しました(ロールバックセグメント:RB1)。
IMP-00028:前の表の部分インポートがロールバックされました(XXXXX行)。

データ用TABLESPACEはサイズ5GBで
DEFAULT STORAGE(INITIAL 1024K NEXT 1024K MINEXTENTS 1 MAXEXTENTS 121 PCTINCREASE 50)
TEMP用とROLLBACK用TABLESPACEはそれぞれサイズ500MBで
DEFAULT STORAGE(INITIAL 1M NEXT 1M MINEXTENTS 1 MAXEXTENTS 512 PCTINCREASE 50)
ロールバックセグメントは3つ作成し、それぞれ
initial 3M next 3M optimal 50 M 
で作成しました。
Oracleは7.3です。設定の間違いや、対策はないでしょうか?

投稿日時 - 2007-12-27 19:41:58

QNo.3632051

すぐに回答ほしいです

質問者が選んだベストアンサー

こんにちわ。

ロールバックセグメントが3個と言うのは少ないと思いますが、
今回は単純にロールバック・セグメントが拡張できなかっただけです。
imp コマンドはデフォルトでは表単位にCommit を行います。
→ 1表のimp を1トランザクションで実行すると言う事です。
  現環境のロールバックセグメントがこのロールバック情報を
  格納し切れなかっただけです。
適当な件数imp した時点で内部的にCommit を実行させれば
解決すると思います。

imp buffer=10485760 commit=y ・・・
として下さい。
→ 10MB 分の配列をロードしたら内部でCommit してくれます。

投稿日時 - 2007-12-27 22:36:48

お礼

早速の回答ありがとうございます。
ALTERでどうにかしなければいけないのかと思って、いろいろ調べていたのですが、よくわからなかったのでとても助かりました。
明日早速ためしてみます。(年越しせずにすみそうです!)

投稿日時 - 2007-12-28 00:24:30

このQ&Aは役に立ちましたか?

10人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問