title: Bundler ignoring install of MySQL2 gem when run on my 'production' server
body: <p>I'm attempting to install the 'mysql2' gem on my production server using Capistrano.</p>
  
  <p>I want to use SQLite in development, and MySQL in production.</p>
  
  <p>I develop on a Windows 7 machine, and production is using Ubuntu.</p>
  
  <p>When I run <code>bundle install</code> on my development machine, it installs MySQL2.</p>
  
  <p>When Capistrano runs it against my production machine, it doesn't even get a mention in the output.</p>
  
  <p>When I run the same command on my production machine directly on the shell, it too doesn't mention the gem.</p>
  
  <p>I'm also finding that <code>gem 'therubyracer', :platforms =&gt; :ruby</code> isn't being installed. I added this after the mysql2 entry. I'm hoping the two are related. mysql2 wasn't working before I added therubyracer.</p>
  
  <p>As a result of all of the above, I'm getting the following error when I'm attempting to view my site:</p>
  
  <blockquote>
    <p>Please install the mysql2 adapter: <code>gem install activerecord-mysql2-adapter</code> (mysql2 is not part of the bundle. Add it to Gemfile.)</p>
  </blockquote>
  
  <h1>Additional Info</h1>
  
  <p>I hope the amount of info I'm including below is more useful than it is a pain.</p>
  
  <h2>gemfile</h2>
  
  <p>I appreciate I could place mysql2 in 'production' but that didn't work.</p>
  
  <pre><code>source 'http://rubygems.org'
  
  gem 'rails', '3.1.1'
  gem 'nokogiri'
  gem 'bcrypt-ruby'
  gem 'faker'
  gem 'will_paginate'
  gem 'capistrano'
  gem 'capistrano-ext'
  gem 'mysql2', "~&gt; 0.3"
  gem 'therubyracer', :platforms =&gt; :ruby
  gem 'sqlite3'
  
  # Gems used only for assets and not required
  # in production environments by default.
  group :assets do
    gem 'sass-rails',   '~&gt; 3.1.4'
    gem 'coffee-rails', '~&gt; 3.1.1'
    gem 'uglifier', '&gt;= 1.0.3'
  end
  
  gem 'jquery-rails'
  
  group :test do
    # Pretty printed test output
    gem 'turn', :require =&gt; false
  end
  </code></pre>
  
  <h2>Output of Capistrano Bundle Install command</h2>
  
  <pre><code>  * executing "cd /home/gannicott.co.uk/production/listen/www/releases/20120223225131 &amp;&amp; bundle install --gemfile /home/gannicott.co.uk/prod
  uction/listen/www/releases/20120223225131/Gemfile --path /home/gannicott.co.uk/production/listen/www/shared/bundle --deployment --without de
  velopment test"
      servers: ["homer.gannicott.co.uk"]
      [homer.gannicott.co.uk] executing command
      [homer.gannicott.co.uk] sh -c 'cd /home/gannicott.co.uk/production/listen/www/releases/20120223225131 &amp;&amp; bundle install --gemfile /home/
  gannicott.co.uk/production/listen/www/releases/20120223225131/Gemfile --path /home/gannicott.co.uk/production/listen/www/shared/bundle --dep
  loyment --without development test'
   ** [out :: homer.gannicott.co.uk] Installing rake (0.9.2.2)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing multi_json (1.1.0)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing activesupport (3.1.1)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing builder (3.0.0)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing i18n (0.6.0)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing activemodel (3.1.1)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing erubis (2.7.0)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing rack (1.3.6)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing rack-cache (1.1)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing rack-mount (0.8.3)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing rack-test (0.6.1)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing hike (1.2.1)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing tilt (1.3.3)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing sprockets (2.0.3)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing actionpack (3.1.1)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing mime-types (1.17.2)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing polyglot (0.3.3)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing treetop (1.4.10)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing mail (2.3.0)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing actionmailer (3.1.1)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing arel (2.2.3)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing tzinfo (0.3.31)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing activerecord (3.1.1)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing activeresource (3.1.1)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing highline (1.6.11)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing net-ssh (2.3.0)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing net-scp (1.0.4)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing net-sftp (2.0.5)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing net-ssh-gateway (1.1.0)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing capistrano (2.11.2)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing capistrano-ext (1.2.1)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing coffee-script-source (1.2.0)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing execjs (1.3.0)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing coffee-script (2.2.0)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing rack-ssl (1.3.2)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing json (1.6.5)
   ** [out :: homer.gannicott.co.uk] with native extensions
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing rdoc (3.12)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing thor (0.14.6)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing railties (3.1.1)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing coffee-rails (3.1.1)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing faker (1.0.1)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing jquery-rails (1.0.19)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Using bundler (1.0.21)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing rails (3.1.1)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing sass (3.1.15)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing sass-rails (3.1.5)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing uglifier (1.2.3)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Installing will_paginate (3.0.3)
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Updating .gem files in vendor/cache
   ** [out :: homer.gannicott.co.uk]
   ** [out :: homer.gannicott.co.uk] Your bundle is complete! It was installed into /home/gannicott.co.uk/production/listen/www/shared/bundle
   ** [out :: homer.gannicott.co.uk]
      command finished in 12924ms
  </code></pre>
  
  <h2>capistrano's deploy.rb</h2>
  
  <pre><code>require 'bundler/capistrano'
  require 'capistrano/ext/multistage'
  # Based on: http://guides.beanstalkapp.com/deployments/deploy-with-capistrano.html
  set :application, "listen_later"
  
  set :scm, :git
  set :repository, "repos location"
  set :scm_passphrase, "passphrase"
  
  set :user, "username"
  
  set :stages, ["staging", "production"]
  set :default_stage, "staging"
  
  # The following needs to be added to avoid a failure (http://discuss.joyent.com/viewtopic.php?id=27326)
  default_run_options[:pty] = true
  
  namespace :deploy do
    desc "Tell Passenger to restart the app."
    task :restart do
      run "touch #{current_path}/tmp/restart.txt"
    end
  end
  
  # Removed --silent so I can see what's going on
  set :bundle_flags,    "--deployment"
  </code></pre>
  
  <h2>capistrano's production deploy file</h2>
  
  <pre><code>server "homer.gannicott.co.uk", :app, :web, :db, :primary =&gt; true
  set :deploy_to, "/home/gannicott.co.uk/production/listen/www"
  </code></pre>
  
  <h2>Database config file</h2>
  
  <pre><code># SQLite version 3.x
  #   gem install sqlite3
  #
  #   Ensure the SQLite 3 gem is defined in your Gemfile
  #   gem 'sqlite3'
  development:
    adapter: sqlite3
    database: db/development.sqlite3
    pool: 5
    timeout: 5000
  
  # 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:
    adapter: sqlite3
    database: db/test.sqlite3
    pool: 5
    timeout: 5000
  
  production:
    adapter: mysql2
    encoding: utf8
    reconnect: false
    database: databasename
    pool: 5
    username: username
    password: password
    #socket: **/opt/local/var/run/mysql5/mysqld.sock**
  
  #  adapter: sqlite3
  #  database: db/production.sqlite3
  #  pool: 5
  #  timeout: 5000
  </code></pre>
  
  <p>Cheers!</p>