Problems with database links on phpmyadmin interfa

2019-08-11 09:01发布

问题:

I'm having a bunch of problems with my phpmyadmin. I have been using this tool for years and never had any problems until last week, but since, I can't manage to make it work properly. I didn't do any changes to the system, apache, php, mysql and phpmyadmin where not touched/changed before the problems started.

Actual Symptoms:

  • Words on the links on the database list don't work. If I click the name of the database, the "loading..." text in yellow background appears on the middle of the screen, but nothing happens, and it never dissappear.
  • If I click the "+" sign on the database list, The database expands and I can see the tables, the new table, and the indexes options. But only if I haven't clicked the name of the database first.
  • From the top menu, the "databases" link some times work and some times doesn't.
  • If I copy the link from a database on the list at the left of the screen and pate it on the address bar of the browser, it tries to take to a different address, for instance, this link "http://phpmyadmin.local/db_structure.php?server=1&db=cosa&token=20b203d3e8b93424798c61ddb6af844e" will take me to "http://www.phpmyadmin.local/db_structure.php?server=1&db=cosa&token=20b203d3e8b93424798c61ddb6af844e"
  • If I click on the "+" sign of the databases list I get the tables from that database, if I click the "Columns" link, the list of columns appear, as expected, on the main area of the windows, but if I select one or more tables and then click the "drop" link/action, phpmyadmin dissapears. The URL is "http://phpmyadmin.local/tbl_structure.php" and the message is "The connection was reset". (I'm using firefox right now). Cookies are not disabled.

I can access and operate the database with mysql-workbench or from the command line without problems.

Other symptoms not present at the moment. fixed?

  • It was also giving me some troubles to connect and stay logged. I always use http auth_type, but I also tried cookie and config. But after the last clean up and reinstall, everything related to login in and the token seems to have been fixed.
  • error: Token mismatch

phpmyadmin versions tested:

  • 4.1.6
  • 4.0.7
  • 3.5.8.2

Browsers tested:

  • firefox 26 (normal and private tabs)
  • seamonkey 2.22.1 (normal and private tabs)
  • opera 12.16 (normal and private tabs)

Of course I have cleared cache and cookies.

System:

  • apache 2.2.25
  • php 5.5.7
  • mariadb 5.5.32
  • mysql 5.1.70 and 5.5.32
  • mysql-workbench 5.2.47
  • xdebug 2.2.3
  • system: Linux patito 3.10.7-gentoo #7 SMP Sun Sep 29 10:24:32 MYT 2013 x86_64 Intel(R) Core(TM) i5-3330 CPU @ 3.00GHz GenuineIntel GNU/Linux

Update

I found that a change on xdebug settings was the culprit, I'm posting an answer to my question with that finding, also will try to post on the xdebug tracking system with a link to this question for reference. Hope it helps to debug the situation.

回答1:

It seems that the problem is this xdebug setting:

xdebug.collect_return="1"

If I change that to:

xdebug.collect_return="0"

everything works fine again.

It may have to do with this bug already reported on the xdebug tracking system, but I don't have the time and knowledge to test it.



回答2:

This bug has been fixed in Xdebug 2.2.6 if anyone stumbles upon it. I have also noted this in xdebug bug tracker link that you have added.

I had to compile xdebug from source, as my Ubuntu did not provide the newest version.