他の開発者が作ったrailsファイルのブランチで開発をしようと思っています。
開発環境を合わせるため、bundle install
をした上でrails s
を行ったら、下記のようなエラーが発生しました。
tarminal
1Could not find gem 'mysql2 (>= 0.4.4)' in any of the gem sources listed in your Gemfile. 2Run `bundle install` to install missing gems.
bundle install
の結果を確認してみると、以下の2箇所にエラーが表示されていました。
tarminal
1Gem::Ext::BuildError: ERROR: Failed to build gem native extension. 2・ 3・ 4・ 5An error occurred while installing mysql2 (0.5.2), and Bundler cannot continue. 6Make sure that `gem install mysql2 -v '0.5.2' --source 'http://rubygems.org/'` succeeds before bundling.
その後、言われた通り、gem install mysql2 -v '0.5.2'
をしたのですが、もう一度bundle install
しても同じエラーが発生してします。
また、gemfileには下記のように記載してあります。
Gemfile
1gem 'mysql2', '>= 0.4.4'
gemfileの記載が0.4.4なのがいけないのかと思い、0.5.2に書き換えて行っても結果は変わりませんでした。
ちなみに、database.ymlは下記のようになっており、複数のデータベースを参照しています。
### database.yml # MySQL. Versions 5.5.8 and up are supported. # # Install the MySQL driver # gem install mysql2 # # Ensure the MySQL gem is defined in your Gemfile # gem 'mysql2' # # And be sure to use new-style password hashing: # https://dev.mysql.com/doc/refman/5.7/en/password-hashing.html # default: &default adapter: mysql2 encoding: utf8mb4 pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> username: root password: socket: /tmp/mysql.sock development: <<: *default database: Database_Name_development # Warning: The database defined as "test" will be erased and # re-generated from your development database when you run "rake". # Do not set this db to the same as development or production. test: <<: *default database: Database_Name_test reference1_db: adapter: mysql2 encoding: utf8 reconnect: false pool: 5 username: <%= ENV['REFERENCE1_DB_USER'] %> password: <%= ENV['REFERENCE1_DB_PASS'] %> socket: /tmp/mysql.sock host: <%= ENV['REFERENCE1_DB_HOST'] %> database: <%= ENV['REFERENCE1_DB_NAME'] %> reference2_db: adapter: mysql2 encoding: utf8 reconnect: false pool: 5 username: <%= ENV['REFERENCE2_DB_USER'] %> password: <%= ENV['REFERENCE2_DB_PASS'] %> socket: /tmp/mysql.sock host: <%= ENV['REFERENCE2_DB_HOST'] %> database: <%= ENV['REFERENCE2_DB_NAME'] %> # As with config/credentials.yml, you never want to store sensitive information, # like your database password, in your source code. If your source code is # ever seen by anyone, they now have access to your database. # # Instead, provide the password as a unix environment variable when you boot # the app. Read https://guides.rubyonrails.org/configuring.html#configuring-a-database # for a full rundown on how to provide these environment variables in a # production deployment. # # On Heroku and other platform providers, you may have a full connection URL # available as an environment variable. For example: # # DATABASE_URL="mysql2://myuser:mypass@localhost/somedatabase" # # You can use this database configuration with: # # production: # url: <%= ENV['DATABASE_URL'] %> # production: <<: *default database: Database_Name_production username: Database_Name password: <%= ENV['DATABASE_NANE_DATABASE_PASSWORD'] %>
どのようにすれば、mysql2をbundle installでき、rails sが実行できるかご教示いただけると幸いです。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー