質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.93%

rails sすると、ActiveRecord::ConnectionNotEstablishedとエラーが出る

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 2,998

tetsubad06

score 7

前提

  • CentOS 6.8
  • Ruby 2.3.1p112 (2016-04-26 revision 54768)
  • Rails 4.0.13
  • Bundler 1.14.6
  • vagrant 1.9.4
  • mysql 5.7.18
  • mysql2 0.4.6
  • vagrant ssh で接続
  • dot install教材「Ruby on Rails 4入門」に沿って勉強しています。
rails new myapp -d mysql


でmyappディレクトリを作成。その際にはエラーは何も出なかった。

実現したいこと

第3回 はじめてのRuby on Railsのゴールである、rails sコマンドを実行したときに、Welcome aboard画面が表示される状態

発生している問題・エラーメッセージ

rails sコマンドを実行すると、

ActiveRecord::ConnectionNotEstablished

Rails.root: /home/vagrant/myapp


というエラーが出てしまう。

Full Traceの結果:

activerecord (4.0.13) lib/active_record/connection_adapters/abstract/connection_pool.rb:546:in `retrieve_connection'
activerecord (4.0.13) lib/active_record/connection_handling.rb:79:in `retrieve_connection'
activerecord (4.0.13) lib/active_record/connection_handling.rb:53:in `connection'
activerecord (4.0.13) lib/active_record/query_cache.rb:51:in `restore_query_cache_settings'
activerecord (4.0.13) lib/active_record/query_cache.rb:43:in `rescue in call'
activerecord (4.0.13) lib/active_record/query_cache.rb:32:in `call'
activerecord (4.0.13) lib/active_record/connection_adapters/abstract/connection_pool.rb:626:in `call'
activerecord (4.0.13) lib/active_record/migration.rb:373:in `call'
actionpack (4.0.13) lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
activesupport (4.0.13) lib/active_support/callbacks.rb:373:in `_run__144994080881179548__call__callbacks'
activesupport (4.0.13) lib/active_support/callbacks.rb:80:in `run_callbacks'
actionpack (4.0.13) lib/action_dispatch/middleware/callbacks.rb:27:in `call'
actionpack (4.0.13) lib/action_dispatch/middleware/reloader.rb:64:in `call'
actionpack (4.0.13) lib/action_dispatch/middleware/remote_ip.rb:76:in `call'
actionpack (4.0.13) lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'
actionpack (4.0.13) lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
railties (4.0.13) lib/rails/rack/logger.rb:38:in `call_app'
railties (4.0.13) lib/rails/rack/logger.rb:20:in `block in call'
activesupport (4.0.13) lib/active_support/tagged_logging.rb:68:in `block in tagged'
activesupport (4.0.13) lib/active_support/tagged_logging.rb:26:in `tagged'
activesupport (4.0.13) lib/active_support/tagged_logging.rb:68:in `tagged'
railties (4.0.13) lib/rails/rack/logger.rb:20:in `call'
actionpack (4.0.13) lib/action_dispatch/middleware/request_id.rb:21:in `call'
rack (1.5.5) lib/rack/methodoverride.rb:21:in `call'
rack (1.5.5) lib/rack/runtime.rb:17:in `call'
activesupport (4.0.13) lib/active_support/cache/strategy/local_cache.rb:83:in `call'
rack (1.5.5) lib/rack/lock.rb:17:in `call'
actionpack (4.0.13) lib/action_dispatch/middleware/static.rb:84:in `call'
rack (1.5.5) lib/rack/sendfile.rb:112:in `call'
railties (4.0.13) lib/rails/engine.rb:511:in `call'
railties (4.0.13) lib/rails/application.rb:97:in `call'
rack (1.5.5) lib/rack/lock.rb:17:in `call'
rack (1.5.5) lib/rack/content_length.rb:14:in `call'
rack (1.5.5) lib/rack/handler/webrick.rb:60:in `service'
/usr/local/rbenv/versions/2.3.1/lib/ruby/2.3.0/webrick/httpserver.rb:140:in `service'
/usr/local/rbenv/versions/2.3.1/lib/ruby/2.3.0/webrick/httpserver.rb:96:in `run'
/usr/local/rbenv/versions/2.3.1/lib/ruby/2.3.0/webrick/server.rb:296:in `block in start_thread'


