TKMW: phpmyadmin configuration broken (pmadb missing)? (SOLVED)

Christian Peper's picture

Hi, I've been working with the TKMW and loving it. It's truely easy to get going and setup. In minutes your making pages, adding users and so on. However, for my specific needs, I need to be able to create and manage multiple wikis. Luckily, this used to complex but is now covered by the extension Farmer.

This requires some adaptations to MySQL and that's where the VM breaks. It wouldn't allow me to do stuff through phpmyadmin as root user. :( I am root, why not? I couldn't create a new db, for instance. Turns out a 'chown mysql /var/lib/mysql' solved that. Otherwise, the web process has no rights to access mysql.

Now I'd like to rename tables using phpmyadmin to have a prefix (as req by the Farmer extension), however that option is not available. After investigation, it turned out that the pmadb - used for enhanced operations and commands - is missing. But just creating it also doesn't help.

Is there a way you can provide some assistence for re-enabling extended features for MySQL by letting me create a proper PMA database? There should be scripts in /var/lib/phpmyadmin but they are not there.

Sincerely, Chris.


the pmadb issue has been solved. Debian has the scripts in a different location, as listed in the docs on pmadb. Using the create_tables script works fine from phpmymadmin, once I changed the access rights on /var/lib/mysql. So that does indeed seem like a bug. However, the PMA enhanced features still don't allow me to easily rename all tables of a database from phpmyadmin. Instead, I used a PHP script.

Also, the rename script that renamed all wiki_db tables to have a prefix "mw_" failed because access rights on /var/lib/mysql/wiki_db were also root:root instead of root:mysql with group write rights. Another bug?

Liraz Siri's picture

Will have to look into what you say regarding ownership of /var/lib/mysql. Might be a bug.

Regarding phpMyAdmin, TurnKey Linux appliances install the standard Debian phpMyAdmin package. Not sure why it doesn't include the extended features you're looking for.

You might want to try installing phpMyAdmin from source instead of using the Debian package. You're the first to complain about phpMyAdmin but maybe we screwed up the installation of phpMyAdmin somehow. Worth looking into.

Christian Peper's picture

Yes, I figured you were using the stnd install. Was hoping something was broken vs. my stupidity or ignorance. ;) So I reported it.
I did a search for any .sql files in the appliance and it comes up dry, except for MySQL scripts and mediawiki maintenance files under /usr/share. So none of the phpmyadmin scripts that the pmadb link above mentions seems to be there.
Here is what I did. maybe you can run it inside one of your (test) VMs and verify that they're not there either.
find / -name "*.sql"|less

Liraz Siri's picture

I can't do this myself right because I'm a bit busy working, but try downloading the LAMP appliance and then removing and reinstalling the phpmyadmin package. See if those SQL scripts are anywhere to be found in the package:
dpkg -L phpmyadmin
Christian Peper's picture

Thanks! That showed that the .sql are installed. However, they gzipped and present in /usr/share/doc/phpmyadmin/examples. Actually, the pmadb link above even mentions that Debian installs them there. :blush:

I'll check the pmadb link again and see if I can follow their guidelines using the scripts and that the table is even present in the default install.

Alon Swartz's picture

phpmyadmin advanced features (pmadb linked tables) will be configured by default in all appliances released from now onwards where phpmyadmin is installed. Refer to the bug report for more details.
Dominique Veillard's picture

Instanciated Turnkey LAMP (v 11.3 x86) two days ago,   ran the security update, etc..., So far so good. Nice to see a LAMP setup ready to roll and easy to instanciate at EC2.  Never tried this before, and happy to find such a streamlined method.  The only trouble is that phpmyadmin Designer cannot create table links (it indicates "loading, 99% complete", and gets stuck), while all my tables are InnoDB.  The MySQL root accound does not show any pmadb in existence, and I cannot find a *sql script to build pmadb anywhere.

Is there a procedure to create a suitable control user and enjoy the benefits of the fix just announced by Alon?   I am willing to re-start everything from scratch if I there is some way to get a 64-bit AMI version of TURNKEY LAMP.   Perhaps that would provide the latest TURNKEY LAMP rollout and therefore eliminate the trouble entirely, right out of the box?

Dominique Veillard's picture

Just barking the wrong tree...   There is no pmadb anymore.   it's now called phpmyadmin!

Jeremy Davis's picture

As for 64 bit, unfortunately there are currently no 64 bit TKL appliances available. The devs have been talking about it for some time but I don't see it happening anytime soon unfortunately. The new Debian based (32 bit) appliances should be out sometime soon, and hopefully 64 bits will be the next step after that...

Dominique Veillard's picture

Thanks, Jeremy.  After abandoning the search for a pmadb, I attempted to to setup a phpmyadmin control user, but I must still have gotten off the track somewhere:  When trying to create a table link in designer, I no longer get the old error message (loading... 99% done), but I get a new one, saying that the "link was not created",  Perhaps this is a step forward, but I'm still stuck, wondering where to take it from there.

Is there some way to backtrack all the config changes in phpmyadmin and start again from scratch?   (short of creating a new instance of the TK LAMP).  If you know of a document somewhere that spells out the config process for the version of phpmyadmin used in the version 11.3 of Turnkey LAMP, please give me a pointer. 

Jeremy Davis's picture

Would that help?

AFAIK the TKL installation of phpMyAdmin is basically stock standard Ubuntu 10.04 install, just with the virtual host modified (so that it is available from port 12322 rather than phpmyadmin/). Perhaps just reinstalling may be the answer?

TBH I don't really know that much about MySQL (I can use it a bit, but only for fairly basic operations). I have no formal education around computers at all, all my knowledge has come from trial & error and usage of TKL over the last ~4yrs, as well as google... 

I have never even heard of a 'control user' until now, but a quick google turned up this from the phpMyAdmin Wiki. I assume that is what you are talking about?

Dominique Veillard's picture

Thanks Jeremy.

I am also a learn-by-mistakes linux user, and a fan of open source software.  As far as I can tell, the control user is needed for some admin tasks such as enabling various phpmyadmin extensions and configuring them properly.  The extension I need is "designer", a graphic GUI to facilitate the creation of logical links between MySQL tables.  Very useful when some index in a table is intended to point to some entry in another table that contains more detaild information. 

I have been able to get this to work partially, so there must be something I missed in the setup, including the control user.   It seems like the pointer youi sent me will be useful.   Thanks.  Dom.  

Post new comment