はじめに
windows8.1(64bit版)にのMySQL ODBC(32bit版)入れても、
システムDSNへの追加でエラーになり、使えなかった。
なんかレジストリへの登録が失敗してるっぽい。
前提
- windows7以降の64bit版OS(たぶん)
- MySQLのODBCの32bit版
- VisualC++2013の再配布パッケージ導入済み
今回の例
- windows8.1Pro 64bit
- MySQL Connector ODBC 5.3 32bit
参考URL
-
MySQL用 Connector-ODBC を Ms ODBCデーターソースアドミニストレーター が認識してくれない - マイクロソフト コミュニティ
- 現象、及び解決方法が詳細に書いてある
-
ODBCデータソースを削除できません。
- 消去不可のODBCを作ってしまった時に、せめて「ODBC データ ソース (32 ビット)」のタブ「ドライバー」から存在を消去したい時に読んだ
-
Using the ODBC Installer Command-Line Tools
- コマンドミスった時に、コマンドからODBCの登録を削除したい時に読んだ
手順
- MySQLのODBC(32bit版)のインストーラーをダウンロードしてインストールする。
-
C:\Program Files (x86)\MySQL\
以下にConnector ODBC 5.3
のフォルダが出来上がる。 - 上記のODBCフォルダをコピーしてどっかに残す。
- インストーラーを再度起動し、removeを選択して無かった事にする。
- ※これやらずに以下にあるコマンド打つと、変更・消去不可の(空の)ODBC設定が登録されてやべーことになる。
- コピーしといたODBCフォルダを
C:\Program Files (x86)\MySQL\
以下に置く。 - コマンド打つ。
- OK!
コマンドプロンプト
"C:\Program Files (x86)\MySQL\Connector ODBC 5.3\myodbc-installer" -d -a -n "MySQL ODBC 5.3 ANSI Driver" -t "DRIVER=C:\Program Files (x86)\MySQL\Connector ODBC 5.3\myodbc5a.dll;SETUP=C:\Program Files (x86)\MySQL\Connector ODBC 5.3\myodbc5S.dll"
"C:\Program Files (x86)\MySQL\Connector ODBC 5.3\myodbc-installer" -d -a -n "MySQL ODBC 5.3 Unicode Driver" -t "DRIVER=C:\Program Files (x86)\MySQL\Connector ODBC 5.3\myodbc5w.dll;SETUP=C:\Program Files (x86)\MySQL\Connector ODBC 5.3\myodbc5S.dll"
※5.3
やmyodbc5
等のバージョン部分は適宜変える。あとインストールフォルダとかも。
ミスった場合
上記のコマンドでバージョンとかインストール場所とかをtypoした場合、
以下のコマンドでODBCドライバーのレジストリ設定を削除可能。
コマンドプロンプト
"C:\Program Files (x86)\MySQL\Connector ODBC 5.3\myodbc-installer" -d -r -n "MySQL ODBC 5.3 ANSI Driver"
"C:\Program Files (x86)\MySQL\Connector ODBC 5.3\myodbc-installer" -d -r -n "MySQL ODBC 5.3 Unicode Driver"
※5.3
やmyodbc5
等のバージョン部分は適宜変える。あとインストールフォルダとかも。