SQL*Loaderによる取り込み

📓 Contents


1. 抽出したDBデータを用意する。

前ステップで作業したc:\datamoveを複写してくれば良い。

2. DBデータを取り込む。

※スクリプトは2種類あり、
oracle_external.batは、外部表としてアタッチしデータを取り込む。
oracle_loader.batは、Oracle SQL Loaderを使用してデータを取り込む。
oracle_external.batはなぜか失敗するのでoracle_loader.batを使用することを勧める。

コマンドプロンプトで管理者として下記を実行する。

oracle_loader W7U system system

※サーバ名=W7U、システム管理者/パスワード=system/system

【注意】日付ディレクトリ直下のoracle_loader.batを使うこと!

データが移行されたか確認する。
スキーマNORTHWINDの表にデータが移行されたようだ!

ログもちゃんと確認しよう!
※これはOracle SQL Loaderのログファイル。

3. HWM(ハイ・ウォーター・マーク)を適正に設定する。

下記を参考にHWMを調整する。

参考資料:SHIFT the Oracle ハイウォータマークの操作方法

4. 索引を再構築する。

下記を参考に索引を再構築する。

参考資料:SHIFT the Oracle ALTER INDEX <REBUILD> external_link

【追記1】 文字化け対処

この方法でデータ移行した場合、文字化けが発生する。
原因は、サンプルデータNORTHWINDがヨーロッパ圏で作られているためであり、移行時に文字コードの変換を適切に行っていないためである。 オンラインでのデータ移行では自動的に手当され文字化けは起こっていないようであるが、オフラインでのデータ移行では作業者が手当(スクリプトの修正)を行う必要がある。
この作業は「文字化け対処」を参照されたい。

【追記2】 高速ローディング

SQL*Loaderにダイレクト・パス・ロード、およびパラレル・ロードを指示することで高速にデータをロードすることができる。詳細は、「高速ローディング」を参照されたい。

🌏 Map

same layerlower layer