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