【问题标题】:Problems with "rails server"“rails 服务器”的问题
【发布时间】:2013-03-31 15:11:54
【问题描述】:

我是 Ruby on Rails 的新手,很抱歉这个问题,这可能很简单,但是..

所以,这是我的问题:我有带有 RoR 的 Ubuntu 12.04。我正在参与一些项目,所以我检查了 svn,安装了 bundle,现在我遇到了 rails 服务器的问题。这是来自终端的日志

public 不再用于避免重载 Module#public,而是使用 :public_folder 来自 /usr/lib/ruby/gems/1.8/gems/web_translate_it-1.7.1.3/lib/web_translate_it/server.rb:12 弃用警告: require "activerecord" 已被弃用,将在 Rails 3 中删除。请改用 require "active_record"。 (从 /usr/lib/ruby/vendor_ruby/activerecord.rb:2 调用) => 启动 WEBrick => Rails 3.2.12 应用程序开始在 http://0.0.0.0:3000 开发 => 使用 -d 调用以分离 => Ctrl-C 关闭服务器 退出 /usr/lib/ruby/gems/1.8/gems/mysql2-0.3.11/lib/mysql2/client.rb:44:in `connect': 拒绝用户 'fubademoall'@'localhost' 访问(使用密码:YES ) (Mysql2::错误) 来自 /usr/lib/ruby/gems/1.8/gems/mysql2-0.3.11/lib/mysql2/client.rb:44:in `initialize' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/connection_adapters/mysql2_adapter.rb:16:in `new' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/connection_adapters/mysql2_adapter.rb:16:in `mysql2_connection' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/connection_adapters/abstract/connection_pool.rb:315:in `send' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/connection_adapters/abstract/connection_pool.rb:315:in `new_connection' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/connection_adapters/abstract/connection_pool.rb:325:in `checkout_new_connection' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/connection_adapters/abstract/connection_pool.rb:247:in `checkout' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/connection_adapters/abstract/connection_pool.rb:242:in `loop' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/connection_adapters/abstract/connection_pool.rb:242:in `checkout' 来自 /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/connection_adapters/abstract/connection_pool.rb:239:in `checkout' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/connection_adapters/abstract/connection_pool.rb:102:in 'connection' 来自 /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/connection_adapters/abstract/connection_pool.rb:101:in `connection' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/connection_adapters/abstract/connection_pool.rb:410:in `retrieve_connection' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/connection_adapters/abstract/connection_specification.rb:171:in `retrieve_connection' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/connection_adapters/abstract/connection_specification.rb:145:in 'connection' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/model_schema.rb:308:in `clear_cache!' 来自 /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.12/lib/active_record/railtie.rb:97:in `_callback_before_3' 来自 /usr/lib/ruby/gems/1.8/gems/activesupport-3.2.12/lib/active_support/callbacks.rb:418:in `_run__1552657550__prepare__4__callbacks' 来自 /usr/lib/ruby/gems/1.8/gems/activesupport-3.2.12/lib/active_support/callbacks.rb:405:in `send' 来自 /usr/lib/ruby/gems/1.8/gems/activesupport-3.2.12/lib/active_support/callbacks.rb:405:in `__run_callback' 来自 /usr/lib/ruby/gems/1.8/gems/activesupport-3.2.12/lib/active_support/callbacks.rb:385:in `_run_prepare_callbacks' 来自 /usr/lib/ruby/gems/1.8/gems/activesupport-3.2.12/lib/active_support/callbacks.rb:81:in `send' 来自 /usr/lib/ruby/gems/1.8/gems/activesupport-3.2.12/lib/active_support/callbacks.rb:81:in `run_callbacks' 来自 /usr/lib/ruby/gems/1.8/gems/actionpack-3.2.12/lib/action_dispatch/middleware/reloader.rb:74:in `prepare!' 来自 /usr/lib/ruby/gems/1.8/gems/actionpack-3.2.12/lib/action_dispatch/middleware/reloader.rb:48:in `prepare!' 来自 /usr/lib/ruby/gems/1.8/gems/railties-3.2.12/lib/rails/application/finisher.rb:47 来自 /usr/lib/ruby/gems/1.8/gems/railties-3.2.12/lib/rails/initializable.rb:30:in `instance_exec' 来自 /usr/lib/ruby/gems/1.8/gems/railties-3.2.12/lib/rails/initializable.rb:30:in `run' 来自 /usr/lib/ruby/gems/1.8/gems/railties-3.2.12/lib/rails/initializable.rb:55:in `run_initializers' 来自 /usr/lib/ruby/gems/1.8/gems/railties-3.2.12/lib/rails/initializable.rb:54:in `each' 来自 /usr/lib/ruby/gems/1.8/gems/railties-3.2.12/lib/rails/initializable.rb:54:in `run_initializers' 来自 /usr/lib/ruby/gems/1.8/gems/railties-3.2.12/lib/rails/application.rb:136:in `initialize!' 来自 /usr/lib/ruby/gems/1.8/gems/railties-3.2.12/lib/rails/railtie/configurable.rb:30:in `send' 来自 /usr/lib/ruby/gems/1.8/gems/railties-3.2.12/lib/rails/railtie/configurable.rb:30:in `method_missing' 来自 /usr/lib/ruby/gems/1.8/gems/activesupport-3.2.12/lib/active_support/dependencies.rb:251:in `require' 来自 /usr/lib/ruby/gems/1.8/gems/activesupport-3.2.12/lib/active_support/dependencies.rb:251:in `require' 来自 /usr/lib/ruby/gems/1.8/gems/activesupport-3.2.12/lib/active_support/dependencies.rb:236:in `load_dependency' 来自 /usr/lib/ruby/gems/1.8/gems/activesupport-3.2.12/lib/active_support/dependencies.rb:251:in `require'

