Power BIをIBM Cloudで稼働しているDb2に接続時、以下のような動きや現象で悩まされた事はありませんでしょうか?
- Power BIがSSLで接続しようとしない
- そもそもSSLで接続する設定が分からない
- IBM提供のDb2ドライバーを使っているのに「DataSource.MissingClientLibrary: IBM DB2: 固定名 'IBM.Data.DB2' を持つデータベース プロバイダーが見つかりません」エラーで接続しない
IBM Cloudが提供しているDb2はSSLを前提としている事と、IBM提供のドライバーを用いた場合、構成ファイルmachine.configの修正が必要でしたので、今回は下記のような設定手順で解説をいたします。
1.Db2資格情報の入手
2.Db2ドライバーの入手
3.machine.configの修正
4.Db2への接続
動画で解説
1.Db2資格情報の入手
PowerBIからDb2へ接続するには接続先Db2のサーバー名、データベース名、ポート番号、ID、パスワードなど資格情報が必要ですのでIBM Cloud側で入手します。サービス資格情報の「コピーアイコン」をクリックして、メモ帳などに保存します。

2.Db2ドライバーの入手
ドライバーの入手は管理の「OpenConsole」をクリック後表示される下図から、1.歯車アイコン-->2.接続-->3.Windowsタブの順で進みます。ドライバー・リストのリンクをクリック後表示される画面の下の方のVersion 11.5テーブルからWindows64ビット版ドライバー「ibm_data_server_driver_package_win64_v11.5.exe(ブログ執筆時)」をダウンロードします。

ダウンロードしたドライバーをダブルクリックすると導入が始まります。次へボタンや画面の指示にしたがって導入を完了させてください。
3.machine.configの修正
ドライバー導入後、MicrosoftのPowerBIフォーラムのPablo_dediosIBMさんの投稿の部分に従ってCドライブ直下のWindowsフォルダ-->Microsoft.NETフォルダー-->Framework64フォルダーに存在する
ドライバーを導入したタイムスタンプになっているvから始まるフォルダーを開き、さらにその中のフォルダーである、Configを開きます。(例えばC:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config)

machine.configを管理者権限を持っているエディターで修正をします。
修正は<DbProviderFactories>の部分を探し、

近くにある「IBM DB2 .NET Data Provider」行のinvariant="IBM.Data.DB2.11.5.0"というような、バージョン部分を消し"IBM.Data.DB2"だけにし、保存します。

4.Db2への接続
PowerBIからDb2への接続設定を行うには、最初に「①データを取得」をクリック後、「②db2」で検索し、表示された「③IBM DB2データベース」を選択し、「④接続」ボタンの順に進みます。

サーバーとデータベース欄には取得済のDb2資格情報からhost下のポート番号を含む長い文字列と
databaseに記述があるbludbを指定します。



詳細設定オプションのドライバーからIBMを選択し「OK」で進みます。

次のような画面で「データベース」を選択しユーザー名とパスワードを指定します。

ユーザー名とパスワード欄はDb2の資格情報から、-uがユーザー名、-pがパスワード
として指定し、「接続」ボタンで進みます。

ナビゲーター画面からDb2から取得したいテーブルを選択し「読み込み」ボタンでデータを取得します。

関連リンク
お問合せ
https://alpcom.co.jp/contact/
アルファー・コミュニケーションズ公式YouTubeチャンネル
https://www.youtube.com/channel/UCTqwZsRRpAs9NPTUz2yH3ow/videos