【问题标题】:Rails no database name in connectionRails没有连接数据库名称
【发布时间】:2018-12-05 12:59:04
【问题描述】:

尝试在 Ubuntu 16.04 上的 prod 中运行 rails 应用程序并安装了 mysql Ver 14.14 Distrib 5.7.24、Ruby 2.5.3,并使用了 mysql2 gem。它在我的 Mac 10.13 上运行良好。我的 Rails 应用似乎无法在 Ubuntu 中读取数据库名称。

找不到数据库名称: {:adapter=>"mysql2", :encoding=>"utf8", :database=>nil, :username=>"myUser", :password=>"secret", :host=>"127.0.0.1", :port=>3306}

然后添加 127.0.0.1 作为数据库名称: {:adapter=>"mysql2", :encoding=>"utf8", :database=>"127.0.0.1", :username=>"myUser", :password=>"secret", :host=>"127.0.0.1", :port=>3306}

我的数据库.yml

production: adapter: mysql2 encoding: utf8 database: mydb username: myUser password: secret host: 127.0.0.1 port: 3306

我一直在纠结为什么我无法连接到我的 Ubuntu 服务器中的数据库。我可以通过CLI登录mysql,DB用户很好。

我在带有 Vagrant 的 Ubuntu 机器上也看到了同样的问题,所以这是一致的。

此时任何帮助都非常感激。

我不知道,但把它放在这种格式是可行的。我尝试了其他所有方法,不同的数据库名称等均无济于事:

production: url: mysql2://user:pass@localhost/myDb

感谢您的回复。

【问题讨论】:

  • 显示您的database.yml 怎么样?
  • 数据库名称127.0.0.1 ?
  • database.yml 的其余部分看起来如何?你确定你在生产模式下运行服务器吗?

标签: mysql ruby-on-rails


【解决方案1】:

您的 database.yml 应该如下所示:

development:
  adapter:  mysql2
  encoding: unicode
  pool: 5
  username: mysql_user
  password: your_password
  host:     localhost_or_your_host
  database: db_name

请根据您的要求更改您的环境。这适用于您的开发模式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-19
    • 1970-01-01
    相关资源
    最近更新 更多