mysql - 加载错误 - 将 MySQL 与 Ruby on Rails 结合使用

标签 mysql ruby-on-rails sqlite cygwin sqlite3-ruby

我尝试将 SQL 与 Ruby on Rails 结合使用已经有一段时间了,但似乎无法使其工作。

我几乎放弃了 SQLite,所以我现在的重点是 MySQL。我已经完全安装了该程序并且它可以自行运行。但是我无法让它与 Ruby on Rails 一起使用。

下面是当我开始一个新项目并选择 MySQL 作为数据库时收到的消息。

    C:\rails_projects>rails new first2_app -d mysql
      create
      create  README.rdoc
      create  Rakefile
      create  config.ru
      create  .gitignore
      create  Gemfile
      create  app
      create  app/assets/images/rails.png
      create  app/assets/javascripts/application.js
      create  app/assets/stylesheets/application.css
      create  app/controllers/application_controller.rb
      create  app/helpers/application_helper.rb
      create  app/views/layouts/application.html.erb
      create  app/mailers/.gitkeep
      create  app/models/.gitkeep
      create  config
      create  config/routes.rb
      create  config/application.rb
      create  config/environment.rb
      create  config/environments
      create  config/environments/development.rb
      create  config/environments/production.rb
      create  config/environments/test.rb
      create  config/initializers
      create  config/initializers/backtrace_silencers.rb
      create  config/initializers/inflections.rb
      create  config/initializers/mime_types.rb
      create  config/initializers/secret_token.rb
      create  config/initializers/session_store.rb
      create  config/initializers/wrap_parameters.rb
      create  config/locales
      create  config/locales/en.yml
      create  config/boot.rb
      create  config/database.yml
      create  db
      create  db/seeds.rb
      create  doc
      create  doc/README_FOR_APP
      create  lib
      create  lib/tasks
      create  lib/tasks/.gitkeep
      create  lib/assets
      create  lib/assets/.gitkeep
      create  log
      create  log/.gitkeep
      create  public
      create  public/404.html
      create  public/422.html
      create  public/500.html
      create  public/favicon.ico
      create  public/index.html
      create  public/robots.txt
      create  script
      create  script/rails
      create  test/fixtures
      create  test/fixtures/.gitkeep
      create  test/functional
      create  test/functional/.gitkeep
      create  test/integration
      create  test/integration/.gitkeep
      create  test/unit
      create  test/unit/.gitkeep
      create  test/performance/browsing_test.rb
      create  test/test_helper.rb
      create  tmp/cache
      create  tmp/cache/assets
      create  vendor/assets/javascripts
      create  vendor/assets/javascripts/.gitkeep
      create  vendor/assets/stylesheets
      create  vendor/assets/stylesheets/.gitkeep
      create  vendor/plugins
      create  vendor/plugins/.gitkeep
         run  bundle install
Fetching gem metadata from https://rubygems.org/...........
Fetching gem metadata from https://rubygems.org/..
Resolving dependencies...
Using rake (10.0.4)
Using i18n (0.6.1)
Installing multi_json (1.7.3)
Using activesupport (3.2.13)
Using builder (3.0.4)
Using activemodel (3.2.13)
Using erubis (2.7.0)
Using journey (1.0.4)
Using rack (1.4.5)
Using rack-cache (1.2)
Using rack-test (0.6.2)
Using hike (1.2.2)
Installing tilt (1.4.1)
Using sprockets (2.2.2)
Using actionpack (3.2.13)
Using mime-types (1.23)
Using polyglot (0.3.3)
Using treetop (1.4.12)
Installing mail (2.5.4)
Using actionmailer (3.2.13)
Using arel (3.0.2)
Using tzinfo (0.3.37)
Using activerecord (3.2.13)
Using activeresource (3.2.13)
Using bundler (1.3.5)
Using coffee-script-source (1.6.2)
Using execjs (1.4.0)
Using coffee-script (2.2.0)
Using rack-ssl (1.3.3)
Installing json (1.8.0)
Using rdoc (3.12.2)
Using thor (0.18.1)
Using railties (3.2.13)
Using coffee-rails (3.2.2)
Using jquery-rails (2.2.1)
Installing mysql2 (0.3.11)
Using rails (3.2.13)
Installing sass (3.2.9)
Using sass-rails (3.2.6)
Installing uglifier (2.1.0)
Your bundle is complete!
Use `bundle show [gemname]` to see where a bundled gem is installed.
Post-install message from mysql2:

