1 (изменено: anvsm66, 2012-10-16 22:33:09)

Тема: Ошибка SQL-запрос: SET CHARACTER SET 'utf8';

Два года назад на одном из форумов некто задал вопрос (см. ниже), на который так никто и не ответил.У меня сейчас точная копия проблемы. Это в первый раз, когда я не могу найти готовый ответ в интернете.Может кто-нибудь всё-таки сталкивался с такой картиной:

Ошибка

SQL-запрос:

SET CHARACTER SET 'utf8';

Ответ MySQL:
#2006 - MySQL server has gone away


......когда пытаюсь открыть окно phpMyAdmin.

у меня значит там прописано
<?php
$i = 0;
$i++;
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '123'; /* Пароль пользователя root. */
//
$cfg['Servers'][$i]['controluser'] = 'pma'; /* Имя созданного вами только что пользователя для доступа к расширенным таблицам. */
$cfg['Servers'][$i]['controlpass'] = '12345'; /* А здесь его пароль. */
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
$cfg['Servers'][$i]['relation'] = 'pma_relation';
$cfg['Servers'][$i]['table_info'] = 'pma_table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma_column_info';
$cfg['Servers'][$i]['history'] = 'pma_history';
$cfg['Servers'][$i]['tracking'] = 'pma_tracking';
$cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords';
?>


если закоментировать строку $cfg['Servers'][$i]['controluser'] = 'pma'; всё работает...

2

Re: Ошибка SQL-запрос: SET CHARACTER SET 'utf8';

anvsm66 сказал:

MySQL server has gone away

Могу только посоветовать переустановить MySQL, предварительно сохранив данные БД. От запроса MySQL не должен умирать.

anvsm66 сказал:

когда пытаюсь открыть окно phpMyAdmin.
у меня значит там прописано

При открытии phpMyAdmin вы видите конфигурационный файл? Странно.

anvsm66 сказал:

если закоментировать строку $cfg['Servers'][$i]['controluser'] = 'pma'; всё работает.

А если выполнить в phpMyAdmin запрос сервер уходит в отказ?
SET CHARACTER SET 'utf8';

3

Re: Ошибка SQL-запрос: SET CHARACTER SET 'utf8';

Hanut сказал:
anvsm66 сказал:

MySQL server has gone away

Могу только посоветовать переустановить MySQL, предварительно сохранив данные БД. От запроса MySQL не должен умирать.

anvsm66 сказал:

когда пытаюсь открыть окно phpMyAdmin.
у меня значит там прописано

При открытии phpMyAdmin вы видите конфигурационный файл? Странно.

anvsm66 сказал:

если закоментировать строку $cfg['Servers'][$i]['controluser'] = 'pma'; всё работает.

А если выполнить в phpMyAdmin запрос сервер уходит в отказ?
SET CHARACTER SET 'utf8';

При каждой новой попытке зайти в phpMyAdmin ответ MySQL бывает разный (не всегда он умирает), но ошибка одна и та же.

Конфигурационный файл я, конечно, не вижу. Это просто автор поста двухлетней давности не совсем правильно выразил мысль, а я его процитировал.
При попытке открыть phpMyAdmin вылетает ошибка.
А прописано это всё в файле config.inc.php.

Наверно, переустановлю MySQL и phpMyAdmin, скачав более ранние (и уже стабильные) версии.

4

Re: Ошибка SQL-запрос: SET CHARACTER SET 'utf8';

anvsm66 сказал:

При каждой новой попытке зайти в phpMyAdmin ответ MySQL бывает разный (не всегда он умирает), но ошибка одна и та же.

Ответ разный - значит надо смотреть какой. Проще всего в журнале ошибок посмотреть. В каталоге data есть файл .err, который является журналом ошибок MySQL.

Какие версии MySQL и phpMyAdmin используются?

5

Re: Ошибка SQL-запрос: SET CHARACTER SET 'utf8';

Ответы я читаю, но мне они ни о чём не говорят (в них упоминается pma). Примеры привести сейчас не могу - сервер на домашнем компьютере.

Версии: MySQL 5.5.28  phpMyAdmin 3.5.3

6

Re: Ошибка SQL-запрос: SET CHARACTER SET 'utf8';

anvsm66 сказал:

в них упоминается pma

pma - это имя пользователя через которого подключаются таблицы расширений. Можно попробовать создать нового пользователя и подключиться через него.

Версии MySQL и phpMyAdmin вполне актуальны. Смотрите записи в журнале ошибок MySQL.

7 (изменено: anvsm66, 2012-10-17 18:39:08)

Re: Ошибка SQL-запрос: SET CHARACTER SET 'utf8';

Ответ MySQL:

#1184 - Aborted connection 6 to db: 'unconnected' user: 'pma' host: 'localhost' (init_connect command failed)

После замены имени pma на user - то же самое:

#1184 - Aborted connection 35 to db: 'unconnected' user: 'user' host: 'localhost' (init_connect command failed)

Наконец-то решил проблему:
в файле MySQL my.ini в команде
init-connect="SET NAMES utf8"
вместо utf8 я изначально написал utf-8.

8

Re: Ошибка SQL-запрос: SET CHARACTER SET 'utf8';

anvsm66 сказал:

Наконец-то решил проблему:
в файле MySQL my.ini в команде
init-connect="SET NAMES utf8"
вместо utf8 я изначально написал utf-8.

Интересное поведение. Спасибо, что отписали. Буду иметь в виду.