The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Как победить в postfix lookup ошибку Illegal mix of collations?, !*! КриоМух, 30-Июн-24, 19:35  [смотреть все]
Добрый день, Товарищи!

Прошу совета. Почтовик у меня, стандартный postfix,mysql,dovecot, freebsd и всё такое. Всё работает нормально.
На днях видимо настроили как-то коряво перенаправление писем с яндекса на адрес почтовый на этом сервере, и этот адрес КУДА должны идти письма - написали коряво, видимо там символы русские добавили или ещё что. В логе это выглядит так:


Jun 30 21:12:14 warning: mysql:/usr/local/etc/postfix/mysql/virtual_alias_maps.cf: query failed: Illegal mix of collations (latin1_general_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation '='
Jun 30 21:12:14 mx postfix/smtpd[19]: warning: mysql:/usr/local/etc/postfix/mysql/virtual_alias_maps.cf lookup error for "�M-^Aeo@mydomain.ru"
Jun 30 21:12:14 mx postfix/smtpd[19]: NOQUEUE: reject: RCPT from forward501b.mail.yandex.net[178.154.239.145]: 451 4.3.0 <�M-^Aeo@mydomain.ru>: Temporary lookup failure; from=<yandex-address@yandex.ru> to=<�M-^Aeo@mydomain.ru> proto=ESMTP helo=<forward501b.mail.yandex.net>

Т.е. там насколько я понимаю пересылку настроили, подтверждение на указанный адрес попыталось выслаться и вот оно никак дойти не может, почтовик нормального ответа яндексу дать не может, т.к. при проверке адреса назначения у него SQL ошибка из-за некорректных символов проявляется.
В целом-то ничего фатального, я об этом уже сообщил и там адрес поправят, мне интересно - как можно сделать, чтобы мой почтовик не валился в SQL ошибку, а отвечал корректно, что адреса такого нет. Экранирование там как-то включить или ещё что-то может?

Вот настройка lookup'а в MySQL, тоже стандартная:

hosts   = unix:/var/mysql/mysql.sock
user    = postuser
password= PASS
dbname  = postdb

query   = SELECT aa.goto FROM alias aa JOIN domain bb ON bb.domain=aa.domain WHERE aa.address='%s' AND aa.active='1'


  • Как победить в postfix lookup ошибку Illegal mix of collations?, !*! Pahanivo пробегал, 22:49 , 30-Июн-24 (1)
    Анекдот про связиста в армии и автомат знаешь?
    У меня уходит - проблема где-то у вас! (R)

    ПыСы: Тебя не смущает что оно с ямыла ушло? Загуглить ошибку пробовал? Кодировки в своей базе проверял?

  • Как победить в postfix lookup ошибку Illegal mix of collations?, !*! pavel2000, 13:27 , 08-Июл-24 (2)
    >[оверквотинг удален]
    > поправят, мне интересно - как можно сделать, чтобы мой почтовик не
    > валился в SQL ошибку, а отвечал корректно, что адреса такого нет.
    > Экранирование там как-то включить или ещё что-то может?
    > Вот настройка lookup'а в MySQL, тоже стандартная:
    >
    hosts   = unix:/var/mysql/mysql.sock 
    > user    = postuser
    > password= PASS
    > dbname  = postdb
    > query   = SELECT aa.goto FROM alias aa JOIN domain bb
    > ON bb.domain=aa.domain WHERE aa.address='%s' AND aa.active='1'

    WHERE aa.address= CONVERT( _utf8 '%s' USING latin1 )




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру