我使用Homebrew(brew install mysql
)安装了MySQL,然后运行$ gem install mysql2
。我在Mac上运行OSX 10.9.4。
我将目录更改为我的应用程序的根目录,然后尝试运行rake db:migrate
命令,并收到此错误:
Levine_iMac$ rake db:migrate
rake aborted!
LoadError: dlopen(/Users/Levine_iMac/.rbenv/versions/2.1.1/lib/ruby/2.1.0/x86_64-darwin13.0/openssl.bundle, 9): Symbol not found: _SSLv2_client_method
Referenced from: /Users/Levine_iMac/.rbenv/versions/2.1.1/lib/ruby/2.1.0/x86_64-darwin13.0/openssl.bundle
Expected in: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib
in /Users/Levine_iMac/.rbenv/versions/2.1.1/lib/ruby/2.1.0/x86_64-darwin13.0/openssl.bundle - /Users/Levine_iMac/.rbenv/versions/2.1.1/lib/ruby/2.1.0/x86_64-darwin13.0/openssl.bundle
/Users/Levine_iMac/Dropbox/Coding/Sandbox/simple_cms2/config/application.rb:3:in require'
/Users/Levine_iMac/Dropbox/Coding/Sandbox/simple_cms2/config/application.rb:3:in <top (required)>'
/Users/Levine_iMac/Dropbox/Coding/Sandbox/simple_cms2/Rakefile:4:in <top (required)>'
(See full trace by running task with --trace)
Levine_iMac$
我尝试在我的.bash_profile中添加一些内容,如here所述,但这不起作用。
我按照here所述尝试了一个sudo命令,但这没有用。
然后我尝试将我的Ruby版本从2.1.1更新到2.1.2 ..现在我在运行rake时收到此错误:db migrate
Levine_iMac$ rake db:migrate
rake aborted! cannot load such file -- bundler/setup /Users/Levine_iMac/Dropbox/Coding/Sandbox/simple_cms2/config/boot.rb:4:in '<top (required)>' /Users/Levine_iMac/Dropbox/Coding/Sandbox/simple_cms2/config/application.rb:1:in '<top (required)>' /Users/Levine_iMac/Dropbox/Coding/Sandbox/simple_cms2/Rakefile:4:in '<top (required)>' (See full trace by running task with --trace) Levine_iMac$ bundle install rbenv: bundle: command not found The 'bundle' command exists in these Ruby versions:
2.1.1
Levine_iMac$
有关如何解决此问题的任何想法?感谢。
答案 0 :(得分:0)
那么,当你运行rake db:migrate时,你到底发生了什么?下一步是否会为您实现?如果你能够回答这个问题,你就会明白为什么你所做的事情没有意义。
我会详细说明:
rake db:migrate仅适用于现有rails应用程序的上下文。运行'gem install mysql2'将在您的计算机上为您获取该库(此命令由其自身执行,它实际上与Rails本身无关,或者需要Rails应用程序用于上下文)。所以,两者之间没有线性联系。
或者,或者:
rails new myapp -d mysql