phpMyAdmin和大表
尝试使用大表访问数据库(此数据库中至少有15个表不少于100万,最大值为-2000万)。一旦我选择database-phpMyAdmin加载至少5分钟(甚至更多)phpMyAdmin和大表,phpmyadmin,Phpmyadmin,尝试使用大表访问数据库(此数据库中至少有15个表不少于100万,最大值为-2000万)。一旦我选择database-phpMyAdmin加载至少5分钟(甚至更多) 如何加快表格页面的加载速度?phpMyAdmin是基于浏览器的网页工具。您为什么不试试其他一些工具来处理数据库,比如。也许我们可以和其他感兴趣的人一起查找这个问题 我在intormation\u模式中标记了访问速度较慢的表: SELECT `TABLE_CATALOG` ,`TABLE_SCHEMA` ,`TABLE_NAME`
如何加快表格页面的加载速度?phpMyAdmin是基于浏览器的网页工具。您为什么不试试其他一些工具来处理数据库,比如。也许我们可以和其他感兴趣的人一起查找这个问题 我在
intormation\u模式中标记了访问速度较慢的表
:
SELECT
`TABLE_CATALOG`
,`TABLE_SCHEMA`
,`TABLE_NAME`
,`TABLE_TYPE`
,`ENGINE`
,`VERSION`
,`ROW_FORMAT` ------SLOW
,`TABLE_ROWS` ------SLOW
,`AVG_ROW_LENGTH` ------SLOW
,`DATA_LENGTH` ------SLOW
,`MAX_DATA_LENGTH` ------SLOW
,`INDEX_LENGTH` ------SLOW
,`DATA_FREE` ------SLOW
,`AUTO_INCREMENT` ------SLOW
,`CREATE_TIME` ------SLOW
,`UPDATE_TIME` ------SLOW
,`CHECK_TIME` ------SLOW
,`TABLE_COLLATION`
,`CHECKSUM` ------SLOW
,`CREATE_OPTIONS`
,`TABLE_COMMENT`
FROM `tables` WHERE 1
另外,导航框架是/navigation.php
,它调用
/libraries/common.lib.php=>PMA\u getTableList()
,然后调用
/libraries/database\u interface.lib.php=>PMA\u DBI\u get\u tables\u full()
其中包含一个慢速查询
我替换了以下内容中的慢速选择列:
SELECT *,
`TABLE_SCHEMA` AS `Db`,
`TABLE_NAME` AS `Name`,
`TABLE_TYPE` ÀS `TABLE_TYPE`,
`ENGINE` AS `Engine`,
`ENGINE` AS `Type`,
`VERSION` AS `Version`,
`ROW_FORMAT` AS `Row_format`,
`TABLE_ROWS` AS `Rows`,
`AVG_ROW_LENGTH` AS `Avg_row_length`,
`DATA_LENGTH` AS `Data_length`,
`MAX_DATA_LENGTH` AS `Max_data_length`,
`INDEX_LENGTH` AS `Index_length`,
`DATA_FREE` AS `Data_free`,
`AUTO_INCREMENT` AS `Auto_increment`,
`CREATE_TIME` AS `Create_time`,
`UPDATE_TIME` AS `Update_time`,
`CHECK_TIME` AS `Check_time`,
`TABLE_COLLATION` AS `Collation`,
`CHECKSUM` AS `Checksum`,
`CREATE_OPTIONS` AS `Create_options`,
`TABLE_COMMENT` AS `Comment`
为此:
SELECT
`TABLE_SCHEMA` AS `Db`,
`TABLE_NAME` AS `Name`,
`TABLE_TYPE` AS `TABLE_TYPE`,
`ENGINE` AS `Engine`,
`ENGINE` AS `Type`,
`VERSION` AS `Version`,
'Compact' AS `Row_format`,
0 AS `Rows`,
0 AS `Avg_row_length`,
0 AS `Data_length`,
0 AS `Max_data_length`,
0 AS `Index_length`,
0 AS `Data_free`,
0 AS `Auto_increment`,
'2000-01-01 00:00:00' AS `Create_time`,
NULL AS `Update_time`,
NULL AS `Check_time`,
`TABLE_COLLATION` AS `Collation`,
NULL AS `Checksum`,
`CREATE_OPTIONS` AS `Create_options`,
`TABLE_COMMENT` AS `Comment`
这使得查询运行得很快。(例如,我通常不需要行计数,我也可以手动获取。或者安装2个PhpMyAdmin。)
注意:从现在起,被覆盖的值应该作为虚拟值出现在管理页面上-但是我可以接受它,而不是缓慢的速度
但肯定还有其他缓慢的查询,因为它仍然加载缓慢
所以,我只是想分享一下,有人可能会继续。现在,我没有时间了。将这些行粘贴到phpMyAdmin安装中config.inc.php文件的底部:
//http://future500.nl/phpmyadmin-slow-on-startup/:
$cfg['MaxExactCountViews'] = 0;//disable trying to count the number of rows in any view
$cfg['MaxExactCount'] = 0;//disable correcting the InnoDB estimates
感谢您访问future500.nl
我希望在我意外删除所有数据之前,早几个小时找到此修复程序:-(你在整理表格吗?你有任何标记或主键吗?你在使用什么存储引擎?我猜是一大堆慢计数语句。全部使用InnoDB。我只是打开数据库主页。第一步-登录。第二步-选择数据库…第三步等待分钟…我有这样的限制。我的ISP拒绝3306流量。所以唯一的方法是-是基于web的。phpMyAdmin在这种重负载情况下会表现得很慢,因为当您使用其GUI查看结构或浏览数据或表列表时,会根据需要在mysql控制台上进行查询。其他方法是直接使用控制台。或者,如果可以使用phpMyAdmin,您可以尝试将SQLYG连接到使用mysql控制台的端口n它也可以由sqlyog或任何其他工具完成。我正在使用,但我的ISP没有机会使用它-因为这样的产品直接通过3306端口连接到数据库。所以我想知道phpmyadmin是否有一些选项可以加速加载大表信息。如果您使用的是phpmyadmin的旧版本,您可以将其更新为最新版本,或者您可以选择设置一个基本的经典主题,这样phpMyAdmin就不会浪费时间为显示创建有吸引力的外观。我认为主要的一点是扫描表格(大小、行等)。如果我可以禁用此选项……如果您使用phpMyAdmin监视多个服务器,请注意这是一个全局变量。我尝试了$cfg['servers'][$I]['MaxExactCountViews']=0;无法使其工作。直到后来我才发现无法为每台服务器设置此值。希望这对其他人有所帮助。