JDBC连接MySQL出现的错误,希望能有人指点!

hoc 2005-03-15 01:59:55
连接MySQL的部分语句:
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost/3306/samp_db?user=root&password=hoc&useUnicode=true&characterEncoding=8859_1";
Connection conn= DriverManager.getConnection(url);
运行后出的错误如下:
Exception in thread "main" java.sql.SQLException: Communication failure during h
andshake. 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:525)
at java.sql.DriverManager.getConnection(DriverManager.java:193)
at ConnMysql.main(ConnMysql.java:29)
类是ConnMysql.java,第29行是:Connection conn= DriverManager.getConnection(url);
...全文
396 点赞 收藏 14
写回复
14 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
hoc 2005-04-16
我自己搞定了,,原来需要两个驱动,我自己装的是j2sdk1.5.0.1
需要org和com俩个驱动都装上,我也不知道为什么,可能是版本驱动的问题。我总是喜欢最高版本,
虽然计算机配置不高!
回复
zk104 2005-04-02
up
回复
ice_yu 2005-03-31
3306端口被占用了
你换一个其它的端口
回复
fxltsbl 2005-03-31
我用com.mysql.jdbc.Driver驱动,连接一次,成功一次。感觉算爽死了。
Connection con=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test","root","123");
敢问高手,到底哪个驱动更牛一点,更好一点。
谢了
回复
nwsl 2005-03-31
你启动了mysqld吗?
端口号是3306吗?
回复
zez 2005-03-30
你的mysql根本没有启动呀...
或者端口号不对
回复
quickpoint 2005-03-30
如果在windows下就启动mysqld-nt
如果在linux下就启动mysqld_safe &
或者视你的版本而言启动safe_mysqld &

如果你输入mysql -u <your account> -p
********<your password>
可以进入的话,则启动了mysql服务器。
看样子好像是没有启动mysql服务器。
回复
quickpoint 2005-03-30
你启动了mysqld吗?
回复
misssth 2005-03-30
你再建一个数据库用户是以下
回复
misssth 2005-03-30
String url ="jdbc:mysql://localhost:3306/samp_db?";
这样子吧,要不就是password不对
回复
minghui000 2005-03-30
up
回复
hoc 2005-03-15
还是老样子!
Exception in thread "main" java.sql.SQLException: Communication failure during h
andshake. 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:525)
at java.sql.DriverManager.getConnection(DriverManager.java:193)
at ConnMysql.main(ConnMysql.java:29)
回复
fxfboy 2005-03-15
>
>String url ="jdbc:mysql://localhost/3306/samp_db?>user=root&password=root123&useUnicode=true&characterEncoding=8859_1";
>

String url ="jdbc:mysql://localhost:3306/samp_db?user=root&password=root123&useUnicode=true&characterEncoding=8859_1";

这样呢?
回复
hoc 2005-03-15
我的类是下面这样的,并且Mysql4.1已经装好了,我还可以通过[MySQL Command Line Client]登陆!
import java.sql.*;
public class ConnMysql
{
public static void main(String[] abc) throws ClassNotFoundException,SQLException,
InstantiationException,IllegalAccessException
{
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost/3306/samp_db?user=root&password=root123&useUnicode=true&characterEncoding=8859_1";
Connection conn= DriverManager.getConnection(url);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from users where name='may'";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {
System.out.println("this is a username--->"+rs.getString(1));
System.out.println("this is a userpass--->"+rs.getString(2));
}
rs.close();
stmt.close();
conn.close();
}}
回复
相关推荐
发帖
Java EE
创建于2007-09-28

6.6w+

社区成员

J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
申请成为版主
帖子事件
创建了帖子
2005-03-15 01:59
社区公告
暂无公告