【发布时间】:2018-03-15 08:12:38
【问题描述】:
我是一名新手,试图通过使用 ROR 5.0 版和 mysql 8.02 的 Lynda 视频系列来学习 ruby on rails。在 DB>migrate>model.rb 文件中创建我的表条目并运行“rails db:migrate”后,我在终端中收到一个错误,这没有多大意义。 iv 使用不同的用户并将其授予 mysql 权限并在网上搜索,但没有运气。
==============================
类 CreateUsers
定义向上 create_table :用户做|t|
t.column "first_name", :string, :limit => 25
t.string "last_name", :limit => 50
t.string "email", :default => '', :null => false
t.string "password", :limit => 40
t.timestamps
end
结束
降级
drop_table :users
结束
结束
MBP:simple_cms $ rails db:migrate
导轨中止!
ActiveRecord::StatementInvalid: Mysql2::Error: Unknown collation: 'utf8_0900_ai_ci': CREATE TABLE schema_migrations (version varchar(255) COLLATE utf8_0900_ai_ci PRIMARY KEY) ENGINE=InnoDB
/Users/.rvm/gems/ruby-2.3.0/gems/mysql2-0.4.9/lib/mysql2/client.rb:120:in _query'
/Users/.rvm/gems/ruby-2.3.0/gems/mysql2-0.4.9/lib/mysql2/client.rb:120:inblock in query'
/Users/.rvm/gems/ruby-2.3.0/gems/mysql2-0.4.9/lib/mysql2/client.rb:119:in handle_interrupt'
/Users/.rvm/gems/ruby-2.3.0/gems/mysql2-0.4.9/lib/mysql2/client.rb:119:inquery'
/Users/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapter/abstract_mysql_adapter.rb:218:in block in execute'
/Users/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/abstract_adapter.rb:590:inblock in log'
/Users/.rvm/gems/ruby-2.3.0/gems/activesupport-5.0.6/lib/active_support/notifications/instrumenter.rb:21:in instrument'
/Users/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/abstract_adapter.rb:583:inlog'
/Users/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapter/abstract_mysql_adapter.rb:218:in execute'
/Users/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/mysql/database_statements.rb:31:inexecute'
/Users/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/abstract/schema_statements.rb:278:in create_table'
/Users/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/abstract_mysql_adapter.rb:423:increate_table'
/Users/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.6/lib/active_record/schema_migration.rb:27:in create_table'
/Users/.rvm/gems/ruby-2.3.0/gems/activerecord-5.0.6/lib/active_record/connection_adapters/abstract/schema_statements.rb:1008:ininitialize_schema_migrations_table'
【问题讨论】:
-
***这对我来说没有多大意义。 iv 使用了不同的 mysql 用户并授予它 mysql 权限并在网络上搜索但没有运气。
-
你能粘贴
show variables like 'collation_database';的输出吗 -
感谢您的回复......我在哪里可以找到?在 mysql 或命令行终端中?
-
在
mysql client运行它 -
mysql> 显示变量,如“collation_database”; +--------------------+--------+ |变量名 |价值 | +--------------------+--------+ | collation_database | utf8mb4_0900_ai_ci | +--------------------+--------------------+ 1 行在集合中(0.26 秒)
标签: mysql ruby-on-rails ruby ruby-on-rails-3