Ruby に Gem パッケージ mysql をインストール済みなのに、connect 時に以下のようなエラーが発生します。
1
|
|
環境によって、発生したり発生しなかったりします。
以下、対策方法メモです。
備忘録
0. 前提条件
当方の場合、以下のような環境でこのようなエラーが発生しました。
- Scientific Linux 6.2 (x86_64)
- ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux] (ソースからコンパイルしてインストールした)
- Gem パッケージ mysql 2.8.1
ちなみに、以下のような環境では問題なかった。
- CentOS 6.3 (i386)
- ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux] (ソースからコンパイルしてインストールした)
- Gem パッケージ mysql 2.8.1
1. connect メソッドの存在確認
以下のようにして、connect コマンドが存在するか確認する。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
connect メソッドがありません。
2. Gem パッケージ ruby-mysql の導入
詳細は不明だが、mysql の代わりに ruby-mysql を導入すればよいようです。 Gem パッケージ mysql をアンインストールして、ruby-mysql をインストールする。
1 2 3 4 5 6 |
|
3. 再度 connect メソッドの存在確認
以下のようにして、connect コマンドが存在するか確認する。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
connect メソッドがあります。
これで、connect 時のエラーはなくなりました。 アーキテクチャによって、入るパッケージが異なるように思わせる現象でした。
以上です。