java连接mysql数据库 mysql服务开着的。不知道究竟哪里错了。。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java连接mysql数据库 mysql服务开着的。不知道究竟哪里错了。。相关的知识,希望对你有一定的参考价值。
package DBUtil;
import java.sql.*;
public class DBUtil
public static Connection getConnection()
Connection conn = null;
try
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/ll?useUnicode=true&characterEncoding=utf8",
"root","");
catch(Exception e)
e.printStackTrace();
return conn;
public static void close(Connection conn)
if(conn!=null)
try
conn.close();
catch(SQLException e)
e.printStackTrace();
public static void main(String[] args)
System.out.println(getConnection());
com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
** BEGIN NESTED EXCEPTION **
java.net.SocketException
MESSAGE: java.net.ConnectException: Connection refused: connect
STACKTRACE:
java.net.SocketException: java.net.ConnectException: Connection refused: connect
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:151)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:280)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:1765)
at com.mysql.jdbc.Connection.<init>(Connection.java:430)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:268)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at DBUtil.DBUtil.getConnection(DBUtil.java:8)
at DBUtil.DBUtil.main(DBUtil.java:26)
** END NESTED EXCEPTION **
at com.mysql.jdbc.Connection.createNewIO(Connection.java:1830)
at com.mysql.jdbc.Connection.<init>(Connection.java:430)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:268)
null
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at DBUtil.DBUtil.getConnection(DBUtil.java:8)
at DBUtil.DBUtil.main(DBUtil.java:26)
1、mysql服务没开着,你最好再确定一下,首先通过mysql自带的客户端登陆一下试试
2、用户名和密码错误
试着检查一下吧 参考技术B jdbc:mysql://localhost:3306/ll?useUnicode=true&characterEncoding=utf8",
这个url写的是否正确,长时间没接触mysql了,不记得怎么写了,但感觉是这里有问题的。
另外,mysql的话,root账号只能本地登陆,远程的是无法使用此账号登陆的,是不是这个问题 参考技术C jdbc:mysql://localhost:3306/ll?useUnicode=true&characterEncoding=utf8",检查下这个数据库url有没写错 参考技术D "jdbc:mysql://localhost:3306/数据名 第5个回答 2011-09-13 ll 你的数据库名?
"root",""); ""这里,你的mysql的密码是空的吗?
mysql查询连接数
最近公司的测试服务器数据库经常是连接爆满,几次加大了依旧满了。
明明只有几个人在用这个数据库,但是连接数到了三四百。于是就想是谁一直开着连接不释放,于是写了个SQL查了下连接使用情况。
SQL如下:
select SUBSTRING_INDEX(host,\':\',1) as ip , count(*) as connections
from information_schema.processlist
group by ip
ORDER BY connections desc;
结果:
很明显啦,除了18是服务器,48和42两个同学就有点过分啦,这下可以拿着证据去怼他们了:)。
从SQL看我们可以发现我们是从 information_schema这个库中的processlist表中查询的结果。
数据库的schema里放了很多关于数据库配置,性能等等的数据,比如用的processlist就存放了连接相关的数据。
我对数据库研究很浅,这里给大家推荐一个blog:
以上是关于java连接mysql数据库 mysql服务开着的。不知道究竟哪里错了。。的主要内容,如果未能解决你的问题,请参考以下文章