使用MySQL而不是SQLite创build一个新的Ruby on Rails应用程序

我想用MySQL创build我的Rails应用程序,因为我非常喜欢它。 我怎么能在最新版本的Rails,而不是默认的SQLite呢?

如果您已经有了一个rails项目,请将config/database.yml文件中的适配器更改为mysql ,并确保指定了有效的用户名和密码以及可选的套接字:

 development: adapter: mysql2 database: db_name_dev username: koploper password: host: localhost socket: /tmp/mysql.sock 

接下来,确保你编辑你的Gemfile来包含mysql2或activerecord-jdbcmysql-adapter(如果使用jruby)。

通常情况下,你会创build一个新的Rails应用程序使用

 rails ProjectName 

要使用MySQL,请使用

 rails new ProjectName -d mysql 

Ror导轨3使用

 $rails new projectname -d mysql 

去terminal,写:

 rails new <project_name> -d mysql 

如果你还没有创build你的应用程序,只需要到cmd(对于windows)或terminal(对于linux / unix),然后input以下命令来创build一个带有mysql数据库的rails应用程序:

$rails new <your_app_name> -d mysql

它适用于rails版本3以上的任何东西。如果你已经创build了你的应用程序,那么你可以做以下两件事之一:

  1. 使用mysql数据库创buildanother_name应用程序,转到cd another_name / config /并从这个新的应用程序复制database.yml文件。 将其粘贴到your_app_name应用程序的database.yml中。 但确保在更改数据库名称并在database.yml文件中相应地设置数据库的用户名/密码后。

要么

  1. 转到cd your_app_name / config /并打开database.yml。 重命名如下:

发展:
适配器:mysql2
数据库:db_name_name
用户名:root
密码:
主机:localhost
套接字:/tmp/mysql.sock

此外,从你的Gemfile中删除gem'sqlite3'并添加gem'mysql2'

如果您使用rails 3或更高版本

 rails new your_project_name -d mysql 

如果你有更早的版本

 rails new -d mysql your_project_name 

所以在你创build你的项目之前,你需要findrails版本。 你可以find

 rails -v 
 rails -d mysql ProjectName 

使用-d选项创build应用程序

 rails new AppName -d mysql 
 rails new <project_name> -d mysql 

要么

 rails new projectname 

config / database.yml中的更改

 development: adapter: mysql2 database: db_name_name username: root password: host: localhost socket: /tmp/mysql.sock 
 $ rails --help 

永远是你最好的朋友

用法:

 $ rails new APP_PATH[options] 

还要注意应该在应用程序名称之后给出选项

rails和mysql

 $ rails new project_name -d mysql 

rails和postgresql

 $ rails new project_name -d postgresql 

您应该使用开关-D而不是-d,因为它将生成两个应用程序和mysql,没有文档文件夹。

  rails -D mysql project_name (less than version 3) rails new project_name -D mysql (version 3 and up) 

或者,您只需使用--database选项。

如果你正在创build一个新的rails应用程序,你可以使用-d开关来设置数据库,如下所示:

 rails -d mysql myapp 

以后总是很容易切换你的数据库,如果你在Mac上开发,使用sqlite确实更容易。

只要到rails控制台input:

 rails new YOURAPPNAME -d mysql 

在Rails 3中,你可以做到

 $rails new projectname --database=mysql 

首先确保安装了mysql gem,如果没有的话? 在控制台中input以下命令

 gem install mysql2