【问题标题】:PMA Database ... not OK in phpMyAdmin upgradePMA 数据库...在 phpMyAdmin 升级中不正常
【发布时间】:2014-01-28 18:16:49
【问题描述】:

我刚刚在我的 Win8 PC IIS localhost 上与 phpMyAdmin 和 MySQL 服务器争吵(它们之间没有连接,我认为这是由于 MySQL 服务没有启动所以我重新安装 MySQL 并重新运行配置设置并重新建立连接它们之间,这解决了这个问题)。

然而 phpMyAdmin 建议我通过用新版本覆盖文件并包括以前的配置文件来进行更新。

我现在有:
The phpMyAdmin configuration storage is not completely configured, some extended features have been deactivated. To find out why click here.
并点击我得到
PMA Database ... not OK [ Documentation ]
General relation features Disabled
当我单击该链接时,我会得到一个 http 404 页面,其中显示:

Physical path C:\inetpub\wwwroot\phpMyAdmin\pmadb

那么 phpMyAdmin 中的 pmadb 是什么,我应该为此烦恼吗?就目前而言,我有点厌倦了不得不花时间调整所有这些(即它不是一个顺利的无故障事件/安装)。是旧版本的数据库还是什么?我不认为我创造了它!

我对此并不感到很困扰,因为希望我可以为我的本地 IIS 网站设置我的数据库并继续使用我的 webdeverry(!) 但我真的不喜欢这个未知错误并且不介意修复它/摆脱它。

【问题讨论】:

  • 您并不严格需要pmadb。它为您保存了一些默认值、链接和查询,仅此而已。你应该在某个地方有一个./scripts/create_tables.sql,据我所知应该创建数据库及其内容,尝试调整它。 for more info & possible other solutions see the documentation.
  • 感谢 Wrikken..我会查看您提供给 phpMyAdmin Wiki 站点的链接。我已经简要地看到它提供了有关升级到最新版本的更多信息,尽管第 8 步太远了! (8.如果成功,请向耳边的每个人宣布“我是天才!”。干杯:-)
  • 不要忘记退出 phpMyAdmin 并再次登录以使其真正重新加载配置。我浪费了相当长的时间,所需要的只是重新登录。如有疑问,请同时删除相应的 cookie。

标签: mysql phpmyadmin


【解决方案1】:

在我关注的同一问题上,有一些谷歌链接帮助我解决了这个问题(我应该在发布之前花更多时间在谷歌上搜索!)。所以为了解决这个问题,我需要创建一个 phpmyadmin 数据库并导入 create_tables.sql 并分配一个具有完全权限的新用户,然后在以下位置取消注释 config.inc.php 文件:

/* User used to manipulate with storage */ $cfg['Servers'][$i]['controlhost'] = ''; $cfg['Servers'][$i]['controluser'] = 'phpmyadmin';

并取消下面的注释

/* Storage database and tables */ $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';

我还需要在新版本config.sample.inc中添加一些行 有一个很好的链接描述了我想保存的内容,但我必须清除浏览器缓存以重新加载 localhost/phpMyAdmin,这样做我丢失了我的历史记录和该链接!

我知道这个解释没有被准确描述,但我希望它可以帮助其他在更新 phpMyAdmin 后遇到类似问题的人。我仍然不确定所有这些功能的作用,但现在都已修复,谢谢!

【讨论】:

  • 请注意,如果您将 root 用户用于 controluser,请务必将 controlhost 设置为“localhost”。否则权限可能不同。
  • 下面的注释行可能会产生误导。更正,取消注释下面以 $cfg['Servers'][$i]... 开头的 所有 行,不包括 ...['auth_swekey_config']
  • 对我不起作用,仍然是同样的错误。
【解决方案2】:

由于我的英语不是很好,所以我使用谷歌翻译,所以任何错误我很抱歉;)

你好,我也遇到了同样的问题,解决办法:

设置完所有 phpmmyadmin 后,需要在 phpmyadmin sql 控制台本身运行文件“create_tables”,位于:phpmyadmin\sql\create_tables.sql

创建后,您需要配置文件“config.inc”,该文件位于 phpmyadmin 文件夹中。 在其中包含以下信息,相当于文件“config.sample.inc”,这是一个示例。

/* User used to manipulate with storage */
$cfg['Servers'][$i]['controlhost'] = 'localhost';
$cfg['Servers'][$i]['controluser'] = 'user';
$cfg['Servers'][$i]['controlpass'] = 'password';

/* Storage database and tables */
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
$cfg['Servers'][$i]['relation'] = 'pma__relation';
$cfg['Servers'][$i]['table_info'] = 'pma__table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma__column_info';
$cfg['Servers'][$i]['history'] = 'pma__history';
$cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
$cfg['Servers'][$i]['tracking'] = 'pma__tracking';
$cfg['Servers'][$i]['designer_coords'] = 'pma__designer_coords';
$cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
$cfg['Servers'][$i]['recent'] = 'pma__recent';
$cfg['Servers'][$i]['users'] = 'pma__users';
$cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
$cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
$cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';

编辑:@Greeso 建议)

对于新版本,您还应该添加:

$cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
$cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
$cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
$cfg['Servers'][$i]['favorite'] = 'pma__favorite';

完成,退出并重新进入会话。

【讨论】:

  • 你需要再添加两行 $cfg['Servers'][$i]['f​​avorite'] = 'pma__favorite'; $cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
  • "退出并重新进入会话"
【解决方案3】:

在一个命令中完成工作的快速修复脚本:

curl -O -k https://raw.githubusercontent.com/skurudo/phpmyadmin-fixer/master/pma.sh && chmod +x pma.sh && ./pma.sh

通读repo link中的实际代码

【讨论】:

  • “错误:此脚本只能由 root 执行”。在前面使用 sudo 会产生相同的错误。有什么建议吗?
  • 这是一个非常古老的脚本,目前不确定是否有效。
【解决方案4】:

我发现这个问题还有另一个原因。如果当您创建 pmauser 供 phpmyadmin 使用时,如果您忘记将该用户权限分配给允许修改 phpmyadmin 数据库的架构,您将收到相同的消息。好消息是,如果您使用 root 或类似权限登录,您可以只允许 pmauser 对 phpmyadmin 架构进行选择、插入、删除,问题应该会得到解决。

【讨论】:

    【解决方案5】:

    这将重新安装 phpmyadmin:

    sudo dpkg-reconfigure phpmyadmin
    

    post

    【讨论】:

      【解决方案6】:

      多年后,对于任何寻找如何删除这个烦人的消息而不启用该功能的人,只需将此行添加到您的配置中:

      $cfg['PmaNoRelation_DisableWarning'] = true;
      

      【讨论】:

        【解决方案7】:

        对我来说,缺少 db phpmyadmin,您可以在 sql/ 目录中的 phpmyadmin 安装中找到文件 create_tables.sql。您可以使用此文件来重建您的表。

        您可以从命令行导入该 sql 文件。 # mysql -u root < create_tables.sql

        小心这可能会覆盖你的数据,如果你已经有一个完整的表,在你移动旧的 phpmyadmin 表之前不要运行它。

        【讨论】:

          猜你喜欢
          • 2013-01-25
          • 2015-09-19
          • 1970-01-01
          • 2011-12-19
          • 1970-01-01
          • 2016-01-15
          • 1970-01-01
          • 2013-11-10
          • 1970-01-01
          相关资源
          最近更新 更多