首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL有两个不同的密码?

问MySQL有两个不同的密码?
EN

Stack Overflow用户
提问于 2015-05-13 09:57:40
回答 2查看 3K关注 0票数 4

我确信它们是不同事物的密码,但我不确定是什么。在终端连接到MySQL时,我输入/usr/LOCAL/mysql/BIN/mysql -h host -u username -p,然后系统会提示我输入密码,密码是''。但是在使用PHP语言连接到MySQL时,我使用了以下代码,它可以正常工作

代码语言:javascript
复制
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', '');,它会返回“拒绝访问用户‘根用户’@‘本地主机’(使用密码: NO)",为什么会有两个单独的密码?

EN

回答 2

Stack Overflow用户

发布于 2015-05-13 10:04:10

Q:为什么看起来有两个独立的密码?

A:,因为您是以两个不同的用户身份连接的。

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

用户数据库“MySQL”由两部分标识:用户主机名称和主机。

例如,以下是三个不同的用户:

代码语言:javascript
复制
'username'@'localhost'
'username'@'127.0.0.1'
'username'@'%'

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

代码语言:javascript
复制
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地址。这是一个特殊的值。

票数 8
EN

Stack Overflow用户

发布于 2015-05-13 10:04:00

根在默认情况下使用$ user /$host/$password比较,因此您当前的设置在MySQL中有两个不同的用户帐户-根和您在命令行中提供的用户名。其中每一个都有自己的密码。

此外,如果帐户没有(即空的)密码,则不需要在命令行界面上指定-p标志

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30204350

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档