ColdFusion 2021 ODBCサービスが起動しない

(注意・補足)
ColdFusion 2016以降は、ODBC接続はサポートされていません。下位互換性のためODBC接続機能も残されていますが、データベースのサポートは下記のサポートマトリクスに掲載されているデータベース・バージョンに対して ColdFusion付属のドライバを使用した場合のみサポートされています。

https://helpx.adobe.com/jp/pdf/coldfusion2021-support-matrix.pdf
「クラウドデータベースサポート」はクラウド業者(Azure,AWS)が提供するデータベースサービスに対してColdFusion 2021 Enterprise版で接続が可能なものの一覧です。Standard版の場合は、その上の「サポートされているデータベース」でStandard版がサポートしているデータベース・バージョンに対してのみ接続が可能です)

ColdFusion 2021をインストールした際、ODBCサービスが起動しない場合があります。ColdFusion 2021で ODBC接続をする予定の無い方は、無視して頂いても構いません(ColdFusion Administratorの 「パッケージマネージャー」画面の「インストール済みのパッケージ」の中から『ODBC』を選択し 「アンインストール」することもできます)。

ColdFusion 2021でODBCを使用する予定がある場合は、以下の1、(1で解決しない場合は)2、
(2でも解決しない場合は)3の順に操作を行って頂き、動作が改善するかを確認してください。

  1. 下記のFAQで紹介しているODBC Serverサービスの稼働に必要なランタイムがインストールされているかを確認してください
    https://cfassociates.samuraiz.co.jp/index.cfm/faq/cftech/cf-odbc-error/
    • 2019.2 追加の所で記載されている、「Microsoft Visual C++ 2010再頒布可能パッケージ (x64)」がご利用の環境にインストールされていない場合は、Microsoftのサイトよりダウンロードしてインストールを行ったのちに、再度動作を確認してください
       
  2. (1.で解決しない場合は)ODBCサービスの設定ファイルをテキストエディタ(メモ帳等)で開き、下記のパスを確認し、誤った設定が含まれている場合は手動で本来のパスに変更してください
     
    1. [cf_root]/cfusion/db/slserver54/cfg 内の swandm.ini
      (例:C:\ColdFusion2021\cfusion\db\slserver54\cfg\swandm.ini)※swadm.iniファイルをバックアップを取ってから作業してください
       
      1. ファイル後半の[Service_0]より後の設定箇所にある、XXXPathやXXXFileに書かれているパスを以下のように変更ください
        「変更前」C:\Program Files\DataDirect\slserver54\....(それぞれのパス)
           ↓
        「変更後」C:\ColdFusion2021\cfusion\db\slserver54\....(それぞれのパス)
        ※パスはインストールに応じて変更してください
         
      2. [Service_0]のServiceNameを変更してください
        「変更前」ServiceName=ColdFusion ODBC Agent
           ↓
        「変更後」ServiceName=ColdFusion 2021 ODBC Agent
         
      3. [Service_1]のServiceNameを変更してください
        「変更前」ServiceName=ColdFusion ODBC Server
           ↓
        「変更後」ServiceName=ColdFusion 2021 ODBC Server
         
    2. [cf_root]/cfusion/db/slserver54/admin 内の swcla.ini
      (例:C:\ColdFusion2021\cfusion\db\slserver54\admin\swcla.ini)※swcla.iniファイルをバックアップを取ってから作業してください
       
      1. ファイル末尾の[SWANDM]のSWANDMのパスの指定を変更してください
        「変更前」SWANDM=C:\Program Files\DataDirect\slserver54\cfg\swandm.ini
           ↓
        「変更後」SWANDM=C:\ColdFusion2021\cfusion\db\slserver54\cfg\swandm.ini
         
  3. (2.で解決しない場合は)ColdFusion Administratorにログインし、「パッケージマネージャー」の画面の「インストール済みのパッケージ」の中から『ODBC』を選択し、「アンインストール」を選択しアンインストールを行います。
    その後、「使用可能なパッケージ」に『ODBC』が表示されますので、『ODBC』を選択して「インストール」を行ってください。
     
    • 作業の前に、ColdFusionがプロキシ環境下で動作している場合は、外部ネットワークに接続するため、[設定]タブの「プロキシ設定」にプロキシ情報を入力してください。

 

【補足】

ODBCのサービスが起動した後は、従来のバージョンと同様に、日本語の対応や、システムDSNの登録などが必要です。
https://cfassociates.samuraiz.co.jp/index.cfm/faq/cftech/cf2016-nosupport-odbc-socket/
https://cfassociates.samuraiz.co.jp/index.cfm/faq/cftech/cf-securelink-servicecodepage/

旧バージョンからデータソース設定を移行した場合も、ODBC Socket側には設定が移行されていない場合があります。その場合は、ColdFusion Adminsitratorの「データソース」の設定で、該当するデータソースを選択し、『ODBC DSN』の項目が正しいものを選択し直してください。正しいものが選択されている場合も、そのまま一度は [送信]ボタンを押してください。

 


記事公開日:2021年02月22日
最終更新日:2021年02月22日


x

Sample Modal Window

This is just a sample…

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent suscipit iaculis libero sed tristique. Quisque mollis dolor non tellus placerat vitae sodales lectus porta. Curabitur ut suscipit tellus. Maecenas rhoncus, ante vitae vehicula vestibulum, metus sapien dapibus tellus, et mattis dolor neque vitae nisl. Nullam eleifend ultrices ipsum eget pretium. Curabitur semper metus ut ante adipiscing nec volutpat sem rutrum. Nullam a nisi lacus, non interdum ante. Vivamus ante augue, commodo vel egestas sed, pharetra nec dui. Quisque sed tellus felis. Donec ipsum mauris, sagittis eu accumsan in, aliquam non ipsum.

Vestibulum tempor nunc nec felis scelerisque eget elementum erat dignissim. Ut vel ipsum mollis orci venenatis luctus. Aenean vehicula quam vel quam porttitor ac iaculis elit pulvinar. Proin consequat, ipsum eu venenatis semper, justo turpis posuere tortor, ac placerat metus nisl et lectus. Nulla cursus dui id nunc ullamcorper sed semper nisl lobortis. Aliquam erat volutpat. Phasellus arcu ante, imperdiet in ornare sed, laoreet eu massa.