2004-12-30 00:32:13 解决连接mysql数据库的问题
======================================
在csdn提问如下
http://community.csdn.net/Expert/topic/3687/3687107.xml?temp=.803097为什么MySQL的root用户的密码为空可以成功连接,设置密码以后即出错?
出错信息如下:
java.sql.SQLException: Communication failure during handshake. Is there a server running on localhost:3306?
at org.gjt.mm.mysql.MysqlIO.init(MysqlIO.java:327)
at org.gjt.mm.mysql.Connection.connectionInit(Connection.java:261)
at org.gjt.mm.mysql.jdbc2.Connection.connectionInit(Connection.java:89)
at org.gjt.mm.mysql.Driver.connect(Driver.java:167)
at java.sql.DriverManager.getConnection(DriverManager.java:523)--------------------------
我是的环境:
winxp home,eclipse3.0,mysql-5.0.0-alpha,mm.mysql-2.0.4-bin.jar,j2sdk1.5
===========================================================
解决方法
把mm.mysql-2.0.4-bin.jar
换成
mysql-connector-java-3.1.5-gamma-bin.jar 
下载地址
http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-3.1.5-gamma.zip/from/http://mirrors.hpcf.upr.edu/mysql/
就可以了
=================================================
再把问题描述一下:
mysql默认情况下的root是没有密码的。为了安全,我设置了密码,然后使用mm.mysql-2.0.4-bin.jar就不能连接了,没有办法,之后把密码清空了来使用。这样是不行的阿,由于工作比较忙,就搁置起来的。=================================================
小结:这个问题其实出现很久了,早在一个月以前配置jdon2.5的jive,因为位数据库设定了访问密码而配置不成功,今天在csdn上寻找答案,看到相关的帖子,提示使用的驱动程序不对,然后就去www.mysql.com下载了最新的驱动程序,加入到classpath中,修改代码,driver=com.mysql.jdbc.Driver.编译,测试,成功了。
==================================================
夜深了,明天再考虑测试到jiveJdon版的使用情况。