はじめに
Autonomous AI Database 19cにおいて、データベース・プロパティROUTE_OUTBOUND_CONNECTIONSに「ENFORCE_PRIVATE_ENDPOINT」が設定できるようになりました。
データベース・プロパティROUTE_OUTBOUND_CONNECTIONSに「ENFORCE_PRIVATE_ENDPOINT」をセットすると、DBMS_CLOUDパッケージ等を含むAutonomous AI Databaseからの全てのバウンド接続がVCNのプライベートDNSを参照し、またVCNのアクセス制御(エグレス・ルール)に従うようになります。
そこで今回は、Oracle Database@AzureのAutonomous Databaseに、Blob Storageにあるdmpファイルをプライベートネットワーク経由でインポートする際の手順を検証しました。
注意
こちらの記事の内容はあくまで個人の実験メモ的な内容のため、こちらの内容を利用した場合のトラブルには一切責任を負いません。
また、こちらの記事の内容を元にしたOracleサポートへの問い合わせはご遠慮ください。
前提条件
ストレージアカウント(ここではblobstorage4adb内のコンテナー(ここではcontainer4dmpfile)内にtest.dmpがアップロードされていることを前提としています。
また、このストレージ・アカウントのパブリック・アクセスは無効になっています。
1. ストレージ・アカウントのプライベート・エンドポイントの作成
ストレージ・アカウントの「セキュリティとネットワーク」内のネットワークにアクセスします。
「プライベート・エンドポイント」のタブに移動し、「Create private endpoint」をクリックします。。

プライベート・エンドポイント名を入力します。
リージョンはAutonomous Databaseがあるリージョンを選択します。

仮想ネットワークとして、Autonomous DatabaseのエンドポイントがあるVNetを選択します。
サブネットとして、Autonomous DatabaseのエンドポイントがあるVNet内のDelegated Subnetではない通常のサブネットを選択します。

プライベート・エンドポイントが作成されたら、「設定」内の「DNSの構成」にアクセスし、プライベート・エンドポイントのIPアドレスとFQDNを確認します。

2. OCI側のプライベートDNSの設定
Oracle Database@AzureのAutonomous Databaseは、アウトバウンド通信の際にOCI側のプライベートDNSを参照しますので、Blobのプライベート・エンドポイントのDNS情報をOCI側のプライベートDNSに追加します。
OCIコンソールでAutonomous Databaseの詳細画面にアクセスします。

ネットワーク・セクションの「仮想クラウド・ネットワーク」のリンクをクリックします。

「ゾーン名」にblob.core.windows.netと入力して、「作成」をクリックします。

作成されたゾーンのゾーン名(blob.core.windows.net)のリンクをクリックします。

以下の通り入力して、「変更の保存」をクリックします。
名前:Blob Storageのコンテナー名(ここではblobstorage4adb)
タイプ:「A - IPv4アドレス」
Address(アドレス):ストレージ・アカウントのプライベート・エンドポイントのIPアドレス

プライベート・ゾーンおよびストレージ・アカウントのプライベート・エンドポイントのDNSレコードが追加できました。

3. データベース・プロパティの設定
SQL*Plus等のクライアントからadminユーザとして、Autonomous Databaseに接続します。
[opc@NewClient ~]$ sqlplus admin/Demo#1Demo#1@adbatazure
SQL*Plus: Release 23.0.0.0.0 - Production on Thu Sep 11 23:24:52 2025
Version 23.9.0.25.07
Copyright (c) 1982, 2025, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.28.0.1.0
SQL>
データベース・プロパティROUTE_OUTBOUND_CONNECTIONSをENFORCE_PRIVATE_ENDPOINTに設定して、すべてのアウトバウンド通信がAutonomous Databaseのプライベート・エンドポイントを経由するようにします。
SQL> ALTER DATABASE PROPERTY SET ROUTE_OUTBOUND_CONNECTIONS = 'ENFORCE_PRIVATE_ENDPOINT';
Database altered.
SQL>
4. Blob Storageにアクセスするためのクレデンシャルの作成
Blob Storageにアクセスするためのクレデンシャルを作成します。
ここでは、BLOBSTORAGE4ADB_CREDという名前のクレデンシャルを作成します。
usernameにはストレージ・アカウント名、passwordにはストレージ・アカウントのアクセスキーを指定します。
SQL> SET DEFINE OFF
SQL> BEGIN
2 DBMS_CLOUD.CREATE_CREDENTIAL(
3 credential_name => 'BLOBSTORAGE4ADB_CRED',
4 username => 'blobstorage4adb',
5 password => 'ストレージ・アカウントのアクセスキー'
6 );
7 END;
8 /
PL/SQL procedure successfully completed.
SQL>
5. データベース・プロパティの設定およびクレデンシャルの確認
DBMS_CLOUD.LIST_OBJECTSファンクションを使用して、データベース・プロパティの設定およびクレデンシャルを検証します。
SQL> SELECT object_name FROM DBMS_CLOUD.LIST_OBJECTS('BLOBSTORAGE4ADB_CRED','https://blobstorage4adb.blob.core.windows.net/container4dmpfile/');
OBJECT_NAME
--------------------------------------------------------------------------------
test.dmp
SQL>
6. インポートの実行
impdpコマンドでBlob Storageにあるdmpファイルをインポートします。
credentialには3.で作成したクレデンシャルを、dumpfileにはdmpファイルのURIを指定します。
[opc@NewClient ~]$ impdp admin/Demo#1Demo#1@azureadb directory=data_pump_dir credential=BLOBSTORAGE4ADB_CRED dumpfile=https://blobstorage4adb.blob.core.windows.net/container4dmpfile/test.dmp exclude=cluster,indextype,db_link
Import: Release 23.0.0.0.0 - Production on Fri Sep 19 02:45:09 2025
Version 23.9.0.25.07
Copyright (c) 1982, 2025, Oracle and/or its affiliates. All rights reserved.
Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Master table "ADMIN"."SYS_IMPORT_FULL_01" successfully loaded/unloaded
Starting "ADMIN"."SYS_IMPORT_FULL_01": admin/********@azureadb directory=data_pump_dir credential=BLOBSTORAGE4ADB_CRED dumpfile=https://blobstorage4adb.blob.core.windows.net/container4dmpfile/test.dmp exclude=cluster,indextype,db_link
Processing object type SCHEMA_EXPORT/USER
Processing object type SCHEMA_EXPORT/SYSTEM_GRANT
Processing object type SCHEMA_EXPORT/ROLE_GRANT
Processing object type SCHEMA_EXPORT/DEFAULT_ROLE
Processing object type SCHEMA_EXPORT/PASSWORD_HISTORY
Processing object type SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
Processing object type SCHEMA_EXPORT/TABLE/TABLE
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
. . imported "SCOTT"."BONUS" 0 KB 0 rows
. . imported "SCOTT"."DEPT" 6.023 KB 4 rows
. . imported "SCOTT"."EMP" 8.773 KB 14 rows
. . imported "SCOTT"."SALGRADE" 5.953 KB 5 rows
Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
Processing object type SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
Processing object type SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
Processing object type SCHEMA_EXPORT/STATISTICS/MARKER
Job "ADMIN"."SYS_IMPORT_FULL_01" successfully completed at Fri Sep 19 06:46:20 2025 elapsed 0 00:01:09
[opc@NewClient ~]$
Blob Storageにあるdmpファイルをプライベートネットワーク経由でAutonomous AI Databaseにインポートすることができました。














