微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – MySQL有两个不同的密码?

我相信他们是不同事物的密码,但我不确定是什么.当在终端连接到MySQL时,我输入/usr/LOCAL / MysqL / BIN / MysqL -h host -u username -p然后提示我输入密码,密码是”.但是当使用PHP连接到MysqL时,我使用以下代码并且它可以工作

DEFINE('DB_HOST', 'localhost'); 
DEFINE('DB_USER', 'root'); 
DEFINE('DB_PASS', 'root'); 

$dbc = MysqLi_connect(DB_HOST, DB_USER, DB_PASS,) or 
die('Could not connect: '. MysqLi_connect_error() );

如果我要使用DEFINE(‘DB_PASS’,”);它返回“拒绝访问用户’root’@’localhost'(使用密码:NO)”,为什么似乎有两个单独的密码?

解决方法:

问:为什么似乎有两个单独的密码?

答:因为您要作为两个不同的用户进行连接.

每个用户都有自己的密码和权限.

MysqL数据库“user”由两部分标识:用户名和主机.

例如,这些是三个不同的用户

'username'@'localhost'
'username'@'127.0.0.1'
'username'@'%'

要查看数据库中定义的用户,可以查询MysqL.user表,例如

SELECT user, host FROM MysqL.user ;

您可能需要查看MysqL参考手册的相关部分.

参考:https://dev.mysql.com/doc/refman/5.5/en/adding-users.html

注意:MysqL.user表中的值localhost或连接不与TCP回送地址(127.0.0.1)同义.它无法解析为该IP地址或任何其他IP地址.这是一个特殊的价值.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