(参考:~/myapp/にてgem listを実行した結果)

*** LOCAL GEMS ***

actionmailer (4.0.13)
actionpack (4.0.13)
activemodel (5.1.1, 4.0.13)
activerecord (5.1.1, 4.0.13)
activerecord-deprecated_finders (1.0.4)
activesupport (5.1.1, 4.0.13)
arel (8.0.0, 4.0.2)
bigdecimal (default: 1.2.8)
builder (3.1.4)
bundler (1.14.6)
coffee-rails (4.0.1)
coffee-script (2.4.1)
coffee-script-source (1.12.2)
concurrent-ruby (1.0.5)
did_you_mean (1.0.0)
erubis (2.7.0)
execjs (2.7.0)
hike (1.2.3)
i18n (0.8.1)
io-console (default: 0.4.5)
jbuilder (1.5.3)
jquery-rails (3.1.4)
json (1.8.6, default: 1.8.3)
libv8 (3.16.14.19 x86_64-linux)
mail (2.6.5)
mime-types (3.1)
mime-types-data (3.2016.0521)
minitest (5.8.3, 4.7.5)
multi_json (1.12.1)
mysql2 (0.4.6)
net-telnet (0.1.1)
power_assert (0.2.6)
psych (default: 2.0.17)
rack (1.5.5)
rack-test (0.6.3)
rails (4.0.13)
railties (4.0.13)
rake (12.0.0, 10.4.2)
rdoc (4.3.0, default: 4.2.1)
ref (2.0.0)
rubygems-update (2.6.12)
sass (3.2.19)
sass-rails (4.0.5)
sdoc (0.4.2)
sprockets (3.7.1, 2.12.4)
sprockets-rails (2.3.3)
test-unit (3.1.5)
therubyracer (0.12.3)
thor (0.19.4)
thread_safe (0.3.6)
tilt (1.4.1)
turbolinks (5.0.1)
turbolinks-source (5.0.3)
tzinfo (1.2.3, 0.3.53)
uglifier (3.2.0)

該当のソースコード

myapp以下
https://github.com/ttykwb1017/dot-instrall-rails

抜粋

Gemfile

ource 'https://rubygems.org'

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.0.13'

# Use mysql as the database for Active Record
gem 'mysql2'

# Use SCSS for stylesheets
gem 'sass-rails', '~> 4.0.2'

# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'

# Use CoffeeScript for .js.coffee assets and views
gem 'coffee-rails', '~> 4.0.0'

# See https://github.com/sstephenson/execjs#readme for more supported runtimes
 gem 'therubyracer', platforms: :ruby

# Use jquery as the JavaScript library
gem 'jquery-rails'

# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
gem 'turbolinks'

# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 1.2'

group :doc do
  # bundle exec rake doc:rails generates the API under doc/api.
  gem 'sdoc', require: false
end

# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'

# Use unicorn as the app server
# gem 'unicorn'

# Use Capistrano for deployment
# gem 'capistrano', group: :development

# Use debugger
# gem 'debugger', group: [:development, :test]

試したこと

ググっても該当する情報があまりなく、何もしていない


どう対処すべきでしょうか。
ご教授頂けると幸いです。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

check解決した方法

0

Rails4.2.5より前のバージョンでは、Rails(mysql2 adapter)の方でmysql2を0.3系依存で定義してしまっているので、mysql2最新の0.4.0を受け付けない、というのが原因だった。

長丁場になったので、一連の成り行きをQiitaにまとめた。
Rails4.0.13からMySQLに接続するときにどツボにハマった

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.93%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る