28

I have just been wrangling with phpMyAdmin and MySQL server on my Win8 PC IIS localhost (there was no connection between these, which I think was due to MySQL service not starting so I reinstalled MySQL and reran the config setup and reestablished a connection between them, which fixed that).

However phpMyAdmin advised an update which I did by overwriting the files with the new version and including the previous config file.

I now have:
The phpMyAdmin configuration storage is not completely configured, some extended features have been deactivated. To find out why click here.
and on clicking I get
PMA Database ... not OK [ Documentation ]
General relation features Disabled
When I click the link I get a http 404 page which gives this:

Physical path C:\inetpub\wwwroot\phpMyAdmin\pmadb

So what is the pmadb in phpMyAdmin and should I be bothered by this? As it stands I'm a bit fed up at having to have had to spend time tweaking all of this (ie it has not been a smooth trouble free event/install). Is it some DB for the old version or what? I do not think I created it!

I do not feel very bothered by this as hopefully I can setup my databases for my localhost IIS websites and press on with my webdeverry(!) but I don't really like having this unknown error and wouldn't mind fixing it/getting rid of it.

Pacerier
  • 86,231
  • 106
  • 366
  • 634
rpd
  • 1,135
  • 4
  • 15
  • 24
  • 4
    You don't strictly need the `pmadb`. It saves some defaults, links & queries for you, but that's about it. You chould have a `./scripts/create_tables.sql` somewhere that as far as I know should create the database & its contents, try to tun that. [for more info & possible other solutions see the documentation](http://wiki.phpmyadmin.net/pma/Configuration_storage). – Wrikken Jan 09 '14 at 23:10
  • Thanks Wrikken..I will check out the link you gave to the phpMyAdmin Wiki site. I have briefly seen it gives some more info on upgrading to the latest version, though step 8 is one step too far! (8.If successful, announce "I'm a genius!" to everyone within earshot.) Cheers :-) – rpd Jan 09 '14 at 23:18
  • Don't forget to LOG OUT out of phpMyAdmin and log in again to make it really reload the config. I wasted quite some time and all that was needed was to log in again. If in doubt, delete corresponding cookies as well. – Zrin Sep 22 '15 at 07:51

10 Answers10

28

There are a few google links on this same issue that I have followed that have helped me fix this (I should have spent more time googling before posting!). So to solve the problem I needed to create a phpmyadmin database and import create_tables.sql and assign a new user with full privileges and then uncomment the config.inc.php file at:

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

and uncomment lines below

/* Storage database and tables */ $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';

I also needed to add some lines from the new version config.sample.inc There was a good link describing this I wanted to save but I had to clear my browser cache to reload localhost/phpMyAdmin and in doing so I lost my history & that link!

I know this explanation is not exactly described but I hope it may help anyone else who gets a similar issue after updating phpMyAdmin. I'm still not sure what all these features do but it is all fixed now, thanks!

Pacerier
  • 86,231
  • 106
  • 366
  • 634
rpd
  • 1,135
  • 4
  • 15
  • 24
18

As I'm not very good in English I used google translator, so any error I'm sorry ;)

Hello, I had this same problem and the solution:

After setting all phpmmyadmin, you need to run the file "create_tables" in the phpmyadmin sql console itself, found at: phpmyadmin\sql\create_tables.sql

After creating it you need to configure the file "config.inc", found on the phpmyadmin folder. In it you include the following information equal to file "config.sample.inc" which is an example.

/* User used to manipulate with storage */
$cfg['Servers'][$i]['controlhost'] = 'localhost';
$cfg['Servers'][$i]['controluser'] = 'user';
$cfg['Servers'][$i]['controlpass'] = 'password';

/* 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]['users'] = 'pma__users';
$cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
$cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
$cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';

Edit : ( suggested by @Greeso )

For new versions, you should also add :

$cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
$cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
$cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
$cfg['Servers'][$i]['favorite'] = 'pma__favorite';

Done, exit and reenter the session.

Community
  • 1
  • 1
4

Quick fixing script that does the job in one command:

curl -O -k https://raw.githubusercontent.com/skurudo/phpmyadmin-fixer/master/pma.sh && chmod +x pma.sh && ./pma.sh

Read through the actual code in this repo link

Iceman
  • 6,035
  • 2
  • 23
  • 34
1

I have found that there is another cause for this issue. If when you create the pmauser for phpmyadmin to use, if you forget to assign that user rights to the schema that permit modifying the phpmyadmin database, you'll get the same messages. The good news is that if you've logged in with root or similar privileges, you can just allow the pmauser to have select, insert, delete on the phpmyadmin schema and the problem should be fixed.

Tom
  • 776
  • 1
  • 5
  • 12
1

This will reinstall phpmyadmin:

sudo dpkg-reconfigure phpmyadmin

Original post

ShomaEA
  • 61
  • 1
  • 4
1

A bunch of years later, to anyone looking for how to just remove this annoying message and not enable the functionality, just add this line to your config:

$cfg['PmaNoRelation_DisableWarning'] = true;
php_nub_qq
  • 15,199
  • 21
  • 74
  • 144
1

I ran through the same problem and was getting the exact same error

The error I was getting in phpMyAdmin

I followed the accepted solution but again ran into the same issue as before in another system, the Create database option (below the error) was also not working as it showed the notice "Your Account does not have the privileges".

So I came up with this idea which worked well.

I checked the User Accounts section of PhpMyAdmin which showed these accounts

User Accounts in PhpMyAdmin

The config.inc.php showed pma as the stated account

// Original Line
$cfg['Servers'][$i]['controluser'] = 'pma';

So obviously I tried granting privileges to the pma account (one among the five users in User Accounts) but I wasn't actually able to make it a privileges account. Hence I just changed the account mentioned in the config.inc.php to any of the privileged account names.

// Changed Line
$cfg['Servers'][$i]['controluser'] = 'root';

You can use any new account name, I used the root account as it is my local storage. I don't think this will create any issue as it will mostly perform operations with the phpmyadmin database.

P.s In my case, phpmyadmin database was already created and hence the error was getting generated. If the database is not there, you can create it using this file:

phpmyadmin\sql\create_tables.sql

EDIT

You can empty the session data by clicking on this icon below phpMyAdmin Logo on the top left corner.

Empty session data icon phpmyadmin

After this you will be able to see the list of tables which are not OK If you are seeing any table as not OK, just drop the phpmyadmin database and import the file stored at C:\xampp\phpMyAdmin\sql (windows default xampp installation path), this should resolve the issue.

0

For me the db phpmyadmin was missing, you can find the file create_tables.sql inside the phpmyadmin installation in the sql/ directory. You can use this file to rebuild your table.

From the command line, you can import that sql file. # mysql -u root < create_tables.sql

Be careful this will probably overrwrite your data, dont run it until you move your old phpmyadmin table, if you have one intact already.

blamb
  • 4,220
  • 4
  • 32
  • 50
0

May be your problem is due to an unexpected crash or stop running phpMyAdmin (for example if Windows automatically restarts when you have xampp running) in this cases log files have wrong timestamps.

Could you try to remove (or may be you prefer rename) log files in the data directory of the mysql directory of xampp directory of your instalation.

These files are typically

aria_log.000001 aria_log_control

Steps could be

  • Stop mariadb
  • rename the files
  • Start mariadb
  • Start admin.

Good luck!

0

on the following file

"...xampp\phpMyAdmin\config.inc.php"

Just make both the parameters having the same user.

$cfg['Servers'][$i]['user'] = 'root';

$cfg['Servers'][$i]['controluser'] ='root';