Oracle Database コネクタ

カテゴリ: データベースコネクタ

はじめに

本書は、mindzieDataDesigner の Oracle Database コネクタのセットアップを支援するために作成されました。mindzieDataDesigner は、mindzieStudio によって使用される ETL ツールで、データベーステーブルをプロセスマイニングのイベントログに変換します。本書の目的は、接続文字列の作成および必要に応じてファイアウォールのポート開放の支援です。

概要

Oracle コネクタは、Oracle Managed Data Access (ODP.NET) を用いて Oracle Database インスタンスへのネイティブ接続を提供します。このコネクタは、高性能で Oracle の全機能対応、グローバル企業向けの最適化されたタイムゾーン処理を実現します。

システム要件

  • データベースシステム: Oracle Database 11g Release 2 以降(19c 推奨)
  • サポートエディション: Express Edition (XE)、Standard Edition、Enterprise Edition
  • プラットフォームサポート: Windows、Linux、Unix
  • クラウドサポート: Oracle Cloud Infrastructure (OCI)、Amazon RDS for Oracle、Oracle Autonomous Database
  • 依存関係: Oracle Managed Data Access (ODP.NET) - コネクタに含まれる

接続文字列フォーマット

基本フォーマット(Easy Connect)

Data Source=hostname:port/service_name;User Id=username;Password=password;

TNS Names フォーマット

Data Source=tns_alias;User Id=username;Password=password;

接続パラメータ

パラメータ 説明 必須
Data Source サーバー接続情報 はい oracle-server:1521/ORCL
User Id Oracle ユーザー名 はい PROCESS_MINING
Password Oracle パスワード はい SecurePassword123
Connection Timeout 接続タイムアウト(秒) いいえ 60
Command Timeout コマンドタイムアウト(秒) いいえ 600
Pooling コネクションプーリングの有効化 いいえ true
Min Pool Size 最小プール接続数 いいえ 1
Max Pool Size 最大プール接続数 いいえ 100
DBA Privilege 管理者権限 いいえ SYSDBA
Persist Security Info 資格情報の保持 いいえ false

接続例

ローカル Oracle Express Edition (XE)

Data Source=localhost:1521/XE;User Id=MINDZIE_USER;Password=password;

Oracle Enterprise データベース

Data Source=oracle-prod.company.com:1521/PRODDB;User Id=PROCESS_MINING;Password=SecurePassword123;Connection Timeout=60;

TNS Names 使用例

Data Source=PROD_ORACLE;User Id=MINDZIE_USER;Password=SecurePassword123;

Oracle Autonomous Database(クラウド)

Data Source=mydb_high;User Id=ADMIN;Password=CloudPassword123;

高度な設定での接続

Data Source=oracle-server:1521/ORCL;User Id=MINDZIE_USER;Password=password;
Pooling=true;Min Pool Size=5;Max Pool Size=50;Connection Timeout=30;

プラガブルデータベース (PDB) 接続

Data Source=oracle-server:1521/PDB1;User Id=PROCESS_USER;Password=password;

認証方式

データベース認証

  • 標準的な Oracle のユーザー名/パスワード認証
  • CREATE USER 文で作成されたユーザー
  • 最も一般的な認証方式

OS 認証

Data Source=oracle-server:1521/ORCL;Integrated Security=yes;

プロキシ認証

Data Source=oracle-server:1521/ORCL;User Id=app_user;Password=password;Proxy User Id=end_user;

トラブルシューティング

一般的な接続問題

"ORA-12154: TNS:could not resolve the connect identifier" エラー

  • tnsnames.ora の TNS 名前設定を確認
  • ORACLE_HOME と TNS_ADMIN 環境変数を確認
  • 代替として Easy Connect 構文を使用
  • サービス名とホスト名を検証

"ORA-01017: invalid username/password" エラー

  • 資格情報が正しいか、ユーザーが存在するか確認
  • アカウントのロックを解除: ALTER USER username ACCOUNT UNLOCK;
  • ユーザーに CREATE SESSION 権限があることを確認
  • パスワードの有効期限切れを確認

"ORA-12505: TNS:listener does not currently know of SID given" エラー

  • サービス名と SID の使用を検証
  • Oracle リスナーの状態確認: lsnrctl status
  • 最新の Oracle では SID ではなくサービス名を使用
  • データベースのサービス登録を検証

"ORA-00257: archiver error" エラー

  • Oracle アーカイブログ領域を確認
  • Oracle DBA にメンテナンスを依頼
  • 利用可能であれば読み取り専用接続の使用を検討

mindzie サーバーアクセス: セキュリティ強化のため、使用する mindzie サーバーの特定 IP アドレスのみを許可するホワイトリストをファイアウォールに設定可能です。mindzie サポートに連絡して、利用中の mindzie サーバーの現在の IP アドレスを取得してください。

Oracle クラウドの問題

"ORA-28040: No matching authentication protocol" エラー

  • Oracle クライアントを互換性のあるバージョンにアップデート
  • Oracle Cloud の認証要件を確認
  • SSL/TLS 設定を確認

Oracle Autonomous Database セットアップ

前提条件

  1. ウォレットのダウンロード: Oracle Cloud コンソールから接続ウォレットを取得
  2. ウォレットの展開: ファイルをアクセス可能なディレクトリに配置
  3. TNS_ADMIN の設定: ウォレットディレクトリを指すよう設定
  4. 接続文字列: tnsnames.ora のサービス名を使用

Autonomous Database 接続

Data Source=mydb_high;User Id=ADMIN;Password=WalletPassword123;

ウォレット設定

  • wallet.zip をセキュアなディレクトリに展開
  • TNS_ADMIN 環境変数を設定
  • 事前定義されたサービス名(HIGH, MEDIUM, LOW)を使用

関連情報


💡 ヒント: エンタープライズの Oracle 展開では、高可用性および負荷分散のために複数ホストを持つ Oracle Real Application Clusters (RAC) の接続文字列の使用を検討してください。