Mysql error 1267: Illegal mix of collations

Axcel
Posts: 1403
Joined: Sun Dec 09, 2012 12:43 pm

Mysql error 1267: Illegal mix of collations

Post by Axcel »

Подключил слейв к мастеру. Оба сайта на одном сервере.
Вылезло такое:
Mysql error 1267: Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation '=' (Notice:: Mysql and Web encoding mismatch, please contact script support)

Ап сделал - не помогло.

что делать?
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: Mysql error 1267: Illegal mix of collations

Post by admin »

скиньте плз админки и шел , я проврею какой вариант кодировок
Don't forget to run script update
Axcel
Posts: 1403
Joined: Sun Dec 09, 2012 12:43 pm

Re: Mysql error 1267: Illegal mix of collations

Post by Axcel »

отправил в ПМ
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: Mysql error 1267: Illegal mix of collations

Post by admin »

ситуация такая

в базе все создано как utf8mb3_general_ci (полагаю база переносилась откуда то)
при этом в config.php прописано $config["db_charset"] = 'utf8mb4';

надо либо убрать из конфига либо базу привести в utf8mb4_unicode_ci


я пока в конфиге закомментил $config["db_charset"] = 'utf8mb4'; что б убедиться что все работает
Don't forget to run script update
Axcel
Posts: 1403
Joined: Sun Dec 09, 2012 12:43 pm

Re: Mysql error 1267: Illegal mix of collations

Post by Axcel »

Как понимаю, на мастере utf8mb3_general_ci ? Его когда-то перенёс со старого сервера с пхп 5.
В каком именно конфиге прописано utf8mb4? На мастере, на слейве?
Непонятно же ничего.
То есть я не понимаю где взять этот конфиг, какая кодировка правильная, и почему базу приводить к utf8mb4_unicode_ci, а не к utf8mb4.
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: Mysql error 1267: Illegal mix of collations

Post by admin »

лучше по очереди а то пока "не ясно все"

прописано в scj/includes/config.php

сайт который не работает.

но этот сайт - слейв, он конектиться к базе мастера которая в utf8mb3_general_ci

все ли ясно?
Don't forget to run script update
Axcel
Posts: 1403
Joined: Sun Dec 09, 2012 12:43 pm

Re: Mysql error 1267: Illegal mix of collations

Post by Axcel »

это ясно.
кодировки на мастере и слейве отличаются.
я думал скрипт с одной кодировкой работает, чтобы таких ошибок не было.
базу слейва менять не хочется.
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: Mysql error 1267: Illegal mix of collations

Post by admin »

база мастера в кодировке 1
а на слейве не база другая, а в конфиге вы руками прописали что кодировка 2
НЕ (!) база слейва
Don't forget to run script update
Axcel
Posts: 1403
Joined: Sun Dec 09, 2012 12:43 pm

Re: Mysql error 1267: Illegal mix of collations

Post by Axcel »

Я кодировку руками на слейве не прописывал.
Эта кодировка "по умолчанию" поставилась вместе со скриптом.
Поставил слейв, прописал только базу редиса.
Попробовал подключить мастер и получил ошибку.
Вы можете объянить почему такая путаница с кодировками?
И что делать, чтобы такого не было?
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: Mysql error 1267: Illegal mix of collations

Post by admin »

предполагается что когда ставится сайт он будет на utf8mb4
это прописывается в конфиг

но после установки вы заливаете базу другую, с utf8mb3
получается проблема путаница и тп


если вы хотите руками переписать базу - да, надо из конфига убрать указание utf8mb4
Don't forget to run script update
Post Reply