1
我安裝Ruby on Rails的從sqlite3的轉換爲mysql2寶石
- 的Ubuntu 10.10
- 的Rails 3
- 寶石= sqlite3的和sqlite3的,紅寶石
- 寶石= mysql2
現在我創建了一個名爲mytestapp的應用程序,使用
rails new mytestapp
像往常一樣使用rails 3,它默認使用sqlite3數據庫。現在我想更改mytestapp的數據庫,以便它使用MySql數據庫。
我在這裏所做的更改
- 的database.yml
- 的Gemfile - 我加寶石 'mysql2'和刪除寶石 'sqlite3的'
我的新的database.yml看着像這樣的東西
development:
adapter: mysql2
encoding: utf8
reconnect: false
database: mytestapp_development
pool: 5
username: mytestapp
password: hacked
socket: /var/run/mysqld/mysqld.sock
現在我轉到本地主機:3000並點擊有關應用程序的開發環境 我收到以下錯誤
的ActiveRecord :: ConnectionNotEstablished
MySQL用戶mytestapp具有數據庫適當的權限。
逸岸時,我用下面
rails new anotherapp -d mysql
創建一個新的Rails應用它的偉大工程。這裏可能會丟失什麼。
確定diff命令顯示我的Gemfile .lock也有sqlite作爲它的依賴。那麼我應該手動更換還是使用一些命令。也許捆綁安裝。我不知道。 – Nikhil 2011-03-20 13:55:03
您通過運行'bundle install'來更改Gemfile.lock。 – 2011-03-21 01:33:27