Core error: Mysql error 1267: Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT)

Постим сюда все найденые ошибки
Post Reply
moteam
Posts: 128
Joined: Sat Feb 26, 2011 1:15 pm

Core error: Mysql error 1267: Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT)

Post by moteam »

В админке у слейва:

Code: Select all

Core error: Mysql error 1267: Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT)
на главной у слейва:

Code: Select all

Sorry, there was an error. Please, reload page in a minute.
Мастер:
(c) SmartCJ Pro V 2.1 Your Build 202311101342 (Current build: 202311101342 ) PHP version 7.3.31-1~deb10u1 Mysql Version: 10.3.36-MariaDB-0+deb10u2

Слейв:
(c) SmartCJ Pro V 2.1 Your Build 202311101342 (Current build: 202311101342 ) PHP version 7.3.31-1~deb10u1 Mysql Version: 10.3.36-MariaDB-0+deb10u2
moteam
Posts: 128
Joined: Sat Feb 26, 2011 1:15 pm

Re: Core error: Mysql error 1267: Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLIC

Post by moteam »

Нашел подобный топик viewtopic.php?t=107786&hilit=1267 , но это не мой случай.

Навело на мысль привеести все таблицы в мастерах-слейвах к одному collation - и починилось.
Выбрал utf8mb4_general_ci ибо говорят что он побыстрее.
Может кому пригодится, воспользовался кодом отсюда:
https://stackoverflow.com/questions/108 ... -collation

На некоторых таблицах спотыкалось, добавлял ALTER IGNORE ...
Еще почти везде добавлял, но не на всех таблтцах работало - ругалось на ключи - такое:
ALTER TABLE rot_gallery_stats1 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
moteam
Posts: 128
Joined: Sat Feb 26, 2011 1:15 pm

Re: Core error: Mysql error 1267: Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLIC

Post by moteam »

Откуда у некоторых таблиц взялся collation utf8mb4_unicode_ci - без идей.
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: Core error: Mysql error 1267: Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLIC

Post by admin »

$config["db_charset"] = 'utf8mb4';

если добавить в конфиг то все ок?
Don't forget to run script update
Post Reply