【问题标题】:phpmyadmin: pma__ tables in different databasesphpmyadmin:不同数据库中的 pma__ 表
【发布时间】:2020-05-19 20:28:52
【问题描述】:

我们在与 CentOs7 相同的(虚拟)网络服务器上拥有我们的测试网络服务器和主网络服务器。将它们放在一起对我们(小公司)来说非常方便,原因有几个。

我们在同一台服务器上也有测试数据库和主数据库,出于几个原因也很方便。

我们首先通过directadmin/phpmyadmin 创建了主数据库,之后才创建了测试数据库。我们为 phpmyadmin 使用两种不同的登录名:一种只访问主数据库。为了访问测试数据库和主数据库以及系统数据库,我们现在使用 root 登录,方便维护所有数据库(测试和主数据库等)。

我们有时会同步两个数据库(主要是从 main 到 test 的数据以便能够使用最新数据进行测试,以及在测试代码和 db 之后从 test 到 main 的结构)。我们想要复制的部分结构是一些 phpmyadmin 的好东西,比如带有外键的弹出窗口。 phpmyadmin 为此使用了一组 pma__xxx 表,例如 pma__table_info

问题是:我们现在在两个数据库中都有这组表,包括测试数据库和主数据库。

在这些表中,我们总是可以找到两个数据库的记录。例如,在测试服务器上,可能有pma__table_info.db_name 设置为主服务器但也设置为测试服务器的记录。在主服务器中也是如此。然而,表格的内容却完全不同。我注意到如果记录在两个pma__table_info 表中,系统不一定会从该表所在的服务器获取pma__table_info-info。

我不明白(也不是在 google 和查看 https://docs.phpmyadmin.net/en/latest/config.html 之后):

  1. 为什么 pma__ 表集没有单独的数据库?为什么它在我们的数据库中?
  2. 为什么在我们的每个数据库上都有两组 pma__ 表?这仅仅是因为我们制作了一个数据库副本吗?但是为什么 phpmyadmin 然后实际上然后使用副本中的记录而不是原始记录?为什么两个数据库上的表如此不同?
  3. 所以看起来两个数据库上的 pma 表都用于两个数据库。我如何知道何时使用哪组表?这是否取决于我们使用的 phpmyadmin 登录?
  4. 我们是否应该将 pma__ 表合并到一个单独的数据库中,并通过配置告诉 phpmyadmin 使用这个单独的数据库?如果我们使用只能访问主数据库的登录名登录,这会起作用吗?

谷歌搜索没有给出基本答案,只有技术内容,但我需要先了解上述基本内容,然后才能弄清楚技术内容。

也非常欢迎提供指向基本 pma__ 表信息(技术配置信息除外)的链接。

非常感谢!

【问题讨论】:

    标签: mysql database phpmyadmin


    【解决方案1】:

    所以我似乎最终自己找到了答案。如果我说错了,请指正。

    1. 因为phpmyadmin被正常配置为使用当前db。这样当您只有一个数据库时它会顺利进行。当您无权访问配置文件时非常方便。
    2. 见上文。 phpmyadmin 将,afaik,使用您在启动 phpmyadmin 后打开的第一个数据库,并且即使在您切换后也会继续使用此数据库中的表。
    3. 见 2。
    4. 当然。为 pma 创建一个用户和数据库,用它们调整配置文件,然后就可以开始了。

    【讨论】:

      猜你喜欢
      • 2012-12-03
      • 2017-01-05
      • 1970-01-01
      • 2018-10-21
      • 1970-01-01
      • 1970-01-01
      • 2016-07-24
      • 2018-05-14
      • 1970-01-01
      相关资源
      最近更新 更多