У меня есть debian 7.8 и я использую postfix, mysql с roundcube и pure-ftpd-mysql. Все отлично работает с mysql Ver 14.14 Distrib 5.5.40 с 2014 года.
Я пытаюсь обновить mysql до 5.7, чтобы поиграть с новой функциональностью mysql с полным индексом поиска в массивной базе данных, но мне это не удалось.
После обновления сервера mysql до 5.7 phpmyadmin работал отлично, но мне пришлось добавить:
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
В conf, чтобы удалить ошибку значения по умолчанию. Моя резервная копия и обновление таблицы прошли успешно, и весь мой веб-сайт работал нормально.
Но у меня были серьезные проблемы с postfix и pureftpd.
Могли бы больше подключаться к ftp, даже если бы вся база данных pureftpd была там и работала. Проверяю все конф, вроде все нормально.
Я могу успешно подключиться к roundcube и увидеть свою старую электронную почту, но я больше не могу отправлять или получать электронную почту. Я получил эту ошибку в моем журнале:
postfix/cleanup[27758]: warning: mysql:/etc/postfix/mysql_virtual_alias_maps.cf is unavailable. unsupported dictionary type: mysql
Я пробую много чего, но ничего не помогло. В итоге я использую полную резервную копию и восстанавливаю всю систему. ПРАВИЛЬНО теперь все вернулось к норме 100% идеально, но с 5.5 mysql.
Может я что то не так сделал в процессе. Что я сделал :
Полная резервная копия моей системы и базы данных sql и conf
apt-get remove mysql-server mysql-client mysql-common
apt-get autoremove
apt-get autoclean
apt-get install libaio1
dpkg -i mysql-apt-config_0.8.3-1_all.deb
apt-get update
apt-get intall mysql-server
service mysql start
восстановление базы данных mysql и обновление таблицы
Спасибо за помощь!
Отвечая на этот вопрос главным образом потому, что он поднимается выше в поиске google: проблема в sql-режиме, в частности, запись "STRICT_TRANS_TABLES", кажется, вызывает проблемы для постфиксного виртуального поиска в mysql 5.7 (или выше?). Отредактируйте свой sql-режим, чтобы исключить это, и все будет хорошо ...
Теперь, что касается того, почему ... Я не понимаю ... У меня была теория, что это было связано с датами, такими как 000-000-000 и т. Д. В одном столбце, но после обновления всех этих проблем проблема осталась.
РЕДАКТИРОВАТЬ: Проблема заключалась в выборе имени таблицы «virtual_alias_domains». Кажется, что это начинается с зарезервированного слова, поэтому оно должно быть полностью процитировано. Изменение моего запроса на использование обратных кавычек вокруг имени таблицы решило проблему, то есть выберите blah из virtual_alias_domains
и т.д
Проверьте вывод postconf -m
и посмотрите, есть ли в списке mysql. Если нет, используйте:
sudo apt-get install postfix-mysql
Это добавит поддержку mysql в postfix.