我有一个用户,我使用从我的PHP页面查询MySQL数据库,现在我试图使用相同的用户在eclipse / BIRT为了build立一些报告,但我得到的错误
访问被拒绝用户'用户名'@'localhost'(使用密码:是)
有谁知道我错过了什么?
您必须添加username@%logging,其中“%”是通配符,意思是“从任何地方”。 或者,更安全地说,您可以添加像[email protected]或[email protected]logging
使用config.sample.inc.php来创build你自己的config.inc.php(在phpMyAdmin文件夹中),它包含这样的行(默认可能适用于你):
/* Authentication type */ $cfg['Servers'][$i]['auth_type'] = 'cookie'; /* Server parameters */ $cfg['Servers'][$i]['host'] = 'localhost'; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['compress'] = false; $cfg['Servers'][$i]['AllowNoPassword'] = false;
即使在连接到数据库服务器之前,“拒绝用户的用户名'@'localhost'(使用密码:YES)”的声明也会出现。 我猜这是最有可能的问题,因为我猜你知道正确的密码,我也会做出这样的假设,你知道你有正确的权限,你试图访问的表,因为你说你有一个用户你用来从你的网站做数据库查询。
您没有真正指定eclipse实例的位置,但是我将猜测与您的服务器不在同一networking上的工作站。 我首先要确保你可以连接到数据库服务器。 MySQL默认在端口tcp / 3306上运行。 我只是尝试做一个telnet连接,看看它是否连接,“telnet(db_server_ip)3306”。 如果连接closures,则需要根据防火墙的数量将工作站的端口打开到数据库服务器。
解决scheme非常简单,我只是停止使用本地主机,并改为实际的IP地址。