2

ここ数日、OS X で開発環境をセットアップしようとしてきましたが、mysql で多くの問題が発生しました。mysql Web サイトから入手できる dmg ファイルを介して mysql をインストールしました。これにより、私が抱えていた問題のほとんどが修正されました。

私の現在の問題は、「rake db:migrate」を実行すると、次のエラーが発生することです。

レーキが中止されました!
Mysql:Class の未定義メソッド「init」

Gemfile で gem 'mysql2' を使用し、データベース アダプターとして mysql2 を使用すると問題が解決する可能性があることをどこかで読みました。これをやってみましたが、うまくいきませんでした。注意すべきことの 1 つは、mysql が PATH 変数のどこにもないことです。そのため、ターミナルで「mysql」と入力すると、奇妙な /var/_mysql に移動します。

パス変数に「/usr/local/mysql/bin」を追加する必要がありますか? もしそうなら、OS Xでこれを行うにはどうすればよいですか?

ありがとう。

編集: /usr/local/mysql/bin をパスに追加しましたが、まだ同じエラーがあります。

4

2 に答える 2

4

問題を解決するために、mysql gem の代わりに mysql2 gem を使用することになりました。このプロセスはまったく簡単ではなかったので、後で誰かが助けを必要とする場合に備えて、私が取った正確な手順を投稿したいと思いました.

まず、お使いの OS X のバージョンに対応する OS X DMG ファイルを mysql Web サイトからダウンロードします。mysql、スタートアップ項目、最後に設定パネルをインストールする必要があります (これら 3 つすべてが DMG ファイルに含まれています)。

次に、mysql をパス変数に追加する必要があります。/etc/paths を編集したり、/etc/paths.rd/ に新しいファイルを追加したりできると思いますが、端末の構成ファイルを変更してしまいました。~/.zshrc に次の行を追加しました (これは zsh 専用です。bash を使用する場合、ファイルは ~/.bashrc のようなものです):

export PATH=[path:variables]:/usr/local/mysql/bin
export DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/usr/local/mysql/lib/"

[path:variables] は、そこにあった他のすべてのパス変数の単なるプレースホルダーです。2 行目は、mysql2 gem を機能させるために必要なものです。2 行目により、mysql は必要なライブラリ ファイルを見つけることができます。

次に、置換または追加

gem 'mysql' 

gem 'mysql2', '< 0.3'

< 0.3 が必要でした。そうしないと、いくつかの奇妙なエラーがスローされました。(申し訳ありませんが、スタック トレースを保存しませんでした)。最後のステップは、データベース アダプタを mysql2 に変更することです。これが誰かが頭痛を大幅に軽減するのに役立つことを願っています:)

于 2011-08-25T02:13:52.673 に答える
-1

MySQL と MySQL gem を完全にアンインストールすることをお勧めします。次に、Homebrew パッケージ マネージャーをインストールし、Homebrew を使用して MySQL をインストールします。その後、宝石をインストールします。Homebrew は、多くの場合、あなたの生活をずっと楽にしてくれます。C ライブラリのインストールに自信がない場合に特に役立ちます。

于 2011-08-24T20:17:29.517 に答える