Mac下Rails連線Mysql的一點點心得

wide288發表於2014-08-18

首先附上我的工作環境

系統:Mac OS X 10.7.4

Ruby:ruby 1.9.3p194

Rails:Rails 3.2.6

Mysql:5.5.27 MySQL Community Server

由於我手上的書籍都是從圖書館借來的,他們的rails版本普遍比較早,雖然都是預設mysql資料庫,但都沒提到rails與mysql的連線問題,在他們看來這似乎不需要任何說明的。

但事實是,這是個灰常嚴肅的問題!至少在我這個版本下是的。

按書上操作,只會得到一個結果

ActiveRecord::ConnectionNotEstablished

目前為止,這個問題百度無法解決,我是在一個視訊中無意看到的

原來在這個版本里,gem裡面內含了sqlite3的驅動包,但是沒有mysql的,需要自己安裝

安裝方法:

1.cd到你的專案目錄 比如我的是

cd ruby/demo

2.安裝mqsql驅動包(外掛)

gem install mysql

3.在專案的Gemfile檔案中包含mysql驅動包

vi Gemfile

新加一行

gem 'mysql'

**感謝2L @ywjno 提醒 用Mysql2才是王道**

gem install mysql2

gem 'mysql2'

好,到這兒就安裝完成了,重新啟動WEBrick服務。這時你有可能得到兩種結果:

成功了,或者報錯:

undefined method 'init' for Mysql:Class

這又是怎麼回事兒呢?

研究過Mac下Mysql與Apche連線的同學應該明白的,沒錯,因為Mac下Mysql的安裝目錄與Liunx等使用的預設安裝路徑是不一樣的,rails去找預設路徑當然找不到,這個時候只要只要匯入mysql lib環境變數即可。

export DYLD_LIBRARY_PATH=/usr/local/mysql/lib/

現在在執行,沒問題了是不是?
文章大部分解說都是自己參詳的,看我還在研究這個就能明白我也才入門的小白,若有錯誤之處,請各位大神指正!

原文地址:http://ichou.cn/post/rails-with-mysql

相關文章