【发布时间】:2023-01-25 16:35:29
【问题描述】:
我正在将我们的 Rails 应用程序从 5.2.3 升级到 7.0.3。适用于旧轨道的迁移在新轨道上失败。
这是迁移:
change_column :documents, :override, :json, using: 'override::JSON'
导致错误:
Mysql2::Error: COLLATION 'utf8_general_ci' is not valid for CHARACTER SET 'binary'
我想知道“二进制文件”的来源。
我试过了:
ALTER DATABASE dbname CHARACTER SET utf8 COLLATE utf8_unicode_ci;
但它没有帮助。
执行“显示像 '%char%' 这样的变量;显示像 '%coll%' 这样的变量;”结果是:
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /rdsdbbin/mysql-5.7.38.R1/share/charsets/ |
| collation_connection | utf8_general_ci |
| collation_database | utf8_unicode_ci |
| collation_server | latin1_swedish_ci |
该数据库位于 AWS RDS(MySQL 社区)中。
我将不胜感激任何帮助!
【问题讨论】:
标签: mysql ruby-on-rails