我有2个服务器(共享主机)的以下场景:
Linux服务器#1 - MySQL 5.5 - 8000数据库
Linux Server#2 - MySQL 5.6 - 7000数据库
通过放置phpMyAdmin 4.xx,两台服务器上的第一次访问速度非常慢(渲染页面的时间超过16秒)。启用调试,无法识别它执行information_schema的查询,如下所示:
[1f94c8d385c8b4d595d10b6542624c40] => Array (
[count] => 1
[query] => SELECT `SCHEMA_NAME` FROM `INFORMATION_SCHEMA`.`SCHEMATA`, (select DB_first_level from ( SELECT distinct SUBSTRING_INDEX(SCHEMA_NAME, '_', 1) DB_first_level FROM INFORMATION_SCHEMA.SCHEMATA WHERE TRUE AND `SCHEMA_NAME` NOT REGEXP 'information_schema' ) t ORDER BY DB_first_level ASC LIMIT 0, 250) t2 where 1 = locate(concat(DB_first_level, '_'), concat(SCHEMA_NAME, '_')) order by SCHEMA_NAME ASC
[time] => 3.34156107903
[trace] => Array (
[0] => Array(
[0] => ./libraries/DatabaseInterface.class.php#205: PMA_DatabaseInterface->_dbgQuery()
[1] => ./libraries/DatabaseInterface.class.php#1705: PMA_DatabaseInterface->tryQuery()
[2] => ./libraries/navigation/Nodes/Node.class.php#383: PMA_DatabaseInterface->fetchResult()
[3] => ./libraries/navigation/NavigationTree.class.php#211: Node->getData()
[4] => ./libraries/navigation/NavigationTree.class.php#674: PMA_NavigationTree->_buildPath()
[5] => ./libraries/navigation/Navigation.class.php#52: PMA_NavigationTree->renderState()
[6] => ./libraries/Header.class.php#377: PMA_Navigation->getDisplay()
[7] => ./libraries/Response.class.php#262: PMA_Header->getDisplay()
[8] => ./libraries/Response.class.php#275: PMA_Response->_getDisplay()
[9] => ./libraries/Response.class.php#373: PMA_Response->_htmlResponse()
[10] => ./libraries/OutputBuffering.class.php#114: PMA_Response::response()
[11] => PMA_OutputBuffering::stop()
)
)
)
[5f54e097676bb853308c7efc720c99f8] => Array (
[count] => 2
[query] => select COUNT(*) from ( SELECT distinct SUBSTRING_INDEX(SCHEMA_NAME, '_', 1) DB_first_level FROM INFORMATION_SCHEMA.SCHEMATA WHERE TRUE AND `SCHEMA_NAME` NOT REGEXP 'information_schema' ) t
[time] => 1.7902340889
[trace] => Array (
[0] => Array (
[0] => ./libraries/DatabaseInterface.class.php#205: PMA_DatabaseInterface->_dbgQuery()
[1] => ./libraries/DatabaseInterface.class.php#1563: PMA_DatabaseInterface->tryQuery()
[2] => ./libraries/navigation/Nodes/Node.class.php#406: PMA_DatabaseInterface->fetchValue()
[3] => ./libraries/navigation/NavigationTree.class.php#1072: Node->getPresence()
[4] => ./libraries/navigation/NavigationTree.class.php#677: PMA_NavigationTree->_fastFilterHtml()
[5] => ./libraries/navigation/Navigation.class.php#52: PMA_NavigationTree->renderState()
[6] => ./libraries/Header.class.php#377: PMA_Navigation->getDisplay()
[7] => ./libraries/Response.class.php#262: PMA_Header->getDisplay()
[8] => ./libraries/Response.class.php#275: PMA_Response->_getDisplay()
[9] => ./libraries/Response.class.php#373: PMA_Response->_htmlResponse()
[10] => ./libraries/OutputBuffering.class.php#114: PMA_Response::response()
[11] => PMA_OutputBuffering::stop()
)
[1] => Array (
[0] => ./libraries/DatabaseInterface.class.php#205: PMA_DatabaseInterface->_dbgQuery()
[1] => ./libraries/DatabaseInterface.class.php#1563: PMA_DatabaseInterface->tryQuery()
[2] => ./libraries/navigation/Nodes/Node.class.php#406: PMA_DatabaseInterface->fetchValue()
[3] => ./libraries/navigation/NavigationTree.class.php#1148: Node->getPresence()
[4] => ./libraries/navigation/NavigationTree.class.php#678: PMA_NavigationTree->_getPageSelector()
[5] => ./libraries/navigation/Navigation.class.php#52: PMA_NavigationTree->renderState()
[6] => ./libraries/Header.class.php#377: PMA_Navigation->getDisplay()
[7] => ./libraries/Response.class.php#262: PMA_Header->getDisplay()
[8] => ./libraries/Response.class.php#275: PMA_Response->_getDisplay()
[9] => ./libraries/Response.class.php#373: PMA_Response->_htmlResponse()
[10] => ./libraries/OutputBuffering.class.php#114: PMA_Response::response()
[11] => PMA_OutputBuffering::stop()
)
)
)
有人有任何建议吗?
编辑:我忘了说,innodb_stats_on_metadata已经关闭。答案 0 :(得分:0)
尝试将innodb_stats_on_metadata
设为0