未初始化的常量Mysql2 :: Client :: SECURE_CONNECTION
由于mysql2
发生错误,我无法运行Rails项目
这篇文章对我没有帮助: rake aborted! 未初始化的常量Mysql2
它也可以在我的同事计算机上正常工作,因此排除了项目本身的问题。
这是控制台输出:
$ rails s /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/bundler-1.13.6/lib/bundler/runtime.rb:94:in `rescue in block (2 levels) in require': There was an error while trying to load the gem 'mysql2'. (Bundler::GemRequireError) Gem Load Error is: uninitialized constant Mysql2::Client::SECURE_CONNECTION Backtrace for gem load error is: /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/mysql2-0.3.14/lib/mysql2/client.rb:12:in `' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/mysql2-0.3.14/lib/mysql2/client.rb:2:in `' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/mysql2-0.3.14/lib/mysql2/client.rb:1:in `' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/mysql2-0.3.14/lib/mysql2.rb:10:in `require' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/mysql2-0.3.14/lib/mysql2.rb:10:in `' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/bundler-1.13.6/lib/bundler/runtime.rb:91:in `require' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/bundler-1.13.6/lib/bundler/runtime.rb:91:in `block (2 levels) in require' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/bundler-1.13.6/lib/bundler/runtime.rb:86:in `each' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/bundler-1.13.6/lib/bundler/runtime.rb:86:in `block in require' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/bundler-1.13.6/lib/bundler/runtime.rb:75:in `each' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/bundler-1.13.6/lib/bundler/runtime.rb:75:in `require' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/bundler-1.13.6/lib/bundler.rb:106:in `require' /home/duke/RubymineProjects/*******/*******/config/application.rb:7:in `' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/railties-3.2.15/lib/rails/commands.rb:53:in `require' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/railties-3.2.15/lib/rails/commands.rb:53:in `block in ' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/railties-3.2.15/lib/rails/commands.rb:50:in `tap' /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/railties-3.2.15/lib/rails/commands.rb:50:in `' script/rails:6:in `require' script/rails:6:in `' Bundler Error Backtrace: from /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/bundler-1.13.6/lib/bundler/runtime.rb:90:in `block (2 levels) in require' from /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/bundler-1.13.6/lib/bundler/runtime.rb:86:in `each' from /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/bundler-1.13.6/lib/bundler/runtime.rb:86:in `block in require' from /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/bundler-1.13.6/lib/bundler/runtime.rb:75:in `each' from /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/bundler-1.13.6/lib/bundler/runtime.rb:75:in `require' from /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/bundler-1.13.6/lib/bundler.rb:106:in `require' from /home/duke/RubymineProjects/********/********/config/application.rb:7:in `' from /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/railties-3.2.15/lib/rails/commands.rb:53:in `require' from /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/railties-3.2.15/lib/rails/commands.rb:53:in `block in ' from /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/railties-3.2.15/lib/rails/commands.rb:50:in `tap' from /home/duke/.rvm/gems/ruby-2.0.0-p648/gems/railties-3.2.15/lib/rails/commands.rb:50:in `' from script/rails:6:in `require' from script/rails:6:in `'
我已经尝试过GitHub问题的每一条建议,但它根本没有帮助。
- 我尝试过Ruby 2.0.0,2.1.8,2.2.x.
- 我的操作系统是Ubuntu 16.04
- MySQL 5.6.16
-
ruby-mysql
和libmysqlclient-dev
都已安装
我不得不将mysql2
更新为0.3.21