mysql - 在本地主机上的 sqlite3 上转换 Rails 项目

标签 mysql ruby-on-rails ruby sqlite

我是rails新手,在使用mysql数据库在本地主机上运行项目时遇到很多问题。有没有办法在本地主机上的sqlite3上运行项目,并在服务器上运行它可以使用mysql数据库运行。

最佳答案

是的,可以。事实上,我相信这种设置很常见。

在 Gemfile 中,开发组使用 sqlite3,生产组使用 mysql2。例如,

group :production do
  gem 'mysql2'
end
group :development, :test do
  gem 'sqlite3'
end

然后,在您的开发机器上,使用

$ gem install --without production

避免安装mysql。最后,在 database.yml 中,检查是否选择了 sqlite 适配器用于测试和开发,并选择了 mysql 适配器用于生产。

development:
  adapter: sqlite3
  database: db/development.sqlite3

test:
  adapter: sqlite3
  database: db/test.sqlite3

production:
  adapter: mysql2
  encoding: utf8

这应该足以让您开始。

关于mysql - 在本地主机上的 sqlite3 上转换 Rails 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18778540/

相关文章:

ruby-on-rails - Ruby:阅读 PDF 文件

ruby-on-rails - ActiveModel::MissingAttributeError(无法写入未知属性 `user_id`)

mysql - 我可以按预定顺序加载 ActiveRecord-Objects 吗?

ruby-on-rails - 你最喜欢的 ruby​​ 和 rails 测试 "gem(s)"或 "plugins"

java - 运行 opentaps 时无法从池中获取新连接

ruby-on-rails - 页面缓存,自动过期/清理器的最佳实践

ruby-on-rails - 错误的解释器 : No such file or directory

php - 如何在数据库中解析和插入数据

php - 如何获取 MySQL 数据库中的枚举可能值?

一台服务器上跨多个 InnoDB 数据库的 MySQL 事务