SQLServer2019へ接続する際に、「class not registered」とエラーとなる
いつも情報ありがとうございます、
今程お客様でインストール作業しておりますが、
SQLServer2019へ接続する際に、「class not registered」とエラーとなります。
mgerror.log
にも
[Error ] - オープンできません.データソース: 『SQLServerのテーブル名』,Program: "『該当のプログラム』"
と記録されています。
何か情報等ございましたら、お願いいたします。
SQLServerのデータベースゲートウェイもインストール時、
選択しており、
データベース設定等も、想定した設定となっております。
よろしくお願いいたします。
-
マジックソフトウェア社のサイトを見ますと、SQL Server 2017までは動作環境として問題なさそうなのですが、SQL Server 2019は「動作確認済み」の事項に「留意事項」という項目が多いですね。一度、そちらに目を通されたほうがいいかもしれませんね。
-
ありがとうございます、
確認してみます
-
ありがとうございます、
SQLServerをインストールしたサーバー上では、
ManagementStudioをインストールして、
データベース接続とテーブルをクエリで参照できました。
エラーの発生している、
端末から、ISHIJIMA樣投稿が
できるか、これから試してみます。
-
まだ、ManagementStudioでは、試していないのですが、
エラーの発生している、
端末とは、別な端末で、環境構築して、
SQLServer上の構成マネージャーから、下記のように変更したら
エラーが変わりました。
1.SQLServerの指定は、サーバー名
『;Named Pipes Provider;could not open a connection to SQLServer [1326]』
と変わりました
それで、
SQLServerの構成マネージャーで、
名前付きパイプを無効から有効に変更して、サービス再起動しましたが、
エラーは変わらず
2.SQLServerの指定をIPアドレスにしたら、
『サーバーのオープン処理の遅延のため、ログインプロセスを完了できませんでした。』
と変わりました
-
解決できました、
SQLServerをインストールした、サーバー上の
ファイアーウォールの設定で、
SQLServerのポート1433を許可したら、
SQLServerのデータが参照できました。
大変お騒がせいたしました。
また情報ありがとうございました。
-
ちょうど今、ポート1433のことを書こうとしていた矢先でした。
自前のWindows Serverは明示的に穴を開けてやる必要がありますから面倒ですよね。
クラウドでしたら、こういうよく使われるポートはたいてい最初から穴が開いています。
-
もちろん、上位のルーターレベルでは穴は塞がれていますが。。。
-
クラウドのWindows Serverは本当に楽です。自前のWindows Serverは、買ってきて自分であれこれ設定しなければいけませんが、クラウドのWindows Serverは最初からほとんどの設定が成されていますので、すぐに稼働させることができますね。
-
何といっても、その便利さの最たるものは、クラウドの場合、最初からインスタンス毎に固定のグローバルIPアドレスが割り振られているという点ですね。ですのでRIAにしろ、WebClientにしろ、あっという間にサイトを立ち上げることができます。
これが、自前のWindows Serverですと、まずは固定のグローバルIPアドレスを取得する手続きから始めなければならないという、なんとも面倒な手順が付きまといます。
※話題が本題とずれてしまってすみません。
-
僕もこのエラーにはまりました。
サーバー側はManagementStudioをインストールした際にOLE DBドライバが一緒にインストールされているので気がつかなかった
のですが、クライアント側には別途 OLE DBドライバ をインストールしてやる必要がありました。
↓
TLS 1.2がサポートされたことに伴い、SQL Serverへの接続には、OLE DBドライバが必須になりました。
OLE DBドライバは、現在のSQL Server のクライアントモジュールには標準インストールされませんので、以下のMicrosoftサイトよりダウンロードおよびインスト ールする必要があります。
https://www.microsoft.com/ja-JP/download/details.aspx?id=567 30 -
Magicのゲートウェイからアクセスする分には、関係なさそうですよ。
-
丹田さん、こんにちは
>Magicのゲートウェイからアクセスする分には、関係なさそうですよ。
-----------------------------------------------------------------------------------------------
いえ、サポートからの情報です。
<テクニカル情報より抜粋>
2003544:SQL Serverへの接続に対して、OLE DBドライバが必須になった件HAYATO@アインシュタイン設計社
-
テクニカル情報を見てみました。
本当ですね。ただ、Magic xpa 3.3b PT1より、Magicのインストール時にこのOLEドライバーも自動的にインストールされると書いてありますので、そのパッチ以降は問題なさそうですね。
情報をありがとうございました。
※お元気そうで何よりです。曾孫さんはまだですか?(笑
-
丹田さん、こんにちは。
ひ孫ですか〜、憧れますね〜🤗。でもまだ高校生なんで暫くは憧れのままのようです。
ところでインストーラーの件ですが3.3では対応しているとのことですが、僕もそう思っていたので、すっかりハマってしまいました。
サポートから回答貰うまで、4.6.1+PT1では含まれていると思い込んでいました。ただ不可解なのは、同じ環境でUniPaaSのプログラムやA5などのツールだと正常にアクセス出来ることです。
ただ、class not registeredの発生していたパソコンは、OLE DBドライバーか、それをインストーラーに含むマネージメントスタジオなどの他アプリをインストールすることで解決しました。
-
あ、そういういきさつがあったんですね。情報をどうもありがとうございました。
クラサバ→WebClientへの移植、ぜひやってくださいね。期待しています!
-
HAYATOさん、他に書く人がいないようなので、HAYATOさんのこれまでの長年の移植ノウハウを生かして、WebClientへの移植ノウハウ本を書いてみませんか?きっと喜ばれると思いますよ。(^^)
HAYATOさんが以前書いた本は、大切に大切に取ってありますよ(↓遠藤勇人 著)。
-
ちなみに、MさんやCHさん達が作ってくれた、「dbMAGIC Q&A 集」も、大事に大事に保存してあります(下図)。永久保存版ですね。

-
今までxpa 4 Enterprise Client をスタンドアロンでは提供していました。
今日は初めてサーバー&クライアント環境へインストールしました。
サーバーDB はSQL Server 2022です。
class not registered が表示されました。
OLE DB Driver for SQL Server をインストールしようとしたら
Microsoft Visual C++ 2015-2022 Redistributable (x64) - 14.34.31938を入れろと表示されインストールしました。
その後、OLE DB Driver for SQL Server のインストールをチャレンジしようとしたらMicrosoft Visual C++を入れろとまた表示されました。
インストールがうまくいっていないのでしょうね。
ちなみに普段開発PCとして使っているPCのSSMSやMagic開発版からは、対象サーバーのデータの読み書きに成功しました。 -
nkmtさん、
DB接続とコマンド送信に関する仕事は、Magicに添付されたそれぞれのゲートウェイが全てをこなしてくれますので、基本的には外部のユーティリティ等は一切不要なはずですよ。かえって外部ツールを入れたりすると、処理の奪い合いになってしまう可能性があると思います。
-
テクニカル情報 xpa 4.8.1~ で
OLE DB Driver for SQL Server 19 をインストールした端末では
class not registered と出る
18を入れなさいという情報を見つけ
OLE DB Driver for SQL Server 18 をネットから探してインストールしたら
クライアントPC xpa 4.7.1 PT2 からWindows Server 2019の
SQL Server 2022 のデータを読み書きできました。
焦る~汗 -
その外部ドライバが悪さをしていたということですね。OLEを使用するときは要注意ですね。
-
なので今のまとめは
xpa 4.7.1 のインストール
xpa 4.7.1 PT2 を当てる
OLE DB Driver for SQL Server 18 をインストールする。
すると xpa 4.7.1 Enterprise ClientのPCからSQL Server 2022 のデータが読み書きできる。
かもしれません。tandaさんの記事と後先なっているかもしれません。
客先現地作業なので。 -
16:12の書き込みは間違い情報かもれしれません。
xpa 4.7.1 のインストール
xpa 4.7.1 PT2 を当てた
これだけで動いたPCがあります。
うまくいかずに先程のPCは私が何かやっちゃった可能性がありますね。 -
SQL Server 2022を含めて、外部ツールは最新版を使用する場合は枯れていない箇所が存在する可能性がありますので要注意ですね。私は今でもメインは、SQL Server 2014です。Magicのゲートウェイでは、SQL Serverのそれ以降の新機能は使用していないと思いますので、軽さを優先しています。
-
かと思えば、今日あまり触っていないPCは
OLE DB Driver for SQL Server 18 を入れたら
class not registered が表示されずにxpa が無事起動したPCもあります。 -
Magic以外に何がインストールされているかで変わるのでしょうね。OLE関係なら、Officeとかも要チェックですね。
-
今の所、OLE DB Driver for SQL Server 18 を入れないでいいPCが3台、
入れないといけないのが2台でした。
tandaさんのおっしゃる通り、不要なのかもしれません。
入れないといけないPCは私がなにかやってしまったのでしょう。 -
tandaさんありがとうございます。
xpa 起動して、class not registered とエラーが出てxpaアプリが動かない場合、
OLE DB Driver for SQL Server 18 をインストールするようにしてみます。 -
ただし、こんどはその19ドライバを使用しているアプリ側で不具合が出る可能性もありますね。
-
なるほどですね。そうなるとこれまた問題ですね。
今の所、OLEドライバ18を入れたPCと入れていないPCとメモしておきます。
サインインしてコメントを残してください。
コメント
57件のコメント