我在MySQL数据库中创建了一个用户:
CREATE USER 'user'@'host' IDENTIFIED BY 'password';
我已授予该用户完全权限:
GRANT ALL ON *.* to 'user'@'host';
回应补助金:
GRANT ALL PRIVILEGES ON *.* TO 'user'@'host' IDENTIFIED BY PASSWORD '*03FFC888F82E921D8CA360925A8F443CF326DE89'
我可以使用此登录凭据从MySQL workbench
连接任何问题并执行查询。它运行在运行Web应用程序的同一台机器上。 MySQL实例正在同一本地网络中的另一台计算机上运行。
但是,当我尝试在Eclipse下运行Tomcat7的Web应用程序中使用相同的凭据时,我收到错误。请指教。
注意:截至昨晚,网络应用程序能够正常连接。没有任何变化(我知道 - 我只是一个人在做这个),今天早上我无法连接。
分辨: 我使用本地计算机主机的IP地址为用户添加了授权。 我不确定服务器上有什么变化,但现在我能够再次连接。
是否有人可能能够解释此更改,以及为什么我之前需要使用IP地址以前本地主机名已足够?
答案 0 :(得分:-2)
确保您使用的是相应的主机名,并且您正在从该主机进行访问,该用户无法从其他主机进行连接。
要获得许可,您必须将密码设置为未加密。
示例
GRANT ALL PRIVILEGES ON test. * TO 'root' @ 'localhost'
IDENTIFIED BY 'goodsecret';
创建用户时,密码也必须相同。
这里有How adding个用户到MySQL
注意:有关GRANT的更多信息,请访问documentation。
希望这有帮助