1 (изменено: lapbjud, 2012-04-25 07:41:43)

Тема: Опять затык с controluser (pma)

Здравствуйте.

Знаю, тема уже обсуждалась, но у меня та же проблема. Что делаю не так, понять не могу.

Итак, ставлю phpMyAdmin, импортирую create_tables.sql. БД `phpmyadmin` с таблицами `pma_...` появляется, все ок.

Создаю пользователя `pma`, выставляю ему привелегии уровня базы данных (для БД `phpmyadmin`): SELECT, INSERT, UPDATE, DELETE.

В конфиге config.inc.php все указываю:

...

/*
 * First server
 */
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '111';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
/* Select mysql if your server does not have mysqli */
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['AllowNoPassword'] = false;

/*
 * phpMyAdmin configuration storage settings.
 */

/* User used to manipulate with storage */
$cfg['Servers'][$i]['controlhost'] = 'phpmyadmin';
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = '111';

/* Storage database and tables */
$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]['table_uiprefs'] = 'pma_table_uiprefs';
$cfg['Servers'][$i]['tracking'] = 'pma_tracking';
$cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords';
$cfg['Servers'][$i]['userconfig'] = 'pma_userconfig';
$cfg['Servers'][$i]['recent'] = 'pma_recent';
$cfg['Servers'][$i]['table_uiprefs'] = 'pma_table_uiprefs';
/* Contrib / Swekey authentication */
// $cfg['Servers'][$i]['auth_swekey_config'] = '/etc/swekey-pma.conf';

...

Выдает ошибку "Ошибка при указании соединения для controluser в конфигурации".

Перепроверил имя пользователя, переустановил пароль. Один хрен выдает ошибку. Подставил в качетсве controluser'а пользователя root. Все заработало. Вернул обратно pma, вдобавок к установленным привелегиям для `phpmyadmin` дал ему ВСЕ глобальные привелегии. Один хрен ошибка...

Что не так делаю?.. Кэш, куки чищу и серверы перезапускаю перед каждой проверкой.

2

Re: Опять затык с controluser (pma)

Ошибка в строке:
$cfg['Servers'][$i]['controlhost'] = 'phpmyadmin';
Надо было оставить ее в исходном виде:
$cfg['Servers'][$i]['controlhost'] = 'localhost';

3

Re: Опять затык с controluser (pma)

Hanut, попробовал. Все равно выдает сообщение об ошибке. А с root'ом ему все равно, какой хост прописан. Что phpmyadmin, что localhost - все гладко. Наверное, проблема с пользователями или их привелегиями, но что конкретно не так я не пойму.

А точно ошибка? Как я понял, там должен быть указан хост, на который установлен сам phpMyAdmin...

4

Re: Опять затык с controluser (pma)

Заработало через пользователя pma. Я когда создавал этого пользователя в MySQL, указал хост 'phpmyadmin'. Поменял на 'localhost' - ошибка исчезла. Хотя в конфиге controlhost остался 'phpmyadmin'.

Что-то я не пойму этой канители с хостами... Ведь нужно указывать тот хост, с которого будет работать пользователь? Я правильно понимаю? phpMyAdmin установлен на виртуальном хосте phpmyadmin. У обоих хостов IP 127.0.0.1. Или Апачу монопенисуально, с какого виртуального хоста запущен скрипт, и он по дефолту определяется как localhost при подключении?

5

Re: Опять затык с controluser (pma)

lapbjud сказал:

Ведь нужно указывать тот хост, с которого будет работать пользователь?

Верно. Только MySQL работает не на виртуальном хосте, а, в вашем случае, на localhost.

127.0.0.1 - это localhost. Указывать хост phpmyadmin было ошибкой, конечно.

6

Re: Опять затык с controluser (pma)

Доброго времени суток!
Во первых, большой респект создателям этого сайта. Установки компонентов прошли без проблем. Кроме...
По существу.
Проблема с аутентификацией phpMyAdmin (версия из phpMyAdmin-3.5.1-all-languages.zip) из конфигурационного файла.
Файл config.inc.php взят с вашего сайта. Процедура create_tables.sql выполнена.
Пользователь 'pma' (для localhost) создан и ему даны глобальные привелегии, как у 'root'.
Запрос http://localhost/pma/ выдаёт: `Ошибка при указании соединения для controluser в конфигурации`. Если в
конфигурационном файле использовать вместо пользователя 'pma' пользователя 'root', то phpMyAdmin работает нормально.
Т.е. сделал всё, как и юзер lapbjud делал. А вот результат отрицательный(после всех чисток и перезагрузок).
В конфиге:
  $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'] = 'ХХХ'; /* Пароль пользователя root. */
  $cfg['Servers'][$i]['controlhost'] = 'localhost';
  $cfg['Servers'][$i]['controluser'] = 'pma';
  $cfg['Servers'][$i]['controlpass'] = 'X-X-X'; /* А здесь его пароль. */
  $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
Далее по тексту с сайта. Где собака порылась, непонятно. Если кто знает ответ на сию загадку, буду благодарен.

7

Re: Опять затык с controluser (pma)

mur123v6 сказал:

Запрос http://localhost/pma/ выдаёт: `Ошибка при указании соединения для controluser в конфигурации`

Надо проверить права пользователя pma и после добавления его в конфигурационный файл, очистить куки браузера. Ошибок быть не должно.

8

Re: Опять затык с controluser (pma)

Спасибо, Hanut!
Как ни странно, не помогло. Тогда установил MySQL Workbench 5.2. Удалил через него юзера 'pma'. Создал вновь со всеми привелегиями. Теперь захожу нормально, но кофигурационный файл игнорируется (phPMyAdmin говорит

9

Re: Опять затык с controluser (pma)

об ошибке чтения. Выдаёт страницу с предложением ввести юзера и пароль. Вход нормальный, функциональность тоже. Как я понимаю, неявно изменился тип аутентификации. Меня такой вариант вполне устраивает. Может кому такая инфа будет полезна.

10 (изменено: Maxzz, 2012-09-22 10:21:44)

Re: Опять затык с controluser (pma)

lapbjud сказал:

$cfg['Servers'][$i]['controlhost'] = 'phpmyadmin';

Удали эту строку! wink