Mysql Ruby On Rails数据库错误,在生产环境中拒绝用户(使用密码:否)而不是root用户的访问

Mysql Ruby On Rails数据库错误,在生产环境中拒绝用户(使用密码:否)而不是root用户的访问,mysql,ruby-on-rails,rake,Mysql,Ruby On Rails,Rake,编辑:有人建议这篇文章是另一篇文章的翻版。请注意,另一篇文章的主要线索是,该文章的作者收到一条错误消息,说“root”试图访问数据库。这不是我面临的问题。我在错误消息中有正确的用户 只需安装其他开发人员一直在开发的Rails 4.2应用程序 数据库是MySQL 数据库依赖于视图,视图锁定在用户“nibble_prod”上。用户“nibble_prod”是指我们在生产中使用的用户 我们没有很好的安装脚本,所以我在我的机器上手动创建了一个用户: 创建由“something”标识的用户“nibble

编辑:有人建议这篇文章是另一篇文章的翻版。请注意,另一篇文章的主要线索是,该文章的作者收到一条错误消息,说“root”试图访问数据库。这不是我面临的问题。我在错误消息中有正确的用户


只需安装其他开发人员一直在开发的Rails 4.2应用程序

数据库是MySQL

数据库依赖于视图,视图锁定在用户“nibble_prod”上。用户“nibble_prod”是指我们在生产中使用的用户

我们没有很好的安装脚本,所以我在我的机器上手动创建了一个用户:

创建由“something”标识的用户“nibble_prod”@“localhost”

授予**上的所有特权到'nibble_prod'@'localhost'

然后我编辑:

  ~/.bashrc
  source ~/.bashrc
如果我:

我明白了:

  PRODUCTION_DATABASE_PASSWORD=something

我有:

  production:
    <<: *default
    database: orim
    username: nibble_prod
    password: <%= ENV['PRODUCTION_DATABASE_PASSWORD'] %>
我得到:

  /vagrant/vendor/bundle/ruby/2.1.0/gems/mysql2-0.3.19/lib/mysql2/client.rb:70:in `connect': Access denied for user 'nibble_prod'@'localhost' (using password: NO) (Mysql2::Error)

为什么不使用密码

可能重复这不是重复,因为我做RAILS_ENV=production,所以我肯定在生产中。在另一个问题上,用户未能激活生产环境。另一篇文章的主要线索是该文章的作者收到一条错误消息,说“root”试图访问数据库。这不是我面临的问题。我在错误消息中找到了正确的用户。当人们将一个问题标记为重复问题,而没有真正阅读问题的细节时,我感到很沮丧。
  production:
    <<: *default
    database: orim
    username: nibble_prod
    password: <%= ENV['PRODUCTION_DATABASE_PASSWORD'] %>
   rake db:structure:dump RAILS_ENV=production
  /vagrant/vendor/bundle/ruby/2.1.0/gems/mysql2-0.3.19/lib/mysql2/client.rb:70:in `connect': Access denied for user 'nibble_prod'@'localhost' (using password: NO) (Mysql2::Error)