0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Autonomous DBでのDBリンク利用時の注意点

Last updated at Posted at 2025-05-11

本ブログは、オラクル・クラウドの個人ブログ一覧の1つです。

初めに

Autonomous Database(以下、Autonomous DB)でデータベースリンク(DBリンク)を利用する際には、通常のOracle Databaseとは異なる点に注意が必要です。本記事では、DBリンクの作成・管理に関する注意点や手順について解説します。

※、リンク先がAutonomous DBである場合、事前にリンク先ADBのWalletファイルを所定のディレクトリに保存する必要があるケースもあります。本記事ではそのケースは扱っておりませんので、あらかじめご了承ください。

1. 作成前の事前準備

1-1. 権限付与

管理者(ADMIN)以外のユーザーがDBリンクを作成する場合は、以下の権限を事前に付与する必要があります。

DBMS_CLOUDの実行権限:クレデンシャル作成に必要
DBMS_CLOUD_ADMINの実行権限:DBリンク作成に必要

コマンド例:(ADMINユーザーによる実行)

GRANT EXECUTE ON DBMS_CLOUD TO <DBユーザ名>;
GRANT EXECUTE ON DBMS_CLOUD_ADMIN TO <DBユーザ名>;

1-2. クレデンシャルの作成

接続先のデータベースにアクセスするために、あらかじめクレデンシャルを作成しておきます。これにより、ユーザー名やパスワードなどの接続情報を安全に管理できます。

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
    credential_name => '<クレデンシャル名>',
    username => '<DBユーザー名>',
    password => '<パスワード>'
  );
END;
/

2. DBリンクの利用

2-1. DBリンクの作成

Autonomous DBでは、Oracle DBの CREATE DATABASE LINK SQL文は使用できません。このコマンドを実行しようとすると、次のようなエラーが表示されます

ORA-01031: insufficient privileges

代わりに、DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINKプロシージャを使用してください。
詳細な使用方法については、公式マニュアルを参照してください。

2-2. DBリンクの確認

ビューからの確認
作成されたDBリンクは以下のビューから確認できます:

  • 一般ユーザー:ALL_DB_LINKS, USER_DB_LINKS
  • 管理者ユーザー(ADMIN):DBA_DB_LINKS (上記2つのビューも参照可能)
select * from ALL_DB_LINKS;

動作確認

  • SQLコマンドでの確認
    例えば、リンク先のデータベースにある特定テーブルの件数を確認するには、次のようなSQLを実行します:
select count(*) from <表名>@<DBリンク名>;
  • SQL Developerでの確認
    a). 接続名を展開
    b).「データベース・リンク」を選択
    c). 対象のリンクを右クリック →「データベース・リンクのテスト」→ 適用

成功すると、以下のようなメッセージが表示されます:
データベース・リンク"<リンク名>"が正常にテストされました

2-3. DBリンクの削除

DROP DATABASE LINKコマンドもAutonomous DBでは使用できません。代わりに、DBMS_CLOUD_ADMIN.DROP_DATABASE_LINKを使用してください。

実行例:

BEGIN
    DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK(
        db_link_name => '<DBリンクの名前>' );
END;
/
PL/SQL procedure successfully completed.

※、SQL Developer を使用している場合、Autonomous DBでは、DBリンクを右クリックして「削除」を選択する方法では削除できません。

2-4. DBリンクの編集

Autonomous DBでは、作成済みのDBリンクを編集することはできません。編集したい場合は、いったんDBリンクを削除し、再作成する必要があります。

付録 - DBリンクの接続パターン

No. 接続パターン ドキュメントリンク
1 Autonomous DB同士 リンク
2 Autonomous DB ⇒ Oracle DB リンク
3 Autonomous DB ⇒ Non-Oracle DB リンク
4 Oracle DB ⇒ Autonomous DB リンク

以上


ドキュメントリンク
SQLコマンド
Use Database Links with Autonomous Database
Summary of DBMS_CLOUD_ADMIN Subprograms

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?