ニュース&ブログ
【Amazon RDS for Oracle】ダンプファイルをAmazon S3にアップロードする方法
投稿日:2025/6/23
はじめに
こんにちは!システムサポートの山崎です。
オンプレミスからAmazon RDS for Oracle(以後、RDSと記述)にデータベースを移行したお客様から、
本番用RDSから検証用RDSにどうやってデータをインポートすれば良いのかという質問をいただきました。
このため、本番用RDSから検証用RDSへのデータインポートを行う方法として今回は以下の流れを行いました。
※本番用RDSは「ソースRDS」、検証用RDSは「ターゲットRDS」です。
1.本番用RDSからexpdpユーティリティを使いダンプファイルの作成
2.本番用RDからS3へダンプファイルのアップロード
3.S3から検証用RDSへダンプファイルのダウンロード
4.impdpユーティリティを使い検証用RDSへダンプファイルのインポート
本ブログでは1.2.を中心に、3.4.についても触れていきたいと思います。
前提
・RDS:Oracle 19c
・SQL*PlusからRDSへ接続ができること。
・RDSとS3の疎通が取れていること。(下記を参考に権限を付与してください。)
https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/oracle-s3-integration.preparing.html
・RDSのオプショングループにS3_INTEGRATIONが追加されていること。
・expdp/impdpユーティリティの使い方がある程度わかっている方向けの記事になっています。
実施手順
まず、ソースRDSからOracle Data Pumpでエクスポートします。コマンドプロンプトから下記を実行します。
expdp admin/〈パスワード〉@〈エンドポイント〉:〈ポート〉/〈SID〉 SCHEMAS=〈スキーマ名〉DIRECTORY=DATA_PUMP_DIR DUMPFILE=〈ファイル名〉.dmp LOGFILE=〈ログ名〉.log CONTENT=data_only exclude=MATERIALIZED_VIEW,STATISTICS
SQL*PLUSでDBに接続し、下記SQLを実行します。
select FILENAME,TYPE,FILESIZE/1024/1024 FILESIZE_MB,MTIME
from TABLE(RDSADMIN.RDS_FILE_UTIL.LISTDIR('DATA_PUMP_DIR'))
WHERE TYPE='file'
ORDER BY MTIME;
ソースRDS上にダンプファイルが出力されていることが確認できました!
FILENAME TYPE FILESIZE_MB MTIME
----------------------------------- ---------- ---------------- -----------
〈ファイル名〉.dmp file 2723.85547 24-11-14
では、このダンプファイルを S3へアップロードします。
SELECT rdsadmin.rdsadmin_s3_tasks.upload_to_s3
(
p_bucket_name => '〈バケット名〉',
p_prefix => '〈ファイル名〉.dmp',
p_s3_prefix => '〈プレフィックス/〉',
p_directory_name => 'DATA_PUMP_DIR'
)
AS TASK_ID FROM DUAL;
AWSコンソールからS3を確認したところ、ダンプファイルがアップロードされていることを確認できました!
本記事では割愛しますが、同じ要領で下記を行えばインポートまで可能です!
ターゲットRDSにS3からダンプファイルをダウンロード。
SELECT rdsadmin.rdsadmin_s3_tasks.download_from_s3(
p_bucket_name => '〈バケット名〉'
, p_directory_name => 'DATA_PUMP_DIR'
, p_s3_prefix => '〈ファイル名〉.dmp')
AS TASK_ID FROM DUAL;
ターゲットRDSにインポート。
impdp admin/〈パスワード〉@〈エンドポイント〉:〈ポート〉/〈SID〉 DIRECTORY=DATA_PUMP_DIR DUMPFILE=〈ファイル名〉.dmp LOGFILE=〈ログ名〉.log CONTENT=data_only
まとめ
今回は、RDSから出力したダンプファイルをAmazon S3にアップロードする方法を実践しました。
オンプレミスからクラウドへ移行すると、今までと同じ方法では対応できないことが出てきますが、代替手段が用意されていることがほとんどです。
クラウドへのマイグレーションをお考えの方は、ぜひ弊社にお問い合わせください!
山崎由希乃(2022年入社)
株式会社システムサポート フューチャーイノベーション事業本部
ソリューションサービス事業部所属。
DBのクラウドマイグレーションやAWSデータ分析基盤を中心とした案件に従事。