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については別途書きたいと思います。
スポンサーリンク