Rails, Ruby 1.9.3p0 and mysql gem

I run CentOS6 and install Ruby from the source code, as well as Rails and some other employees.

ruby -v ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-linux] rails -v Rails 3.1.3 

Some gems:

  *** LOCAL GEMS ***

 actionmailer (3.1.3, 2.3.14)
 actionpack (3.1.3, 2.3.14)
 activemodel (3.1.3)
 activerecord (3.1.3, 2.3.14)
 activeresource (3.1.3, 2.3.14)
 activesupport (3.1.3, 2.3.14)
 archive-tar-minitar (0.5.2)
 arel (2.2.1)
 bigdecimal (1.1.0)
 bouncy-castle-java (1.5.0146.1)
 builder (3.0.0)
 bundler (1.0.21)
 coderay (0.9.7)
 columnize (0.3.5)
 edavis10-object_daddy (0.4.3)
 erubis (2.7.0)
 fastercsv (1.5.0)
 ffi (1.0.11)
 hike (1.2.1)
 hoe (2.12.4)
 i18n (0.6.0, 0.4.2)
 io-console (0.3)
 jruby-openssl (0.7.4)
 json (1.5.4)
 linecache19 (0.5.13)
 mail (2.3.0)
 metaclass (0.0.1)
 mime-types (1.17.2)
 minitest (2.5.1)
 mocha (0.10.0)
 multi_json (1.0.4)
 mysql (2.8.1)
 mysql2 (0.3.11, 0.2.7)
 net-ldap (0.2.2)
 polyglot (0.3.3)
 rack (1.3.5, 1.1.2)
 rack-cache (1.1)
 rack-mount (0.8.3)
 rack-ssl (1.3.2)
 rack-test (0.6.1)
 rails (3.1.3, 2.3.14)
 railties (3.1.3)
 rake (0.9.2.2)
 rdoc (3.9.4)
 rmagick (2.13.1)
 ruby-debug-base19 (0.11.26, 0.11.25)
 ruby-debug19 (0.11.6)
 ruby-mysql (2.9.4)
 ruby-openid (2.1.4)
 ruby_core_source (0.1.5)
 rubygems-update (1.8.12)
 rubytree (0.5.2)
 shoulda (2.11.3, 2.10.3)
 sprockets (2.0.3)
 sqlite3 (1.3.5, 0.1.1)
 sqlite3-ruby (1.3.3, 1.2.5)
 thor (0.14.6)
 tilt (1.3.3)
 treetop (1.4.10)
 tzinfo (0.3.31)

I need Rails to run chiliproject , but when I run the following command

 RAILS_ENV=production bundle exec rake db:migrate 

I get:

  !!!  The bundled mysql.rb driver has been removed from Rails 2.2.  Please install the mysql gem and try again: gem install mysql.
 rake aborted!
 cannot load such file - mysql

 Tasks: TOP => db: migrate => environment
 (See full trace by running task with --trace)

