Ошибка при указании соединения для controluser в конфигурации phpmyadmin

Error

Прошу помощи у гуру MySQL. Такую вот ошибку выдает pma.
Что делать?

задан 11 апр 2015 в 8:35

hidd's user avatar

В снимках экрана ошибка «Access denied for user root (using password: NO)» и фигурирует «controluser«.

Вам необходимо правильно установить имя пользователя и пароль для controluser‘а. Они используются для соединения с хранилищем конфигурации phpMyAdmin (configuration storage), где хранятся настройки для дополнительный функций.

Хранилище конфигурации не обязательно, phpMyAdmin может работать без него.
Поэтому у вас есть два пути:

  • Выключить хранилище конфигурации: $cfg['Servers'][$i]['pmadb'] = null; в config.inc.php.

  • Настроить controluser‘а: создать пользователя в MySQL, предоставить ему определённый набор привилегий, затем добавить его имя и пароль в config.inc.php:

    $cfg['Servers'][$i]['controluser'] = '<ИМЯ_ПОЛЬЗОВАТЕЛЯ>';
    $cfg['Servers'][$i]['controlpass'] = '<ПАРОЛЬ>';
    

ответ дан 11 апр 2015 в 9:41

Alex Shesterov's user avatar

Alex ShesterovAlex Shesterov

3281 золотой знак7 серебряных знаков19 бронзовых знаков

3

я выключил хранилище конфигурации, а потом обратно включил, помогло.

ответ дан 9 авг 2016 в 5:44

azim's user avatar

azimazim

111 бронзовый знак

Кстати говоря, Вы можете сделать заказ у разработчика которого вы сейчас читаете, по любым вопросам с администрированием серверов, а также сайтами. Я помогу в любой задаче, оплата почасовая. Можете обратиться в Telegram для быстрой
обратной связи, либо на почту которая на странице «Обо мне».

История о том как я наткнулся на ошибку соединения для controluser в phpmyadmin.  Обычная видимо, типичная ситуация и её вполне легко исправить.

Для этого нужно прописать данные для подключения к бд в config.inc.php, как root так и для pma пользователя которого мы создадим.

А также импортировать в корень базы данных файл create_tables.sql, он находиться в папке examples обычно, если его нет там, тогда смотрим версию вашего phpmyadmin через саму панель, и ищем тут —

https://www.phpmyadmin.net/files/

либо тут https://github.com/phpmyadmin/phpmyadmin/releases

либо просто в ссылке подставляем свою версию

https://raw.githubusercontent.com/phpmyadmin/phpmyadmin/RELEASE_4_0_7/examples/create_tables.sql

https://raw.githubusercontent.com/phpmyadmin/phpmyadmin/RELEASE_4_2_12/examples/create_tables.sql

И сохраняем себе данный .sql файлик

Для начала надо знать ваш пароль от root базы.

Заходим в phpmyadmin через root

и импортируем create_tables.sql

Далее, создать пользователя pma, если его не существует.

phpmyadmin - Пользователи

phpmyadmin — Пользователи

Для этого заходим в ваш установленный phpmyadmin, нажимаем «Пользователи» сверху, далее «Добавить пользователя».

Вводим название пользователя pma, хост — localhost (важно), далее генерируем пароль и записываем его куда-нибудь.

Далее жмем «Пользователи», напротив вашего юзера pma будет «Редактировать привилегии», жмем.

Сверху под меню главным, будет еще одно меню «Глобальный, База данных, Изменить пароль, Информация учётной записи»

Жмем «База данных».

Далее выбираем в «Добавить привилегии на следующую базу данных:» базу данных «phpmyadmin».

Выбираем SELECT, INSERT, UPDATE, DELETE и жмём «Вперед».

Далее надо прописать данного юзера в файл config.inc.php

Для Debian файл находиться в /etc/phpmyadmin/

Вводим команду для редактирования файла —

nano /etc/phpmyadmin/config.inc.php

Далее,

заменить и установить строки

