mysql - 如何将 ruby​​ on Rails 应用程序导入到另一台计算机

标签 mysql ruby-on-rails ruby database postgresql

我正在尝试将 Ruby on Rails 项目导入到我的计算机中,但遇到了数据库的各种问题。

情况是这样的:

我有一个从另一位开发人员那里获得的appname.tar.gz。我提取它并将其重新定位到我的用户目录以使用它。

  • 接下来我在目录中运行bundle install来安装gem 依赖关系。
  • 然后我运行 rake db:create 来创建数据库并 从同一目录中的 DB 文件夹加载架构和结构。这就是我遇到各种问题的地方。当我启动应用程序时,我收到一条错误消息,指出数据库迁移待处理。
    • structural.sql 是 MySQL 转储 10.13
    • 而database.yml 文件将适配器设置为postgres:适配器:postgres。这正常吗?

这是将现有应用导入您的环境的最佳方式吗?

任何帮助将不胜感激。

最佳答案

对我来说,这听起来像是您获得了 MySQL 转储并且应用程序配置为使用 postgres。我想知道为什么会这样,但您可以尝试在 config/database.yml 文件中通过设置类似

的内容来使用 mysql 适配器
default: &default
  adapter: mysql2
  encoding: utf8
  pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
  username: root
  password:
  host: localhost

development:
  <<: *default
  database: foobar_development

有趣的是适配器:mysql2

我从一个全新的 Rails 应用程序中获取了这个。你肯定需要 mysql 运行。

希望这有帮助。如果没有,你必须联系其他人来获取一些 postgresql 兼容的转储。

关于mysql - 如何将 ruby​​ on Rails 应用程序导入到另一台计算机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48547148/

相关文章:

ruby-on-rails - ruby 四舍五入到小数点后两位并保留零

mysql select multiple tables - 即使其他表为空,也返回结果

c# - 不变名称为 'MySql.Data.MySqlClient' 的 ADO.NET 提供程序未在计算机或应用程序配置文件中注册

ruby-on-rails - 如何使用 rails form 和 jsonb postgres

ruby-on-rails - Facebook 开放图谱抓取

Ruby:开始精简:找不到/home/ubuntu 的适配器

php - 单个查询中的两个 FIND_IN_SET 不起作用

sql - Mysql - 改进 'group by'中的咨询查询

ruby-on-rails - 如何在 ruby​​ on rails 的命名路由中添加 +?

ruby-on-rails - Rails (ActiveRecord) 多对多表