在tomcat中发布项目时,报这个错,我检查了mysql服务是开着的,端口也是3306,不知道为什么还是报这个错,我的系统是VISTA,不知是否与系统有关
Caused by: java.sql.SQLException: Cannot connect to MySQL server on localhost:3306. Is there a MySQL server running on the machine/port you are trying to connect to? (java.net.ConnectException)
at org.gjt.mm.mysql.Connection.connectionInit(Connection.java:331)
at org.gjt.mm.mysql.jdbc2.Connection.connectionInit(Connection.java:89)
at org.gjt.mm.mysql.Driver.connect(Driver.java:167)
at org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:37)
at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:290)
at org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:877)
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:851)
... 44 more

解决方案 »

  1.   

    你还是先telnet 127.0.0.1 3306 看一下吧要是成功的话,那就是不知道是什么原因啦,驱动是没有问题的。因为他都能找到
      

  2.   

    你重新设置个端口试试,错误提示端口被占用.可能是你的系统还有一个mysql强占了3306端口.
      

  3.   

    1: 打开资源管理器,看看mysql的进程在不在。
    2:telnet 如楼上,看看是否成功。
    3:用mysql自带的命令行工具看看是否能连上
    4:看看jar包的版本是否匹配。
    5:检查链接字符串中dbname已经端口后是否正确。
      

  4.   

    干脆jdbc去掉端口看看我的就是这样的  jdbc:mysql://localhost/mydb