phpMyAdmin和大表

phpMyAdmin和大表,phpmyadmin,Phpmyadmin,尝试使用大表访问数据库(此数据库中至少有15个表不少于100万,最大值为-2000万)。一旦我选择database-phpMyAdmin加载至少5分钟(甚至更多) 如何加快表格页面的加载速度?phpMyAdmin是基于浏览器的网页工具。您为什么不试试其他一些工具来处理数据库,比如。也许我们可以和其他感兴趣的人一起查找这个问题 我在intormation\u模式中标记了访问速度较慢的表: SELECT `TABLE_CATALOG` ,`TABLE_SCHEMA` ,`TABLE_NAME`

尝试使用大表访问数据库(此数据库中至少有15个表不少于100万,最大值为-2000万)。一旦我选择database-phpMyAdmin加载至少5分钟(甚至更多)


如何加快表格页面的加载速度?

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;无法使其工作。直到后来我才发现无法为每台服务器设置此值。希望这对其他人有所帮助。