質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Oracle Database

Oracle Databaseは、米オラクルが開発・販売を行うリレーショナルデータベース管理システムです。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

Q&A

1回答

4148閲覧

Oracle Database 18C EXpress EditionからOracle Database 19Cへのexpdp,impdpが正常に動作しない。

IronBoSS

総合スコア0

Oracle Database

Oracle Databaseは、米オラクルが開発・販売を行うリレーショナルデータベース管理システムです。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

0グッド

0クリップ

投稿2020/07/09 07:56

編集2020/07/10 07:11

前提・実現したいこと

前提
現在とあるアプリケーションを用いて開発を行っており、そのアプリケーションのデータベースとしてOracle 18C XEを使用しています。

実現したいこと、発生している問題の概要
Oracle Database 18C EXpress Edition(以下18C)からインストールしたばかりでデータを格納する表領域を作成しただけの、Oracle Database 19C(以下19C)へデータの移行を行おうとしています。
しかし、データベースの容量、オブジェクト数が移行前と移行後で増加しています。

発生している問題・エラーメッセージ

18Cにあるデータベース情報をexpdpを用いてエクスポートし、19Cにimpdpを使ってインポートしました。
しかし、19Cへインポートをした後、オブジェクト数や表領域のデータ容量をOlacle SQL Developerを使用して確認すると、システム領域以外の開発で使用していた表領域ではオブジェクト数は18Cの時よりも267個から580個へ増加しており、データ容量は58MBから79MBに増大していました。

何故データ量がインポート、エクスポートを行っただけでデータが増大してしまったのでしょうか?

該当のソースコード

expdp

1~\18.0.0\dbhomeXE\bin\expdp system/******@18cpdb directory=dir01 dumpfile=18cpdb.DMP logfile=18cdmp.log full=Y

impdp

1~\19.0.0\dbhomeXE\bin\impdp system/*****@19cpdb directory=dir01 dumpfile=18CPDB.DMP table_exists_action=replace logfile=18c_19cimp.log full=Y

試したこと

ブロックサイズが原因でオブジェクト数が変わったのかと思いましたが、どちらも8192でした。

補足情報(FW/ツールのバージョンなど)

エクスポートデータベース
Oracle Database 18c XE

インポート先データベース
Oracle Database 19c

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Orlofsky

2020/07/09 12:59

[Express]タグは無関係なので削除してください。
IronBoSS

2020/07/10 00:03

承知しました。削除します。
guest

回答1

0

ある表領域ではオブジェクト数は18Cの時よりも267個から580個へ増加しており、

質問に、確認した方法も追記しては?

Oracleのバージョンが変われば SYSなどオラクル側のユーザーのオブジェクトの数も変わります。
移行したSYSなどオラクル側のユーザーを除いた、ユーザー側のオブジェクト数は移行元と同じか、テーブル毎のレコード件数は同じか?などを確認しましたか?

投稿2020/07/09 12:37

Orlofsky

総合スコア16415

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Orlofsky

2020/07/12 09:34

logfile=18c_19cimp.log の内容でimpdpできたのはどのユーザーのオブジェクトが何件かを確認しましたか?
IronBoSS

2020/07/15 05:21

ご回答ありがとうございます。 ユーザーのオブジェクトというのは表領域ごとのオブジェクト数ということでしょうか? 18Cから19Cに移行するとシステム領域以外のすべての表領域でオブジェクト数と容量が増加しているのを確認していますが、レコードの入っていないテーブルばかりでした。 ログを確認したところ、コンパイルエラーなどの出力がされていたのでこれが原因かもと思いますが、現在も原因は判明していません。
Orlofsky

2020/07/15 06:09

DBA_OBJECTS の OWNER, OBJECT_TYPE 毎の件数を取得して比較したらどうなりますか?
IronBoSS

2020/07/15 09:01

現在再度表領域ごとのインポートを行って確認しているため、すぐには確認できませんが、sysdbaでログインし、select count(*) from user_objectsコマンドを試した時のオブジェクト数は 18Cが51426個に対して19Cは52286個になっていました。 再インストールした19Cに対してFullで出力した18CのDMPデータを丸ごとimpdpしたため、システム領域のオブジェクト数も全く同じになるはずだと考えています。
Orlofsky

2020/07/15 09:15

user_objectsはログインしたユーザーのオブジェクト件数がわかるだけです。 >DBA_OBJECTS の OWNER, OBJECT_TYPE 毎の件数を取得して比較したらどうなりますか? ってSQLを書けないですか? 18Cと19Cでは当然SYSユーザーの内容が違います。 丸ごとimportされたかログさえ確認していないでしょう。 そろそろ疲れました。
IronBoSS

2020/07/15 10:11

>>DBA_OBJECTS の OWNER, OBJECT_TYPE 毎の件数を取得して比較したらどうなりますか? >ってSQLを書けないですか? SQLが書けない(?)のではなく、環境を作り直したため今すぐにSQLの発行はできませんと伝えたかったのです。 >18Cと19Cでは当然SYSユーザーの内容が違います。 この部分が特に気になるのですが、SYSユーザが違うというのはシステム領域のオブジェクト数が異なるということだと思います。 私が確認した部分ではデータ領域のオブジェクト数(Table,LOBSEGMENT)が増加しています。 >丸ごとimportされたかログさえ確認していないでしょう。 どういう意味ですか? >そろそろ疲れました。 お疲れ様です。
Orlofsky

2020/07/15 10:24

Oracle19Cは無料ライセンスはありません。 ライセンスを買われたでしょうから、サポート契約してオラクル・サポートに相談してください。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問