2025年8月1日金曜日

n8nのカスタム・ノードn8n-nodes-oracle-database-parameterizationを使ってOracle Databaseに接続する

Oracle Corporationで主にデータベースに接続するドライバのプロダクト・マネージメントを担当しているChristopher Jonesさんが、以下のブログ記事を公開しています。

How to create n8n workflows that connect to Oracle Database

jgriffin1さんがGitHubで公開しているn8n-nodes-oracle-database-parameterizationをインストールすると、カスタム・ノードとしてOracle Databaseに接続できるようです。

Christopher Jonesさんの元記事ではn8nがインストールされている環境があることを前提として、このカスタム・ノードをインストールしています。本記事ではn8nから提供されているコンテナ・イメージから作成したコンテナに対して、このカスタム・ノードをインストールしてみます。

以下のコマンドでn8nのコンテナを作成します。

podman run -it --rm --name n8n -e N8N_RUNNERS_ENABLED=true -e N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n

% podman run -it --rm --name n8n -e N8N_RUNNERS_ENABLED=true -e N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n

Initializing n8n process

n8n ready on ::, port 5678

n8n Task Broker ready on 127.0.0.1, port 5679

[license SDK] Skipping renewal on init because renewal is not due yet or cert is not initialized

Registered runner "JS Task Runner" (gXBJ9F_2r4CJr94jMWOP9) 

Version: 1.104.1


Editor is now accessible via:

http://localhost:5678


Press "o" to open in Browser.


ブラウザよりn8nにサインインし、アカウントのメニューからSettingsを開きます。


左のメニューよりCommunity nodesを選択し、Install a community nodeをクリックします。


npm Package Namen8n-nodes-oracle-database-parameterizationを指定し、I understand the risks of installing unverified code from public sourceチェックします。

以上でInstallをクリックします。


Community nodesとしてn8n-nodes-oracle-database-parameterizationが追加されます。


Overviewのページに戻り、Create Workflowをクリックし、新規にワークフローを作成します。


最初のノードとしてTrigger manuallyを作成します。


ノードを追加します。Oracleで検索するとOracle Database with Parameterizationが見つかります。これを追加します。


カスタム・ノードの詳細が表示されます。Add to workflowをクリックします。


Oracle Databaseへの接続を確認するだけなので、SQL Statementselect * from dualを設定します。

Credential to connect withwksp_apexdev@local containerという名前で新規作成しました。


n8nのコンテナと同じく、コンテナで実行されているOracle Database 23ai Freeに接続するクリデンシャルを作成しています。

Connection Stringhost.containers.internal/freepdb1としています。


以上の設定を行いExecute stepをクリックすると、select * from dualが実行されます。


n8nのノードでOracle Databaseにアクセスできることが確認できました。

Christopher Jonesさんの記事では、もっと色々な操作を行なっています。n8nでオラクルを扱うにあたって、最初に参照されることをお勧めします。

今回の記事は以上になります。