phpMyAdmin 链接表的附加功能尚未激活的问题

  安装phpMyAdmin的时候我还是没有手动配置config文件,而是使用了它的setup功能。

  除了 服务器名称 和 认证方式 以外都使用了默认值。

  服务器名称自己随便输入了一个,认证方式修改成了http。

  另外PMA数据库一页点了文本框后面的笔,把默认值填进去了。

  (这时候我已经创建了控制用户,而且把用户名和密码输入进去了。创建的方法我会在后面讲)

  保存设置后,输入MySQL的root用户名和密码,打开phpMyAdmin的主画面后,出现了如下的错误

phpMyAdmin 链接表的附加功能尚未激活的问题

  点了 请点击此处之后 看到的画面如下

phpMyAdmin 链接表的附加功能尚未激活的问题

  解决这个问题要注意的地方如下。

  1.config文件的删除与拷贝处理

  这个有可能不是问题的关键,但是我是在出现问题之后,阅读了官方的文档,然后进行了处理。

  在setup画面保存了设置之后,把./config/config.inc.php拷贝到./也就是根目录下,然后删除./config目录

  2.创建附加功能需要的数据库和表

  在./scripts文件夹下存在一个create_tables.sql文件,将它导入MySQL,创建相应的表。

  虽然附加功能还存在问题,但是已经可以使用phpMyAdmin来管理MySQL了,所以我通过下面的画面倒入了create_tables.sql文件

phpMyAdmin 链接表的附加功能尚未激活的问题

  3.创建控制用户

  这个我在出现问题之前就已经创建好了。

  我使用MySQL的命令行工具,执行了一下的SQL命令。

  

复制代码 代码如下:

  GRANT USAGE ON mysql.* TO 'pma'@'localhost' IDENTIFIED BY 'pmapass';

  GRANT SELECT (

  Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv,

  Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv,

  File_priv, Grant_priv, References_priv, Index_priv, Alter_priv,

  Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv,

  Execute_priv, Repl_slave_priv, Repl_client_priv

  ) ON mysql.user TO 'pma'@'localhost';

  GRANT SELECT ON mysql.db TO 'pma'@'localhost';

  GRANT SELECT ON mysql.host TO 'pma'@'localhost';

  GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv)

  ON mysql.tables_priv TO 'pma'@'localhost';

  GRANT SELECT, INSERT, UPDATE, DELETE ON <pma_db>.* TO 'pma'@'localhost';

  4.修改config.inc.php文件。

  因为setup画面上没有设定tracking,所以在进行完上述处理之后第二幅图的其他项目都变成了绿色,但是最后一个项目还是红色。

  所以自己在config.inc.php文件中追加了

  $cfg['Servers'][$i]['tracking'] = 'pma_tracking';

  这样一行。

  5.存在config.inc.php文件的修改没有起作用的情况

  在完成了1到3的设置后,访问主画面的时候,第二幅图的设置没有立即变成绿色。

  为了验证config.inc.php文件的修改有没有效果,我把文件中一个很重要的设置'host'给改了,随便在后面加了几个a。

  之后访问phpMyAdmin的时候就出错了。然后把那几个a去掉,再访问的时候,除了最后一项tracking,其他都是绿色了。

  大概是因为浏览器或者apache缓存的问题吧,这个我还没太搞清楚。