Now with --trace :

  RAILS_ENV = production bundle exec rake db: migrate --trace >> tmp / rake
 ** Invoke db: migrate (first_time)
 ** Invoke environment (first_time)
 ** Execute environment
 !!!  The bundled mysql.rb driver has been removed from Rails 2.2.  Please install the mysql gem and try again: gem install mysql.
 rake aborted!
 cannot load such file - mysql
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:184:in `require '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:184:in `require '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/core_ext/kernel/requires.rb:7:in `block in require_library_or_gem '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/core_ext/kernel/reporting.rb:11:in `silence_warnings'
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/core_ext/kernel/requires.rbβˆ—:in `require_library_or_gem '
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/mysql_adapter.rb:61:in `mysql_connection '
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:223:in `new_connection '
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:245:in `checkout_new_connection '
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:188:in `block (2 levels) in checkout '
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:184:in `loop '
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:184:in `block in checkout '
 /usr/local/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize '
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:183:in `checkout '
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:98:in `connection '
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:326:in `retrieve_connection '
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_specification.rb:123:in `retrieve_connection '
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_specification.rb:115:in `connection '
 /var/www/html/chiliproject/vendor/plugins/awesome_nested_set/lib/awesome_nested_set.rb:218:in `quoted_left_column_name '
 /var/www/html/chiliproject/vendor/plugins/awesome_nested_set/lib/awesome_nested_set.rb:94:in `acts_as_nested_set '
 /var/www/html/chiliproject/app/models/issue.rb:33:in ``
 /var/www/html/chiliproject/app/models/issue.rb:15:in ``
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:184:in `require '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:184:in `require '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:291:in `require_or_load '
 /var/www/html/chiliproject/vendor/plugins/engines/lib/engines/rails_extensions/dependencies.rb:133:in `require_or_load_with_engine_additions'
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:451:in `load_missing_constant '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:106:in `const_missing_with_dependencies'
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:118:in `const_missing '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/inflector.rbhaps75:in `const_get '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/inflector.rbhaps75:in `block in constantize '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/inflector.rbhaps74:in `each '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/inflector.rbhaps74:in `constantize '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/core_ext/string/inflections.rb:162:in `constantize '
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/observer.rb:157:in `observed_class'
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/observer.rb:183:in `observed_classes'
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/observer.rb:166:in `initialize '
 /usr/local/lib/ruby/1.9.1/singleton.rb:141:in `new '
 /usr/local/lib/ruby/1.9.1/singleton.rb:141:in `block in instance '
 : 10: in `synchronize '
 /usr/local/lib/ruby/1.9.1/singleton.rb:139:in `instance '
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/observer.rb:38:in `block in instantiate_observers'
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/observer.rb:36:in `each '
 /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/observer.rb:36:in `instantiate_observers'
 /usr/local/lib/ruby/gems/1.9.1/gems/actionpack-2.3.14/lib/action_controller/dispatcher.rb:15:in `block in define_dispatcher_callbacks'
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/callbacks.rb:182:in `call '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/callbacks.rb:182:in `evaluate_method '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/callbacks.rb:166:in `call '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/callbacks.rb:90:in `block in run '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/callbacks.rb:90:in `each '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/callbacks.rb:90:in `run '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/callbacks.rb:276:in `run_callbacks'
 /usr/local/lib/ruby/gems/1.9.1/gems/actionpack-2.3.14/lib/action_controller/dispatcher.rb:51:in `run_prepare_callbacks'
 /usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.14/lib/initializer.rb:631:in `prepare_dispatcher '
 /usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.14/lib/initializer.rb:185:in `process'
 /usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.14/lib/initializer.rb:113:in `run '
 /var/www/html/chiliproject/config/environment.rb:39:in ``
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:182:in `require '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:182:in `block in require '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rbhaps47:in `new_constants_in '
 /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:182:in `require '
 /usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.14/lib/tasks/misc.rakerige:in `block in '
 /usr/local/lib/ruby/1.9.1/rake/task.rb:205:in `call '
 /usr/local/lib/ruby/1.9.1/rake/task.rb:205:in `block in execute '
 /usr/local/lib/ruby/1.9.1/rake/task.rb:200:in `each '
 /usr/local/lib/ruby/1.9.1/rake/task.rb:200:in `execute '
 /usr/local/lib/ruby/1.9.1/rake/task.rb:158:in `block in invoke_with_call_chain '
 /usr/local/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize '
 /usr/local/lib/ruby/1.9.1/rake/task.rb:151:in `invoke_with_call_chain '
 /usr/local/lib/ruby/1.9.1/rake/task.rb:176:in `block in invoke_prerequisites'
 /usr/local/lib/ruby/1.9.1/rake/task.rb:174:in `each '
 /usr/local/lib/ruby/1.9.1/rake/task.rb:174:in `invoke_prerequisites'
 /usr/local/lib/ruby/1.9.1/rake/task.rb:157:in `block in invoke_with_call_chain '
 /usr/local/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize '
 /usr/local/lib/ruby/1.9.1/rake/task.rb:151:in `invoke_with_call_chain '
 /usr/local/lib/ruby/1.9.1/rake/task.rb:144:in `invoke '
 /usr/local/lib/ruby/1.9.1/rake/application.rb:116:in `invoke_task '
 /usr/local/lib/ruby/1.9.1/rake/application.rb:94:in `block (2 levels) in top_level '
 /usr/local/lib/ruby/1.9.1/rake/application.rb:94:in `each '
 /usr/local/lib/ruby/1.9.1/rake/application.rb:94:in `block in top_level '
 /usr/local/lib/ruby/1.9.1/rake/application.rb:133:in `standard_exception_handling '
 /usr/local/lib/ruby/1.9.1/rake/application.rb:88:in `top_level '
 /usr/local/lib/ruby/1.9.1/rake/application.rb:66:in `block in run '
 /usr/local/lib/ruby/1.9.1/rake/application.rb:133:in `standard_exception_handling '
 /usr/local/lib/ruby/1.9.1/rake/application.rb:63:in `run '
 / usr / local / bin / rake: 32: in ``
 Tasks: TOP => db: migrate => environment

Does anyone know what is wrong with mysql gem files?

I also tried installing mysql gem files like this

 gem install ruby-mysql2 --no-rdoc --no-ri -- --with-mysql-config=/usr/bin/mysql_config 
+6
source share
3 answers

I had similar problems and you can do what I have: I used a "gem list" to determine what was installed (it lists *** LOCAL GEMS *** just like you show) and I saw mysql , but the Gemfile for my project did not require bundler install mysql .

If you just type bundle show , will it list 'mysql'? If not, the Gemfile in chiliproject does not invoke the mysql bundler installation. I found that all this was very confusing until I realized that I was confused by different ways of controlling which gems are installed.

If you or someone who comes here has the same problem, this may be helpful. (And perhaps this poor explanation will prompt one of the rail gurus to work out for us.)

To put it another way, the list of your locally installed gems is not the same as the list installed in your gem bundle application (hence the name of the bundler tool comes from). When you launch your application and manage its dependencies using the bundler , you should do everything within the bundler scope to make sure everything works together. When you do this, it is really very straightforward and solves a lot of problems for you, but if you use previous experience with applications that did not use bundler , then it is just a little getting used to.

+8
source

2 steps that worked for me:

  • Copy the libmySQL.dll file from /libhttp://dev.mysql.com/get/Downloads/Connector-C/mysql-connector-c-noinstall-6.0.2-win32.zip/from/. select (in the / lib / folder) in the c: / your / path / to / ruby ​​/ bin directory (make sure your ruby ​​bin is in your PATH environment variable)

  • The default setting for MySQL is with ruby1.8. If you are using Redmine with MySQL and ruby1.9, replace the adapter name with mysql2 in the /config/database.yml file http://www.redmine.org/issues/10566

+2
source

Just install the package. Try it β†’

bundle install --without=test development sqlite postgres mysql rmagick

This will install all the necessary base dependencies, the mysql2 database adapter. The reason the mysql adapter is not compatible with Ruby 1.9

And don't forget to change config / database.yml -> s / mysql / mysql2

\ about/

+2
source

Source: https://habr.com/ru/post/903497/


All Articles