我正在尝试在NetBeans中运行一个简单的Java / MySQL Web应用程序教程。
我能够从NetBeans中的标准Java程序连接到我的数据库,并且Tomcat正在运行。但是当我尝试从JSP连接到数据库时,我收到以下错误:
javax.servlet.ServletException: javax.servlet.jsp.JspException:
Unable to get connection, DataSource invalid:
"org.apache.tomcat.dbcp.dbcp.SQLNestedException:
Cannot create PoolableConnectionFactory
(Access denied for user 'root'@'localhost' (using password: YES))"
我知道我有正确的密码设置,因为其他(Java SE)程序可以连接到数据库。谁能指出我在哪里看?
我在Windows Vista中使用NetBeans 6.7,MySQL 5.1和Tomcat 6.0.18。
答案 0 :(得分:3)
用户名root
只能用于从同一台计算机登录,而不能远程登录。尝试创建具有所有权限的其他用户ID。
看看Adding user accounts。在该页面中,您将看到两个查询
CREATE USER 'monty'@'localhost' IDENTIFIED BY 'some_pass';
CREATE USER 'monty'@'%' IDENTIFIED BY 'some_pass';
此处第二个monty@%
可用于远程登录,而第一个仅限本地登录。