我的MySQL数据库需要两个用户: appuser和support。
其中一个应用程序开发人员坚持要我为这些用户创建四个帐户:
appuser@'%'
appuser@'localhost'
support@'%'
support@'localhost'
我真搞不懂他为什么认为我们需要这个。不是使用通配符作为主机来处理“localhost”吗?
有什么想法吗?
(此处使用MySQL 5.5 )
发布于 2012-05-31 04:35:33
localhost
在MySQL中是特殊的,它意味着通过UNIX套接字(我相信在Windows上是命名管道)而不是TCP/IP套接字的连接。使用%
作为主机不包括localhost
,因此需要显式指定它。
发布于 2013-06-14 00:27:36
正如@nos在对这个问题的当前接受答案的评论中指出的那样,接受的答案是不正确的。
是的,当通过套接字连接而不是标准的%
/IP连接进行连接时,对用户帐户主机使用localhost
和TCP是有区别的。
主机值%
不包括套接字的localhost
,因此如果要使用该方法进行连接,则必须指定该值。
发布于 2013-05-13 16:19:27
如果要从本地主机连接到user@'%'
,请使用mysql -h192.168.0.1 -uuser -p
。
https://stackoverflow.com/questions/10823854
复制相似问题