PHPMyAdmin 问题:是否建议为 `$cfg['MaxExactCount']` 分配一个非常大的值?
PHPMyAdmin issue: Is it advisable to assign a very large value to `$cfg['MaxExactCount']`?
我有一个 MySQL table 正好有 100 万行虚拟数据用于测试目的。但是,当我单击 table 的 "browse" 选项时,这就是我得到的:
注意它怎么说只有 994,622 条记录,而我知道还有更多。
有趣的是,如果我执行搜索,我仍然可以检索到那些不可见的记录。例如,PHONE
字段填充了从 00000000 到 01000000 递增的数字;因此,包含值 00999999 的行应该存在。确实如此:
但是,根据 "Browse" 屏幕,视图中的最后一行的值为“00994625”。这是显示最后一条记录的屏幕截图;请注意没有任何 "next" arrow/link:
我还没有尝试导出,所以不确定是否所有记录都能导出。我设法通过将 $cfg['MaxExactCount']
添加到我的 config.inc.php 文件来解决这个问题。但是,我担心这是否可取。我预计我的 table 会在运行后无限增长,最终可能会达到数百万行。如果我只是给 $cfg['MaxExactCount']
分配一个非常大的值,比如 10000000000,可以吗?有哪些陷阱以及如何避免它们?此外,共享托管服务提供商通常是否允许访问者更改此特定文件?
是的,您已经正确地诊断出了问题,至少看起来是这样。正如您可能在 documentation 中看到的那样,MaxExactCount 指令基本上用于配置 phpMyAdmin 在什么时候使用更快但不精确的行计数。
更改它是否是个好主意完全取决于您。问题将基于性能并取决于您的情况(table 结构、服务器规格和负载等),但值得尝试看看会发生什么。
如果你能修改 config.inc.php
那就去做吧;一些主机通过将 phpMyAdmin 文件夹的副本放在您的 Web 根目录中来提供 phpMyAdmin(在这种情况下,您将能够直接修改 config.inc.php),其他主机使用一个位于中央的副本并配置 Web 服务器以使其显示在您的域下(在这种情况下,您可能甚至无法 找到 phpMyAdmin 文件夹,更不用说修改它了)。如果他们不给你访问权限,你可以很容易地 install your own phpMyAdmin 实例到你自己的网络根目录,给文件夹一个与你的提供商使用的不同的名称,以免发生冲突,并进行任何你想要的修改。
我有一个 MySQL table 正好有 100 万行虚拟数据用于测试目的。但是,当我单击 table 的 "browse" 选项时,这就是我得到的:
注意它怎么说只有 994,622 条记录,而我知道还有更多。
有趣的是,如果我执行搜索,我仍然可以检索到那些不可见的记录。例如,PHONE
字段填充了从 00000000 到 01000000 递增的数字;因此,包含值 00999999 的行应该存在。确实如此:
但是,根据 "Browse" 屏幕,视图中的最后一行的值为“00994625”。这是显示最后一条记录的屏幕截图;请注意没有任何 "next" arrow/link:
我还没有尝试导出,所以不确定是否所有记录都能导出。我设法通过将 $cfg['MaxExactCount']
添加到我的 config.inc.php 文件来解决这个问题。但是,我担心这是否可取。我预计我的 table 会在运行后无限增长,最终可能会达到数百万行。如果我只是给 $cfg['MaxExactCount']
分配一个非常大的值,比如 10000000000,可以吗?有哪些陷阱以及如何避免它们?此外,共享托管服务提供商通常是否允许访问者更改此特定文件?
是的,您已经正确地诊断出了问题,至少看起来是这样。正如您可能在 documentation 中看到的那样,MaxExactCount 指令基本上用于配置 phpMyAdmin 在什么时候使用更快但不精确的行计数。
更改它是否是个好主意完全取决于您。问题将基于性能并取决于您的情况(table 结构、服务器规格和负载等),但值得尝试看看会发生什么。
如果你能修改 config.inc.php
那就去做吧;一些主机通过将 phpMyAdmin 文件夹的副本放在您的 Web 根目录中来提供 phpMyAdmin(在这种情况下,您将能够直接修改 config.inc.php),其他主机使用一个位于中央的副本并配置 Web 服务器以使其显示在您的域下(在这种情况下,您可能甚至无法 找到 phpMyAdmin 文件夹,更不用说修改它了)。如果他们不给你访问权限,你可以很容易地 install your own phpMyAdmin 实例到你自己的网络根目录,给文件夹一个与你的提供商使用的不同的名称,以免发生冲突,并进行任何你想要的修改。