Получение gobbledegook с сервера SQL на mysql оказывается его старой кодовой страницей. Почему она настроена так? Как изменить настройки по умолчанию? - PullRequest
0 голосов
/ 27 апреля 2020

Я пишу новый проект, который использует MySQL. С приложением, над которым я работаю, проблем нет, но когда приложение получает выходные данные с моего sql сервера, оно сразу же отклоняет его как нулевое. При обращении к моему SQL серверу через порт 3306 я получаю странные искаженные сообщения, а также короткое сообщение «пакеты вышли из строя». В моей настройке у меня есть MAMP, Docker, Apache server и PHP. Я могу получить доступ к каждому сервису через соответствующий порт.

1) Я посмотрел на это, запустив консоль в браузере, который сообщает, что текст неправильно отформатирован, но не utf-8

2) Я следовал этому руководству https://medium.com/@manish_demblani / Break-out-of-the- mysql -character-set-hell-24c6a306e1e5 и результаты, которые мой sql сервер изменил

введите описание изображения здесь

У меня такой вопрос. Почему MySQL настроен таким странным образом? Почему он представлен в CP850 / DOS / Latin? Нет ли по умолчанию / конфигурационных файлов для изменения или это делается через windows где-то

1 Ответ

0 голосов
/ 28 апреля 2020

Кажется, вы как-то испортили конфигурацию клиента (строка подключения, раздел [client] вашего файла cnf (в системе, на которой вы запустили консоль mysql), ...). Он говорит вашему серверу отправлять данные в cp850. Не уверен, почему вы бы получили пакеты не по порядку, может быть, у вас есть дополнительная основная проблема (может быть, очень старая библиотека?), Но я бы начал с этого. Непонятно: следили ли вы за публикацией в блоге, а затем возникли проблемы, или это была попытка решения? В любом случае постарайтесь сосредоточить свое внимание на клиенте. Попробуйте отменить изменения, которые вы сделали. MySQL использует utf8 по умолчанию уже долгое время. - Солнечный свет

...