谢谢你的建议!

【问题讨论】:

  • 将你的 ruby​​ 升级到 1.9.3 版

标签: ruby-on-rails


【解决方案1】:

连接 MySQL 数据库时出错:

/usr/lib/ruby/gems/1.8/gems/mysql2-0.3.11/lib/mysql2/client.rb:44:in `connect': 拒绝用户 'fubademoall'@'localhost' 访问(使用密码:YES) (Mysql2::Error)

检查 config/database.yml 中的配置是否与您正在使用的 MySQL 服务器上的数据库凭据匹配。

【讨论】:

    【解决方案2】:
    If you are new Please see following eg: for creating database, grant ,and database.yml file  
    
    => Go to Mysql :
    D:\sandeep\Ruby Projects\simple_cms>mysql -u root -p
    Enter password: ********
    
    =>Create Database :
     create database simple_cms_development 
    
    =>Gtanting the Access to database : 
     mysql> grant all privileges on simple_cms_development.*
         ->to 'simple_cms' @'localhost'
         -> identified by 'secretpassword';
    Query OK, 0 rows affected (0.00 sec)
    
    =>See Database and Grant :
     mysql> show grants for 'simple_cms' @'localhost';
    
    =>And Your database.yml file like this :
    development:
      adapter: mysql2
      encoding: utf8
      reconnect: false
      database: simple_cms_development
      pool: 5
      username: simple_cms
      password: secretpassword
      socket: /tmp/mysql.sock
    
    test:
      adapter: mysql2
      encoding: utf8
      reconnect: false
      database: simple_cms_test
      pool: 5
      username: root
      password:
      socket: /tmp/mysql.sock
    
    production:
      adapter: mysql2
      encoding: utf8
      reconnect: false
      database: simple_cms_production
      pool: 5
      username: root
      password:
      socket: /tmp/mysql.sock
    

    【讨论】:

    • 所以,我按照你的例子做了所有的事情,但我得到的是 SHOW GRANTS FOR 'fubademoall'@'localhost';错误 1044 (42000): 用户 ''@'localhost' 拒绝访问数据库 'mysql'
    • 请检查 Mysql 是否正确安装了 gem,您好,请在创建新的 rails 项目时检查一次,我认为您在输入密码时犯了一些拼写错误
    【解决方案3】:

    我认为错误信息的相关行是:

    `connect': Access denied for user 'fubademoall'@'localhost' (using password: YES) (Mysql2::Error)
    

    你设置mysql了吗?权限是否正确?

    【讨论】:

    • 我对 'fubademoall'@'localhost'mysql 拥有以下权限> SHOW GRANTS FOR 'fubademoall'@'localhost'; +-------------------------------------------------- ---------------------------------------+ | fubademoall@localhost 的赠款 | +-------------------------------------------------- ---------------------------------------+ |将 . 上的所有权限授予 'fubademoall'@'localhost' 与 GRANT 选项 | +-------------------------------------------------- ---------------------------+ 1 行在集合中(0.00 秒)
    猜你喜欢
    • 2014-03-08
    • 2016-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多