Joomla 更新失败。错误 1267 排序规则的非法混合
Posted
技术标签:
【中文标题】Joomla 更新失败。错误 1267 排序规则的非法混合【英文标题】:Joomla update fails. Error 1267 Illegal mix of collations 【发布时间】:2016-11-23 18:26:47 【问题描述】:我尝试更新一些在 Joomla 3.4.8 中运行的网站。和 3.5.0。每次我尝试将它们更新到 3.5.1 或最新的 3.6.0。主页上显示如下错误:
1267
Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation 'locate' SQL=SELECT m.id,m.id AS item_id,m.title,m.link,m.type,@tmp_search := '"menu-meta_description":"' AS tmp_search, @tmp_search_len := LENGTH(@tmp_search) AS tmp_search_len, @start := LOCATE(@tmp_search, m.params) AS tmp_start, @end := LOCATE('"', m.params, @start + @tmp_search_len) AS tmp_end, TRIM(SUBSTRING(m.params, @start + @tmp_search_len, @end - @start - @tmp_search_len)) AS metadescription,"" AS description,@tmp_search := '"page_title":"' AS tmp_search, @tmp_search_len := LENGTH(@tmp_search) AS tmp_search_len, @start := LOCATE(@tmp_search, m.params) AS tmp_start, @end := LOCATE('"', m.params, @start + @tmp_search_len) AS tmp_end, TRIM(SUBSTRING(m.params, @start + @tmp_search_len, @end - @start - @tmp_search_len)) AS metatitle,e.element as extension FROM #__menu AS m LEFT JOIN #__extensions AS e ON m.component_id = e.extension_id WHERE m.id = '101'
虽然在管理区似乎有 3.6.0.版本,网站崩溃,首页显示错误。
过去两个月我尝试了很多事情,比如通过 phpMyAdmin 将所有排序规则设置为 "utf8_general_ci"
或 "utf8mb4_unicode_ci"
,但这些都没有解决问题。
如果有人能帮我解决这个问题,我将不胜感激。
谢谢,
位置
【问题讨论】:
【参考方案1】:我们遇到了同样的问题,我们最终将其追溯到我们的扩展程序。在将 Joomla 从 3.6 升级到 3.6.2 之前,我们没有先升级它们。
尝试先升级所有插件,然后在每一步检查数据库以确保其正常。
扩展 > 管理 > 数据库
如果每一步都有问题,请点击“修复”按钮。我们必须分两步升级,从 3.5.4 升级到 3.6.0,然后升级到 3.6.2。在第一次升级期间需要“修复”数据库。这发生在我们所有的 Joomla 安装中。
希望有帮助!
【讨论】:
以上是关于Joomla 更新失败。错误 1267 排序规则的非法混合的主要内容,如果未能解决你的问题,请参考以下文章
Joomla3.6致命错误:require_once():需要打开失败