================================================================================
======================

  You've installed the binary version of mysql2.
  It was built using MySQL Connector/C version 6.0.2.
  It's recommended to use the exact same version to avoid potential issues.

  At the time of building this gem, the necessary DLL files where available
  in the following download:

  http://dev.mysql.com/get/Downloads/Connector-C/mysql-connector-c-noinstall-6.0
.2-win32.zip/from/pick

  And put lib\libmysql.dll file in your Ruby bin directory, for example C:\Ruby\
bin

================================================================================
======================

但是,当我继续运行 Rails 服务器时,出现以下错误:

C:\rails_projects\first2_app>rails server
C:/Ruby200/lib/ruby/gems/2.0.0/gems/mysql2-0.3.11-x86-mingw32/lib/mysql2/mysql2.rb:2:
in `require': cannot load such file -- mysql2/2.0/mysql2 (LoadError)           

    from C:/Ruby200/lib/ruby/gems/2.0.0/gems/mysql2-0.3.11-x86-mingw32/lib/mysql2/mysql2.rb:2:
in `<top (required)>'
        from C:/Ruby200/lib/ruby/gems/2.0.0/gems/mysql2-0.3.11-x86-mingw32/lib/mysql2.rb:9:
in `require'
        from C:/Ruby200/lib/ruby/gems/2.0.0/gems/mysql2-0.3.11-x86-mingw32/lib/mysql2.rb:9:
in `<top (required)>'
        from C:/Ruby200/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:72:
in `require'
        from C:/Ruby200/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:72:
in `block (2 levels) in require'
        from C:/Ruby200/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:70:
in `each'
        from C:/Ruby200/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:70:
in `block in require'
        from C:/Ruby200/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:59:
in `each'
        from C:/Ruby200/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:59:
in `require'
        from C:/Ruby200/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler.rb:132:
in `require'
        from C:/rails_projects/first2_app/config/application.rb:7:
in `<top (required)>'
        from C:/Ruby200/lib/ruby/gems/2.0.0/gems/railties-3.2.13/lib/rails/commands.rb:53:
in `require'
        from C:/Ruby200/lib/ruby/gems/2.0.0/gems/railties-3.2.13/lib/rails/commands.rb:53:
in `block in <top (required)>'
        from C:/Ruby200/lib/ruby/gems/2.0.0/gems/railties-3.2.13/lib/rails/commands.rb:50:
in `tap'
        from C:/Ruby200/lib/ruby/gems/2.0.0/gems/railties-3.2.13/lib/rails/commands.rb:50:
in `<top (required)>'
        from script/rails:6:in `require'
        from script/rails:6:in `<main>'

我几乎尝试了在相关 StackExchange 问题/答案中遇到的所有内容,包括 RubyVersionManager、DevKit、将各种 .dll 和 .a 文件移动到 C/Ruby/Bin 等,但运气不佳。

如有任何建议,我们将不胜感激!我真的很想开始使用 Ruby on Rails 进行编程,但又讨厌自己被困在门外......

干杯=D

更新1:(在Linux环境下尝试)

您好,共识似乎是尝试在 Linux 中运行。

所以我按照这个人的说明使用 Cygwin > http://youtu.be/hwo3Eda_ev0

到目前为止一切都很顺利 =)

最佳答案

解决办法是:

下载 http://dev.mysql.com/get/Downloads/Connector-C/mysql-connector-c-noinstall-6.0.2-win32.zip/from/pick 中的 zip 文件并将 libmysql.dll 文件从那里复制到您的 ruby​​ 目录 (C:/Ruby200/bin)。然后就可以从 Rails 应用程序访问 MySQL。

关于mysql - 加载错误 - 将 MySQL 与 Ruby on Rails 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16596565/

相关文章:

mysql - 如何将原始 SQL 转换为 Yii2,如查找查询

mysql - Rails 3 序列化哈希值保存但不持久

ruby-on-rails - 将调用记录解析为哈希数组 - Ruby

android - 如何正确实现手机客户端数据库和服务器mysql数据库之间的数据同步

mysql - 调用 SP 时遇到错误代码 1048

mysql - SQL:显示接下来 2 个周末的事件

java - 从两个表中删除具有相同主键的行

css - 备用列 (<td>) 类,甚至可能是 Rails 中的列内容?

python sqlite "BEGIN TRANSACTION"和 "COMMIT"命令

java - 是否可以在 OrmLite 持久化的类中有一个枚举字段?