mysql - PHPMyAdmin 问题 : Is it advisable to assign a very large value to `$cfg[' MaxExactCount']`?

标签 mysql phpmyadmin

我有一个 MySQL 表,其中正好有 100 万行虚拟数据用于测试目的。但是,当我单击表格的“浏览”选项时,这就是我得到的:

enter image description here

注意它是怎么说只有 994,622 条记录的,而我知道还有更多。

有趣的是,如果我执行搜索,我仍然可以检索到那些不可见的记录。例如,PHONE 字段填充了从 00000000 到 01000000 递增的数字;因此,包含值 00999999 的行应该存在。它确实:

enter image description here

但是,根据“浏览”屏幕, View 中的最后一行的值为“00994625”。这是显示最后一条记录的屏幕截图;请注意没有任何“下一个”箭头/链接:

enter image description here

我还没有尝试导出,所以不确定是否所有记录都会导出。我设法通过将 $cfg['MaxExactCount'] 添加到我的 config.inc.php 文件来解决这个问题。但是,我担心这是否可取。我预计我的表一旦上线就会无限增长,最终可能会增加数百万行。如果我只是为 $cfg['MaxExactCount'] 分配一个非常大的值(比如 10000000000)会好吗?有哪些陷阱以及如何避免它们?此外,共享托管服务提供商通常是否允许访问者更改此特定文件?

最佳答案

是的,您已经正确地诊断出了问题,至少看起来是这样。正如您可能在 documentation 中看到的那样, MaxExactCount 指令基本上用于配置 phpMyAdmin 在什么时候使用更快但不精确的行计数。

更改它是否是个好主意完全取决于您。问题将基于性能并取决于您的情况(表结构、服务器规范和负载等),但值得尝试看看会发生什么。

如果您能够修改config.inc.php,那就去做吧;一些主机通过将 phpMyAdmin 文件夹的副本放在您的 Web 根目录中来提供 phpMyAdmin(在这种情况下,您将能够直接修改 config.inc.php),其他主机使用一个位于中心的副本并配置 Web 服务器以使其显示在您的域下(在这种情况下,您可能甚至无法找到 phpMyAdmin 文件夹,更不用说修改它了)。如果他们不给你访问权限,你可以很容易地 install your own将 phpMyAdmin 实例添加到您自己的 Web 根目录,为该文件夹提供与您的提供商使用的名称不同的名称,以免发生冲突,并进行您想要的任何修改。

关于mysql - PHPMyAdmin 问题 : Is it advisable to assign a very large value to `$cfg[' MaxExactCount']`?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30694910/

相关文章:

mysql - apache mysql 忘记密码

mysql - 如果第二个表中的条件为真,则从第一个表中选择 1 条记录(所有引用行均处于事件状态 = 0)

mysql - 由于编码原因,从 CSV 导入 mysql 时省略了行

php - 在MySQL数据库中保存图片路径,然后拉取该数据显示图片?

php - 投票脚本(注册和未注册用户)的最佳做法是什么?

mysql - 将所有数据库 - 表,存储过程复制到一个文件中并保存在闪存盘上

php - 在一个查询中删除而不是使用循环和 ifs

mysql - MySQL 可以存储多少行?

php - 为什么查询不像 phpmyadmin 中那样返回显示名称?

phpmyadmin 未打开并显示 "The page isn' t 工作 HTTP 错误 500”