非IT企業に勤める中年サラリーマンのIT日記

非IT企業でしかもITとは全く関係ない部署にいる中年エンジニア。唯一の趣味がプログラミングという”自称”プログラマー。

WindowsにMySQL用のODBCドライバ入れたけどクソハマったので書き留めておく

   

ExcelVBAでMySQLにアクセスしたいと思ってMySQL用のODBCドライバをインストールしたのですが、いろいろハマったので(今は無事解決)共有のためインストール手順を書き留めておきます。

MySQL用のODBCドライバのインストール

以下のMicrosoft公式ページからODBCドライバをダウンロードします。Windows/Excelともに64bit版なので赤矢印の64bit版を選びました。ネット情報によるとWindowsが64bit版でもExcelが32bit版なら32bit版インストーラーを選ぶ必要があるらしいです。(試していないので定かではない)

https://dev.mysql.com/downloads/connector/odbc/

Login または Sign Upを求められますが、下に「No thanks…」というリンクでユーザー登録なく進めます。

以下のようにインストーラーをダウンロードしました。

 

さて、インストールだと思って起動すると途中(序盤)で以下のようなエラーメッセージが。Visual Studioを楊重されました。これが最初の躓き。

 

VS2019を要求されたのでインストール

なので、同じくMicrosoft公式サイトからVisual Studioをインストールしたのですが….

  • 最新版のVisual Studio 2022をインストール → ダメ
  • 以前バージョンの2019をインストール → ダメ

どうやっても上のエラーメッセージが現れます。

で、メッセージに書かれていた通り「Visual studio 2019 x64 Redistributable」をキーに検索したところ以下のIBMサイトに行きつきました。Redistributableまでがソフト名だったんですね。赤矢印のリンクをクリックしてインストーラーをダウンロードしました。

https://www.ibm.com/links?url=https%3A%2F%2Faka.ms%2Fvs%2F16%2Frelease%2Fvc_redist.x64.exe

 

インストーラーを起動すると昔っぽいUIの画面が現れました。指示に従ってインストールします。

 

改めてODBCドライバのインストール

vc_redist.x64.exeなるものをインストール後、改めてODBCドライバのインストールを進めたところ、エラーなくインストールできました!

 

ODBCドライバの設定

最後の躓きがODBCドライバの設定でハマったことです。どうやっても以下のメッセージが現れました。後述しますが単純にドライバの選択ミスです。

Connection failed with the following error:
[MySQL][ODBC 8.0(w) Driver] Lost connection to MySQL server at ‘reading
initial communication packet’, system error: 0[08S01]

 

タスクバーのウィンドウアイコンを右クリックして「ファイル名を指定して実行」をクリックします。

 

以下の画面が現れたら「odbcad32.exe」と入力し「OK」ボタンをクリックします。

 

以下のウィンドウが現れるので、「ドライバー」タブを開くと「MySQL ODBC …」が確認できると思います。ここは確認するのみ。

 

「ユーザーDSN」タブを開き、「追加」ボタンを押しましょう。

 

リストの中から「MySQL ODBC X.X ANSI Driver」を選んで「完了」をクリックします。ここでUnicode版を選んでしまうと冒頭のエラーが発生します。

 

必要事項を入力します。最初の「Data Source Name」は任意の名前でOKです。あとはMySQLで設定しているUser/Passなどを入力しましょう。

 

「Test」ボタンを押して以下のメッセージが現れたら接続成功です。(このタイミングで冒頭のエラーが発生したわけです)

 

ここまでやればExcel/VBAからMySQLに接続することができます。VBAについては別途書きたいと思います。

 

スポンサーリンク

 - MySQL, Windows