OS X上のFileMakerでODBCを介してMySQLと接続、外部SQLデータソース(ESS: External SQL Data Sources)などを試したときのハマりポイントメモ。
- ODBC管理ソフトの導入
古いOS Xでは、ODBC Administratorと呼ばれる管理ソフトがバンドルされていましたが、10.6(Snow Leopard)から提供されなくなっています。(いまでもAppleのサイトから古いODBC Administratorをダウンロードすることは可能で、試しに10.9(Mavericks)にインストールみたところ、いちおう動作することを確認しました。)
「odbc.iniを直で編集か…」とも思ったのですが、FileMaker社のサイトを見ると「ODBCクライアントドライバの設定」というページでActual Technologies 社の ODBC マネージャ(無償)が紹介されており、これを使うとODBC Administratorと同じことができます。
ODBC Managerは、無償で提供されている上に日本語化もされています。
素直に、 ODBC Managerを使うのが無難そうです。
- ODBCドライバの導入
通常、ODBCドライバはデータベースサーバの開発元が提供しており、それを使うのが一番無難で確実なはずですが、どうもOS XとFileMaker、MySQLの組み合わせの場合、ちょっと事情が違うようです。
結論から書くと、MySQLのWebサイトで提供されている純正のODBCドライバを用いてFileMakerの連携機能を使うのは避けた方が良いです。
純正ODBCドライバを用いた場合、FileMakerを動作させているOS Xの環境により動作がまちまちで、データソースの指定やインポートの設定画面でレインボーカーソルがでたり、テーブル名やフィールド名の一覧が表示されず操作が続行できなくなったりします。(同じodbc.iniとodbcinst.iniを使いunixODBCのisqlコマンドから試してみると、ローカル・リモートともに問題なく接続できるので、ODBCまわりの設定というよりFileMakerの問題のように思えます。)
解決には、 Actual Technologies 社が提供しているODBCドライバ(有償)を使うのが無難で確実そうです。
40ドルくらいの出費でまる1日かけて解決できなかった問題があっさり解決できてしまいました。
FileMaker ProとODBCドライバの種類(32bitとか64bitとか)の組み合わせも注意が必要です。組み合わせが間違っていると「Did find: /usr/local/lib/libmyodbc5.so: mach-o, but wrong architecture」みたいなエラーメッセージが表示されます。
ちなみに、Windows上のFileMakerで同じことを試すとサクッと繋がって、当たり前の様に普通に使えます。
Please give us your valuable comment