$cfg['Servers'][$i]['controlhost'] = 'localhost';
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = 'пароль';
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';

pma юзера, которого мы создали, и пароль который мы записали.

и в следующих строках вписать подключение root пользователя

$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'пароль';

И таким образом вы сможете избавиться от ошибки подключения controluser для вашей системы управления базой данных, также если у вас нет возможности использовать данный инструмент, вы можете попробовать https://www.adminer.org/ или же вот этот инструмент для создания бэкапов (импорт или экспорт) таблиц из базы данных — https://sypex.net/ru/products/dumper/downloads/

Еще 1 вариант — очень эффективный:

Скачайте данный архив — это авто-фиксер для PhpMyadmin

Скачать PhpmyadminFix без регистраций и СМС

Закиньте на Debian сервер, и напишите

  1. chmod +x pma-debian.sh
  2. ./pma-debian.sh

[:en]История о том как я наткнулся на ошибку соединения для controluser в phpmyadmin.  Обычная видимо, типичная ситуация и её вполне легко исправить.

Для этого нужно прописать данные для подключения к бд в config.inc.php, как root так и для pma пользователя которого мы создадим.

А также импортировать в корень базы данных файл create_tables.sql, он находиться в папке examples обычно, если его нет там, тогда смотрим версию вашего phpmyadmin через саму панель, и ищем тут —

https://www.phpmyadmin.net/files/

либо тут https://github.com/phpmyadmin/phpmyadmin/releases

либо просто в ссылке подставляем свою версию

https://raw.githubusercontent.com/phpmyadmin/phpmyadmin/RELEASE_4_0_7/examples/create_tables.sql

https://raw.githubusercontent.com/phpmyadmin/phpmyadmin/RELEASE_4_2_12/examples/create_tables.sql

И сохраняем себе данный .sql файлик

Для начала надо знать ваш пароль от root базы.

Заходим в phpmyadmin через root

и импортируем create_tables.sql

Далее, создать пользователя pma, если его не существует.

phpmyadmin - Пользователи

phpmyadmin — Пользователи

Для этого заходим в ваш установленный phpmyadmin, нажимаем «Пользователи» сверху, далее «Добавить пользователя».

Вводим название пользователя pma, хост — localhost (важно), далее генерируем пароль и записываем его куда-нибудь.

Далее жмем «Пользователи», напротив вашего юзера pma будет «Редактировать привилегии», жмем.

Сверху под меню главным, будет еще одно меню «Глобальный, База данных, Изменить пароль, Информация учётной записи»

Жмем «База данных».

Далее выбираем в «Добавить привилегии на следующую базу данных:» базу данных «phpmyadmin».

Выбираем SELECT, INSERT, UPDATE, DELETE и жмём «Вперед».

Далее надо прописать данного юзера в файл config.inc.php

Для Debian файл находиться в /etc/phpmyadmin/

Вводим команду для редактирования файла —

nano /etc/phpmyadmin/config.inc.php

Далее,

заменить и установить строки

$cfg['Servers'][$i]['controlhost'] = 'localhost';
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = 'пароль';
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';

pma юзера, которого мы создали, и пароль который мы записали.

и в следующих строках вписать подключение root пользователя

$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'пароль';

И таким образом вы сможете избавиться от ошибки подключения controluser для вашей системы управления базой данных, также если у вас нет возможности использовать данный инструмент, вы можете попробовать https://www.adminer.org/ или же вот этот инструмент для создания бэкапов (импорт или экспорт) таблиц из базы данных — https://sypex.net/ru/products/dumper/downloads/

Кстати говоря, Вы можете сделать заказ у разработчика которого вы сейчас читаете, по любым вопросам с администрированием серверов, а также сайтами. Я помогу в любой задаче, оплата почасовая. Можете обратиться в Telegram для быстрой
обратной связи, либо на почту которая на странице «Обо мне».

There are 2 errors:

1. Connection for controluser as defined in your configuration failed

Solution:

