我在Debian服务器上安装了phpmyadmin,在我看来,phpmyadmin忽略了/etc/phpmyadmin/config.inc.php。
我创建了一个只能读取一个数据库的用户。当我登录phpmyadmin时收到错误消息:
Connection for controluser as defined in your configuration failed.
所以我检查了配置文件。在我的情况下,它应该是/etc/phpmyadmin/config.inc.php
现在(经过多次更改)此文件包含以下内容:
$i = 0;
$i++;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['AllowNoPassword'] = false;
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';
$cfg['Servers'][$i]['favorite'] = 'pma__favorite';
$cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
$cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
$cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
$cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
$cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
$cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
$cfg['Servers'][$i]['users'] = 'pma__users';
$cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['controluser'] = 'phpmyadmin';
$cfg['Servers'][$i]['controlpass'] = 'secret_password';
$cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
$cfg['Servers'][$i]['relation'] = 'pma__relation';
$cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
$cfg['Servers'][$i]['table_info'] = 'pma__table_info';
$cfg['Servers'][$i]['column_info'] = 'pma__column_info';
$cfg['Servers'][$i]['history'] = 'pma__history';
$cfg['Servers'][$i]['recent'] = 'pma__recent';
$cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
$cfg['Servers'][$i]['tracking'] = 'pma__tracking';
$cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
$cfg['Servers'][$i]['designer_coords'] = 'pma__designer_coords';
$cfg['Servers'][$i]['hide_db'] = '^(information_schema|performance_schema|mysql|phpmyadmin)$';
此文件的访问权限设置如下:
-rw-r--r-- 1 root root config.inc.php
我将此文件的所有权更改为www-data:www-data但没有成功。 我能够以用户phpmyadmin身份登录并通过phpmyadmin编辑数据库,因此凭据应该没问题。 我创建并插入了用户pma但没有成功。
在/ var / lib / phpmyadmin /中有另一个空的config.inc.php
-rw-r----- 1 root www-data 0 Jan 28 2014 config.inc.php
问题是,当我以具有读访问权限的用户身份登录时,我无法浏览任何数据库。如果我尝试,我会收到错误:
#1142 - INSERT,DELETE command denied to user xxx for table 'pma__recent'
我必须让用户访问db phpmyadmin才能读取数据库。我不想这样做。
在访问phpmyadmin数据库后,我试图至少隐藏数据库。没有成功。
我读了整个互联网,我尝试了一切,我检查了一切。或者显然不是。
是否有办法(日志文件,调试模式,等等)检查配置文件和配置文件是否由phpmyadmin进行?
有人在这个配置中发现我的错误吗?
Debian版本是7.11。 服务器版本:5.5.53-0 + deb8u1 - (Debian) phpmyadmin版本:4.2.12deb2 + deb8u2
谢谢,
雅罗斯瓦夫
答案 0 :(得分:1)
但是尝试制作这些命令......我也遇到了同样的问题:
chmod 644 /etc/phpMyAdmin/config.inc.php
chmod 755 /etc/phpMyAdmin/