powersd
powersd
2016-12-27 05:05
采纳率: 0%
浏览 4.5k

关于java JDBC连接的问题(localhost 与127.0.0.1)

主题:
jdbc连接中 如何强制规定使用localhost连接(因为虚拟主机只认localhost不支持127.0.0.1)

事件经过:
昨天租了一个虚拟主机,主机上面的MYSQL数据库只能通过localhost来访问,这本来也不是什么问题。
但是,程序上传到虚拟主机空间上连数据库却出现了问题,刚开始用的是hibernate,提示数据库连接失败。以为是主机不支持hibernate,遂更换成了手写的JDBC连接,这回得到的异常是 Access denied for user 'xxxxxx'@'127.0.0.1'
很显然,是数据库登录错误。
顺带把连接写一下
DBDRIVER = "com.mysql.jdbc.Driver";
DBPATH = "jdbc:mysql://localhost:3306/xxxxxx";
USERNAME = "xxxxxx";
PASSWORD = "aabbccddee";
上面的连接 通过程序连接的时候被转为了127.0.0.1 但是 虚拟主机上面是不支持127.0.0.1的

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

6条回答 默认 最新

  • qq_21992373
    HanawaGuo 2016-12-27 05:22

    这个错误是本地mysql没有连接权限的错误吧,跟localhost 没啥关系。

    点赞 评论
  • miaoch
    miaoch 2016-12-27 05:29

    图片说明

    点赞 评论
  • m0_37178816
    m0_37178816 2016-12-27 05:45

    您好,127.0.0.1应该是jdbc链接数据库的默认IP,和是不是localhost无关,另外,如果楼主用的是mysql数据库,一般是默认仅支持本地连接的。
    输入SQL语句:

    SELECT * FROM Tmysql.user

    可以查看所有用户权限

    点赞 评论
  • dcxy0
    Q544471255 2016-12-27 06:11

    你问下平台客服,我买的虚拟主机,数据库的连接不是localhost或者127.0.0.1,而是单独的地址,如果有问题,看我个人简介来群问吧.

    点赞 评论
  • liupan6889
    liupan6889 2016-12-27 06:23

    检查一下虚拟机 host文件的配置,是不是localhost和127.0.0.1对应

    点赞 评论
  • tulong520
    tulong520 2016-12-27 06:31

    检查一下虚拟机 system32-drivers-host文件的配置,localhost默认就是127.0.0.1

    点赞 评论

相关推荐