a. Open terminal:
sudo gedit /etc/phpmyadmin/config.inc.php

b. and uncomment following lines(may be both will come 2 times depend upon version):
$cfg[‘Servers’][$i][‘AllowNoPassword’] = TRUE;

c. and comment following lines(may be both will come 2 times depend upon version):
//$cfg[‘Servers’][$i][‘controluser’] = $dbuser;
//$cfg[‘Servers’][$i][‘controlpass’] = $dbpass;

2. Access denied for user ‘root’@’localhost’

This will come when you open phpmyadmin or when you open mysql on terminal with out sudo command(not from root user). This error is due to root user. The reson behind this error is your current ubuntu user does not have previlages to open mysql in terminal. If you open mysql with sudo command then it will open but not open from your current user. For example:

lenovo@lenovo-ThinkPad-E460:/etc$ mysql -u root -p
Enter password:
ERROR 1698 (28000): Access denied for user ‘root’@’localhost’

Here current ubuntu user is lenovo. So you have to give permissions to your root user.
Process:

1 — First, connect in sudo mysql

sudo mysql -u root

2 — Check your accounts present in your db

SELECT User,Host FROM mysql.user;

+------------------+-----------+
| User             | Host      |
+------------------+-----------+
| admin            | localhost |
| debian-sys-maint | localhost |
| magento_user     | localhost |
| mysql.sys        | localhost |
| root             | localhost |

3 — Delete current root@localhost account

mysql> DROP USER ‘root’@’localhost’;
Query OK, 0 rows affected (0,00 sec)

4 — Recreate your user

mysql> CREATE USER ‘root’@’%’ IDENTIFIED BY »;
Query OK, 0 rows affected (0,00 sec)

5 — Give permissions to your user and don’t forget to flush privileges

mysql> GRANT ALL PRIVILEGES ON . TO ‘root’@’%’;
Query OK, 0 rows affected (0,00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0,01 sec)

6 — Exit mysql and try to reconnect without sudo

I hope this will help. And now you able to open phpmyadmin with no password.

georgich

Posts: 22
Joined: Sat Oct 31, 2015 11:56 am

controluser

Приветствую!
Скажу сразу. Прочитал много форумов и мануалов, но так и не понял ,что делать. Банальное сообщение, которое не мешает работе, вроде бы, но надоедает.

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

Еле нашел рута и пароль для него в файле конфигурации. Зашел. Я так понимаю надо из под рута как-то создать этого пользователя. Подскажите, пожалуйста, куда смотреть?
Спасибо!


skurudo

VestaCP Team
Posts: 8099
Joined: Fri Dec 26, 2014 2:23 pm
Contact:

Re: controluser

Post

by skurudo » Mon Nov 09, 2015 6:58 pm

Вам необходимо правильно установить имя пользователя и пароль для controluser’а. Они используются для соединения с хранилищем конфигурации phpMyAdmin (configuration storage), где хранятся настройки для дополнительный функций.

Хранилище конфигурации не обязательно, phpMyAdmin может работать без него. Поэтому у вас есть два пути:

1. Выключить хранилище конфигурации: $cfg[‘Servers’][$i][‘pmadb’] = null; в config.inc.php.

2. Настроить controluser’а: создать пользователя в MySQL, предоставить ему определённый набор привилегий, затем добавить его имя и пароль в config.inc.php:

Code: Select all

$cfg['Servers'][$i]['controluser'] = '<ИМЯ_ПОЛЬЗОВАТЕЛЯ>';
$cfg['Servers'][$i]['controlpass'] = '<ПАРОЛЬ>';


taku

Posts: 16
Joined: Mon Jun 01, 2015 6:19 am

Re: controluser

Post

by taku » Tue Nov 10, 2015 1:02 pm

для того что бы избавится от проблемы делаем следующее
1) заходим в /usr/share/doc/phpmyadmin/examples
2) gunzip config.sample.inc.php.gz & mv ./config.sample.inc.php /etc/phpmyadmin/config.inc.php
3) в phpmyadmin импортируем create_tables.sql.gz
4) раскомментировать адвансед функции


