mac,mysql,jdbc链接问题?报错-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

mac,mysql,jdbc链接问题?报错

爱吃鱼的程序员 2020-06-12 10:43:27 207

jdbc链接mysql数据库在window上就没有问题,但是在mac上就出现了问题,代码如下:

Connection conn = null;

//String sql;

// 加载数据库驱动

Class.forName("com.mysql.jdbc.Driver");

// 获取数据库连接

conn = DriverManager.getConnection("jdbc:mysql://localhost:3307/test",

"AckMan", "wangbingan");

报错如下:

Exception in thread "main" java.sql.SQLException: null,  message from server: "Host '192.168.1.156' is not allowed to connect to this MySQL server"

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1078)

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989)

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975)

at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1110)

at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2483)

at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2516)

at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2301)

at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:834)

at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)

at java.lang.reflect.Constructor.newInstance(Constructor.java:513)

at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)

at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:416)

at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:317)

at java.sql.DriverManager.getConnection(DriverManager.java:582)

at java.sql.DriverManager.getConnection(DriverManager.java:185)

at com.wangbingan.jdbc.JdbcUtil.main(JdbcUtil.java:15)

我不知道为什么拒绝链接,搞了2天了,烦,请大神帮看下 小弟弟谢过了先!
云服务器登录 云服务器设置
分享到
取消 提交回答
全部回答(1)
  • 爱吃鱼的程序员
    2020-06-12 10:43:44
    试一下把localhost换成127.0.0.1看看回复 @godfather1103:我下午也研究了一下localhost和127.0.0.1的区别。我在windows8上用localhost就可以,但是在mac上只能用ip,而且在windows8上还改过hosts文件.大神厉害,我关注你了!谢谢了回复 @KorelAK:mysql默认只允许127.0.0.1的本地回环地址访问,一般来说localhost就能解析成127.0.0.1;但是有些情况下,比如修改了hosts文件,就会导致localhost无法解析成127.0.0.1,所以连接就被拒绝了 @godfather1103好了,谢谢啊,还有个问题就是为什么不能用localhost,只能用127.0.0.1回复 @KorelAK:用户名和密码有问题,在终端中验证一下mysql的用户名和密码Accessdeniedforuser'ak'@'localhost'(usingpassword:YES)出现了这个?

    开启MySQL的远程访问即可

    回复 @bhpx:恩,Thanks!回复 @KorelAK:网上教程很多,你自己找下,难度不大。怎么打开,我对mac不是很熟!
    0 0
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

相似问题
最新问题
推荐课程