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)

参考技术A 提供思路吧:只有两种可能才能引起此种异常
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:

http://www.cnblogs.com/zhoujinyi/

以上是关于java连接mysql数据库 mysql服务开着的。不知道究竟哪里错了。。的主要内容,如果未能解决你的问题,请参考以下文章

mysql 数据库第一天

java web项目能正常运行,开着tomcat,mysql服务也没停,过了一晚上就不好使了,再点画面就报异常。

mysql查询连接数

macpro终端打开mysql

CentOS安装mysql

MySql的学习