serikov2016

Posts: 2
Joined: Mon Nov 23, 2015 4:30 pm

Re: controluser

Post

by serikov2016 » Mon Nov 23, 2015 6:43 pm

ВХОДИМ В , если вы на Ubuntu

sudo nano /root/.my.cnf

видем и сохраняем пароль

[client]
password=’mdoo5566jf’

ДАЛЕЕ

sudo nano /etc/phpmyadmin/config.inc.php
правим

$cfg[‘Servers’][$i][‘controluser’] = $root;
$cfg[‘Servers’][$i][‘controlpass’] = $mdoo5566jf;

Далее

$cfg[‘Servers’][$i][‘pmadb’] = $phpmyadmin;

перезагружаем мускул, выходим из phpmyadmin и снова входим!

Конечно не всё исправляется но работать с таблицами базы можно.


MaxAlex

Posts: 17
Joined: Tue Nov 11, 2014 6:28 pm

Re: controluser

Post

by MaxAlex » Tue Jan 05, 2016 2:18 pm

serikov2016 wrote: …………………..
перезагружаем мускул, выходим из phpmyadmin и снова входим!
Конечно не всё исправляется но работать с таблицами базы можно.

Теперь у меня вообще не получается зайти в phpmyadmin, браузер выдаёт ошибку 500.
Как там всё по умолчанию должно быть?
Может быть из-за того, что я изменил в файле /root/.my.cnf пароль, то есть вбил пароль root-а от phpMyAdmin, который недавно перед этим изменил?

P.S.: исправил, всё запустилось и смог зайти в phpMyAdmin, когда убрал $ и поставил ‘.
Но оставил значение null в:

Code: Select all

$cfg['Servers'][$i]['pmadb'] = null;

И ещё, не знаю может у меня только так на Debian 8, но когда в панели VESTA CP жал на кнопку перезапустить
mysql сервер, было непонятно сработала команда или нет, так время отсчёта оставалось прежним, а должно было начаться с нуля.




Сначала расскажу что я сделал, а потом к сути вопроса.

На голый сервер поставил VESTA, который собственно сам и накатил PHPMyAdmin, после авторизации на котором, возникали следующие ошибки и как я их решил:

  1. Ошибка при указании соединения для controluser в конфигурации:
    — Подсмотрел логин и пароль в файле /usr/local/vesta/conf/mysql.conf
    — Ввел их в /etc/phpmyadmin/config.inc.php ($cfg[‘Servers’][$i][‘controluser’] и $cfg[‘Servers’][$i][‘controlpass’])
  2. Дополнительные возможности phpMyAdmin не настроены в полной мере, некоторые функции были отключены.
    — Ввел все те же логин и пароль в /etc/phpmyadmin/config.inc.php ($cfg[‘Servers’][$i][‘controluser’] и $cfg[‘Servers’][$i][‘controlpass’])
    — Скачал пример бэкапа /usr/share/doc/phpmyadmin/examples/create_tables.sql.gz и импортировал его
    — В /etc/phpmyadmin/config.inc.php указал таблицы в соответствии с импортируемой бд (добавил знак подчеркивания: pma_bookmark => pma__bookmark и т.п.)

После проделанных шагов PMA прекрасно заработал и более не ругался, но ровно до того момента когда время авторизации истекло и меня не выбило. И теперь я не могу войти под любыми парами логин-пароль, в т.ч. root.

Отображаемые ошибки:
#2002 Невозможно подключиться к серверу MySQL
Ошибка при указании соединения для controluser в конфигурации.

Понравилась статья? Поделить с друзьями:
  • Ошибка при указании соединения для controluser в конфигурации denwer
  • Ошибка при указании кпп в декларации
  • Ошибка при узи мальчика с девочкой
  • Ошибка при узи в перинатальном центре
  • Ошибка при ударе в бильярде 4 буквы сканворд