[Phpmyadmin-devel] Minimum MySQL version

Marc Delisle marc at infomarc.info
Thu Oct 24 23:01:25 CEST 2013

Le 2013-10-24 15:59, Rouslan Placella a écrit :
> On 10/24/2013 08:28 PM, Marc Delisle wrote:
>> Marc Delisle a écrit :
>>> Michal Čihař a écrit :
>>>> Hi
>>>> Dne Thu, 24 Oct 2013 08:15:48 -0400
>>>> Marc Delisle <marc at infomarc.info> napsal(a):
>>>>> For the upcoming phpMyAdmin 4.1, we currently advertise the minimum 
>>>>> MySQL version to 5 (meaning 5.0). However, MySQL 5.0 has reached "End of 
>>>>> Product Lifecycle".
>>>>> Moreover, we have a performance problem in phpMyAdmin 4.0 and 4.1, due 
>>>>> to the navi panel mostly using INFORMATION_SCHEMA, which is poorly 
>>>>> implemented in older MySQL versions. This performance problem is seen on 
>>>>> servers with many (thousands?) of databases, which is not uncommon for 
>>>>> host providers. We have bug tickets about this.
>>>>> By the way, using INFORMATION_SCHEMA helps us for some features like the 
>>>>> db filter (now with REGEX). I'm not sure how we could implement this 
>>>>> efficiently with SHOW DATABASES.
>>>>> I would like to increase the minimum MySQL version for phpMyAdmin 4.1. I 
>>>>> got feedback from someone I trust, who is running MySQL 5.6 with 
>>>>> thousands of real-world databases and did some tests; on this version, 
>>>>> INFORMATION_SCHEMA performs ok.
>>>> When trying to google this, I've found following hint on improving IS
>>>> performance, have we tried to use that?
>>>> http://www.mysqlperformanceblog.com/2011/12/23/solving-information_schema-slowness/
>>> I was not aware of that setting; but from the comments on this page:
>>> "the innodb_stats_on_metadata variable is available since MySQL 5.1.17, 
>>> and it’s a dynamic variable only since InnoDB Plugin 1.0.2."
>>>>> If the team agrees, I would do some testing to find out at which point 
>>>>> INFORMATION_SCHEMA's fetch problems were fixed. Then we would advertise 
>>>>> this MySQL version as the minimum, and use only INFORMATION_SCHEMA in it 
>>>>> (no more SHOW DATABASES).
>>>> Makes sense (and we could then also drop DisableIS configuration...).
>>> This, and ShowDatabasesCommand.
>> I have a test server on Linux, with MySQL 5.1.71, 1000 databases with 
>> 100 tables in each db (all InnoDB). PHP 5.5.3 + mysqli + mysqlnd.
> How many records per table have you got? I guess that the amount of data
> may have an influence here.

These tables are empty but tomorrow I'll write sample data into them.
Also, I should add more columns into them.

>> With phpMyAdmin 4.0.8, I don't have a performance problem. Both my root 
>> user, which happily paginates between all the dbs, and a normal user 
>> with access to only one db, work well.
>> I'm using the default DisableIS setting of true. I also tried 
>> ShowDatabasesCommand set to false + some names in only_db, and all was fine.
>> I have asked in the bug tickets for more details, to be able to 
>> reproduce the performance problems.
>> I am not testing with MySQL 5.0.x, because for phpMyAdmin 4.1 we should 
>> mention that the minimum version is (at least) MySQL 5.1.

Marc Delisle

More information about the Developers mailing list