我正在尝试使用ruby on rails学习web开发。我一直关注Lynda.com的课程,我的步骤如下:
我安装了Ruby + DevKit 2.4.4-1(x64)
我在命令行中安装了rails,如下所示
gem install rails --version 5.0.0
我安装了MySQL 5.7.21版本
我按如下方式安装了mysql2 gem
gem install mysql2
我安装了Atom文本编辑器
我创建了一个新项目rails new kudaweb -d mysql
我在MySQL shell中创建了所需的数据库
CREATE DATABASE kudaweb_development;
和CREATE DATABASE kudaweb_test;
GRANT ALL PRIVILEGES ON kudaweb_development.* TO 'rails_user'@'localhost' IDENTIFIED BY 'mypassword'
我也为测试数据库做了这个
我按如下方式配置了database.yml文件:
default: &default
adapter: mysql2
encoding: utf8
pool: 5
username: rails_user
password: mypassword
host: localhost
我运行了以下代码来检查我是否正确配置了数据库
rails db:schema:dump
我收到以下错误
C:\Users\Dj K-Staxx\Desktop\RUBY\kudaweb>rails db:schema:dump
rails aborted!
NameError: uninitialized constant Mysql2::Client::REMEMBER_OPTIONS
bin/rails:4:in
需要”
bin / rails:4:<main>'
Tasks: TOP => db:schema:dump
我不知道如何解决这个问题。我在网上寻找解决方案,但无济于事。我正在使用Windows 7 64位和mysql2 gem我使用的是0.5.0版本
答案 0 :(得分:0)
好像你的0.5.0
gem和mysql之间可能存在一些配置问题。它可能没有正确构建。见:https://github.com/brianmario/mysql2/issues/954
0.4.9
或0.4.10
gem 将您的gemfile设置为:
# ./Gemfile
...
gem 'mysql2', '0.4.9'
...
您可能需要本地C连接器才能在本地正确构建gem。见:https://www.digitalgyan.org/how-to-install-ruby-on-rails-mysql2-gem-on-windows-10/
可能就像从MySQL下载相应的文件一样简单:https://dev.mysql.com/downloads/connector/c/
在任何一种情况下,您都可以从快速脚本中受益,以测试连接(以排除Rails为问题)。
require 'mysql2'
client = Mysql2::Client.new(host: "localhost", username: "rails_user", password: "mypassword")
答案 1 :(得分:0)
将Gemfile中的mysql2 gem更新为:
gem 'mysql2', '~> 0.5.2'