com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Communication link failure, message from server: “Can””t get hostname for your address”代码如下 try{ //加载数据库驱动 Class.forName(“com.mysql.jdbc.Driver”); //数据库连接字符串 String url=”jdbc:mysql://localhost:3306/test”; //数据库用户名 String username = “root”; String password=”root”; //创建connection连接 Connection conn=DriverManager.getConnection(url,username,password); if(conn!=null){ out.println(“数据库连接成功”); conn.close(); }else{ out.println(“数据库连接失败”); } }catch(Exception e){ out.println(e); } 代码应该没问题,之前还能运行的,昨天换了个新版本的Mysql数据库后就一直抱着个错误了,应该是数据库的原因,请高手帮帮忙 |
|
#15分 |
换了新版本的mysql,那是否驱动也不一样了,看看是不是jar包的问题
|
#2 |
驱动也换了新版本带来的驱动,还是不行
|
#35分 |
解决方法如下:
编辑my.ini 在[mysqld]节点下新增或修改如下两行行 skip-name-resolve #忽略主机名的方式访问 lower_case_table_names=1 #忽略数据库表名大小写 重启mysql服务,问题得到解决。 帮你从网上找的,看看是不是这个问题,希望对你有帮助 |
#4 |
|
#5 |
不过看到还有中方式说是把mysql.user表的Host值为localhost的记录都改为127.0.0.1就可以了,那可能就是主机映射的问题,如果这种方式可以解决,我觉得还是这种好点,比忽略更科学
|
#6 |
这个版本没有找到你说的:my.ini找到这个:my-default.ini里面有那个节点,改了之后还是没有用。
|
#7 |
尝试了一下,爆同样的错误
|
#83分 |
“Can””t get hostname for your address”,这不是代码的问题,是你的数据库的问题
|
#9 |
数据库应该怎么改
|
#102分 |
开启数据库网络访问
|
#11 |
我在ip那边的复选框内勾选了啊
|
#125分 |
建议卸载重装,有的时候,不小心碰到什么设置,花很多时间去找出来,得不偿失,时间成本太高,毕竟不是经常跟安装打交道。
|