mysql的localhost和127.0.0.1的区别

mysql的localhost和127.0.0.1的区别,第1张

1. mysql -h 127.0.0.1 的时候,使用TCP/IP连接, mysql server 认为该连接来自于127.0.0.1或者是"localhost.localdomain"

2. mysql -h localhost 的时候,是不使用TCP/IP连接的,而使用Unix socket;此时,mysql server则认为该client是来自"localhost"

3. mysql权限管理中的"localhost"有特定含义:

注意:虽然两者连接方式有区别,但当localhost 为默认的127.0.0.1时,两种连接方式使用的权限记录都是以下的1.row的记录(因为记录在前,先被匹配)

tcp是必须双方握手之后才算连接,每次传输信息都会经过双方确认,相当于生活中的打电话。

udp不需要双方握手,发送方也不去验证对方是否已经收到信息。相当于现在的qq和微信,不管对方是否在线,都能讲信息发送过去。

几个可能:

1. 用户名、密码错误,所以无法访问

2. 数据库端设置了IP访问权限,不能用localhost访问。换成具体的IP地址试试。

3. 数据库端设置了相关 *** 作权限,该用户没有create权限。

mysql -u root -p

mysql>use mysql

mysql>select 'host' from user where user='root'

mysql>update user set host = '%' where user ='root'

mysql>flush privileges

mysql>select 'host' from user where user='root'

第一句是以权限用户root登录

第二句:选择mysql库

第三句:查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)

第四句:修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址

第五句:刷新MySQL的系统权限相关表

第六句:再重新查看user表时,有修改。。

重起mysql服务即可完成。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7512152.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-06
下一篇 2023-04-06

发表评论

登录后才能评论

评论列表(0条)

保存