6

ruby on rails をインストールしようとしていて、これですべてがインストールされましたが、 でデータベースを作成しようとするとrake db:create、奇妙なエラーが発生します。

dyld: 遅延シンボル バインディングに失敗しました: シンボルが見つかりません: _mysql_get_client_info 参照元: /Library/Ruby/Gems/1.8/gems/mysql2-0.3.11/lib/mysql2/mysql2.bundle

dyld: シンボルが見つかりません: _mysql_get_client_info 参照元: /Library/Ruby/Gems/1.8/gems/mysql2-0.3.11/lib/mysql2/mysql2.bundle 期待される場所: flat 名前空間

トレース/BPT トラップ: 5

私はosxマウンテンライオンの最新アップデートに取り組んでいます。誰かが私に適した解決策を持っていますか?

4

7 に答える 7

4

あなたはこれを試すかもしれません。

sudo gem install mysql2 — –with-mysql-config=/usr/local/mysql/bin/mysql_config

必ず自分の場所でmysql構成パスを変更してください。

これは、次のコマンドで判別できます。

locate mysql_config

上記のコマンドで指定されたパスを活用します。

于 2013-03-08T12:07:50.100 に答える
3

このメッセージは、間違ったバージョン 32 と 64 をリンクしたことを示しています。

OSX では、インストールされている mysql のすべてのバージョンを確認できます

cd /usr/local/

/usr/local/mysql-xxxx/bin/mysql_config で適切な構成を見つけます

私の場合は次のとおりでした。

gem uninstall mysql2
sudo gem install mysql2 -- 
--with-mysql-config=/usr/local/mysql-5.5.27-osx10.6-x86_64/bin/mysql_config

ここで説明したように: https://www.ruby-forum.com/topic/1440086

于 2014-03-01T10:11:39.450 に答える
2

これについては多くの質問があり、少なくとも同じくらい多くの回答が機能する場合もありますが、そうでない場合もあります。それらのほとんどを試した後、gem が 64 ビットで、mysql のインストールが 32 ビットであることに気付きました。

それを修正するには:

  • 64 ビットの mysql をインストールする
  • /usr/local にシンボリック リンクを設定して、64 ビット バージョンを指すようにします。
  • プロファイルに PATH と DYLD_LIBRARY_PATH を設定して、正しいバージョンを含めます
  • mysql2 gem をアンインストールする
  • mysql2 gem をインストールする
  • ruby が mysql とうまく連携するようになりました!

これは環境によって異なる傾向があるため、正確なコードは含めていません。

于 2013-11-23T04:10:06.803 に答える
1

私はこれに苦労していました..上記のすべての回答を試したので、どの組み合わせが修正につながったかを正確に特定することはできません. 私はすでにmysqlをインストールしており、mysqlのWebサイトから再インストールしました。ベローに従った後、ようやく機能し始めました。

これは Rails 4 を使用する Mavericks で、brew がインストールされています

brew install mysql

私はこのプロセスをお勧めしません..何時間もの欲求不満の後、それが私のために働いたことに注意してください.

ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

sudo gem uninstall mysql
gem uninstall mysql2
gem install mysql
gem install mysql2
于 2014-07-25T16:44:28.680 に答える
0

何らかの理由で 2 つのバージョンの mysql (32 ビットと 64 ビット) をインストールしました。

$MYSQL 環境変数 (おそらく ~/.bash_profile または ~/.profile にあります) が 64 ビット バージョンを指していることを確認してください。

また、他の回答で述べたように、gem をインストールするときに、正しい mysql インストールを指していることを確認してください。

于 2016-06-11T18:30:16.237 に答える
0

64 ビットの MySql サーバーをインストールする必要があります。mysql gem を再インストールすることを忘れないでください。

于 2014-06-14T08:56:26.317 に答える
0

私は同じ問題を抱えていました。mysql2 のバージョンは 0.4.9 で、0.4.5 にダウングレードして問題を解決しました

于 2017-09-21T08:53:37.023 に答える