The MySQL service on my CentOS 6.3 server works well. I'm using phpMyAdmin- from default repository. I have sites that can connect to the databases and are using them successfully.

I can also connect to the database server using the mysql -u... -p.... -h.... command.

The database is NOT on the localhost but another server.

Tried both hostname and IP in $cfg['Servers'][$i]['host'] = '';

I also have a lot of free space available.

The user is not root, $cfg['Servers'][$i]['connect_type'] = 'tcp';

Edited: I hit the same issue on another server, but the message is a bit different:

#2002 - Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

But I have

$cfg['Servers'][$i]['host'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';

Next, I add a bit of garbage to the top of config.inc.php: I expect to see syntax error but nothing happened, thus I think phpMyAdmin just does not see/use this file.

ls -l config.inc.php
-rw-r--r-- 1 apache apache 3981 Sep  3 07:59 config.inc.php

I have no ideas. What am I doing wrong?

  • 1. are you trying to log in with root? 2. did you change configuration of pma? 3. do you use mysql from default repo? 4. netstat -anp|grep mysq|grep LIST 5. rpm -V phpMyAdmin mysql-server – GioMac Aug 29 '13 at 18:57
  • Check your config for what it's using to connect. Make sure it's tcp and not socket. – Nathan C Aug 29 '13 at 18:57
  • Have just edited the question, User is not root, $cfg['Servers'][$i]['connect_type'] = 'tcp'; – Putnik Aug 29 '13 at 19:29
  • @GioMac 2. the only configuration change is host afaik but I can post config if needed 3. unknown, it is installes by hosting provider and I have user assess only (to MySQL, but root locally) 4.mysql is NOT on the local box 5. S.5....T. c /etc/httpd/conf.d/phpMyAdmin.conf S.5....T. c /etc/phpMyAdmin/config.inc.php phpMyAdmin.conf was changed because I use not the default /phpMyAdmin location – Putnik Aug 29 '13 at 19:35
  • getenforce :) I think httpd is not allowed to db connect by selinux – GioMac Aug 29 '13 at 19:37

I found it eventually! Perhaps this will work for PMA from rpms only.

Despite PMA itself is in /usr/share/phpMyAdmin it expects to have config dir at /var/lib/phpMyAdmin/ and config in /etc

Solution: just edit ./libraries/vendor_config.php and set the correct paths or

ln -s /usr/share/phpMyAdmin/config.inc.php /var/lib/phpMyAdmin/config/

Edit 3 months later: On another server it checks /etc/phpMyAdmin/config.inc.php instead of /usr/share/phpMyAdmin/config.inc.php - so added this hard link and it works well now.

|improve this answer|||||
  • where did you hardcoded /usr/share/phpMyAdmin/config.inc.php ? i can't find a solution to this problema – Lachezar Raychev Oct 13 '14 at 11:23
  • @LachezarRaychev try to find vendor_config.php – Putnik Oct 14 '14 at 18:37

On an Amazon Linux server (i.e. Amazon's RHEL-like distribution) it looks for the config file in /etc/phpMyAdmin as the poster above described.

|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.