MySQL错误未知排序规则

Posted

技术标签:

【中文标题】MySQL错误未知排序规则【英文标题】:MySQL error unknown collation 【发布时间】:2012-11-14 22:45:43 【问题描述】:

尝试在 Laravel 4 中运行迁移后,我收到以下错误:

[PDOException]                                              
SQLSTATE[HY000]: General error: 1273 Unknown collation: ''

这是我的数据库连接配置;

'mysql' => array(
    'driver'   => 'mysql',
    'host'     => 'localhost',
    'unix_socket'   => '/Applications/MAMP/tmp/mysql/mysql.sock',
    'database' => 'database',
    'username' => 'root',
    'password' => 'root',
    'charset'  => 'utf8',
    'prefix'   => '',
),

有什么建议吗?

【问题讨论】:

我不知道背后的原因,但在谷歌之后我发现这个thread 讨论了同样的问题并在清除 cookie 后解决了。试一试:) 【参考方案1】:

通过从安装的根文件夹运行 composer update 来获取最新的源代码。否则更新您的数组如下。

'mysql' => array(
    'driver'   => 'mysql',
    'host'     => 'localhost',
    'unix_socket'   => '/Applications/MAMP/tmp/mysql/mysql.sock',
    'database' => 'database',
    'username' => 'root',
    'password' => 'root',
    'charset'  => 'utf8',
    'collation' => 'utf8_unicode_ci',
    'prefix'   => '',
 ),

【讨论】:

以上是关于MySQL错误未知排序规则的主要内容,如果未能解决你的问题,请参考以下文章

当所有排序规则都已经标准化时,Mysql 非法混合排序规则

MySQL某些字符导致“非法混合排序规则”错误

排序规则的非法混合 MySQL 错误

MySql 中的非法混合排序规则错误

MySQL:错误排序规则“正在使用”并且无法加载表

MySQL - 错误 1071 阻止更改字符集/排序规则,“指定的键太长......”