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

时间:2022-08-22 14:45:08

安装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缓存的问题吧,这个我还没太搞清楚。