mysql怎么连接不上,提示用户名或密码无效?

上周我的朋友遇到了MySQL远程登录的问题。
他尝试了两种解决方案。

首先是修改表格。
他发现该账户不允许远程登录,只能登录localhost。
于是,他在本地主机上登录MySQL,并将“Users”表中的“Host”项从“localhost”更改为“%”。
操作如下:
mysql> use mysql; mysql> update user set host='%' where user='root'; mysql>主机,从用户中选择用户;
二是批准权。
他希望 myuser 使用 mypassword 从任何主机连接到 MySQL 服务器。
所以他运行了以下命令:
GRANT ALL PRIVILEGES ON 。
由带有授予选项的“mypassword”标识的“myuser”@“%”;
如果他只想允许 myuser 从特定 IP 地址 1 9 2 .1 6 8 .1 .3 进行连接,则命令如下:
GRANT ALL PRIVILEGES ON 。
至“root”@“1 9 2 .1 6 8 .1 .3 ”,由“mypassword”标识,并带有授予选项;
还有其他 IP 地址,例如 1 0.1 0.4 0.5 4 ,密码是 1 2 3 4 5 6 ,命令类似:
GRANT ALL PRIVILEGES ON 。
至“root”@“1 0.1 0.4 0.5 4 ”,由“1 2 3 4 5 6 ”识别,并带有授予选项;
这样问题就解决了。
由你决定。

登陆网页,mysql提示密码不对,在系统中mysql可以用密码正常登陆

在MySQL中,用户名与IP或域名绑定。
看'root'@'1 2 7 .0.0.1 '和'root'@'localhost',这两个是两个完全不同的用户。
说实话,刚开始做的时候我很困惑,不明白为什么会这样。

例如,如果您在服务器上运行MySQL,则“root”@“1 2 7 .0.0.1 ”用户只能从该服务器的IP 1 2 7 .0.0.1 进行连接。
至于'root'@'localhost',这个用户不仅可以从1 2 7 .0.0.1 连接,还可以在其他可以解析到localhost的地方,例如你的本地计算机。
这有点奇怪。

查了资料,发现这种IP地址和主机名的绑定机制是在2 003 年MySQL 4 .1 中引入的,当时可能是出于安全考虑,防止远程攻击。
想想看,如果所有的根都能随便连接起来,那不就完了吗?
所以,大家在做数据库的时候,一定要注意这个用户是如何绑定的。
例如,如果您使用 phpMyAdmin,它默认从“1 2 7 .0.0.1 ”上升,那么您必须使用用户“root”@“1 2 7 .0.0.1 ”。
如果您从远程计算机进行连接,则可能必须使用用户“root”@“您的公共 IP”或“root”@“您的域名”。

有时,您可能会遇到无法连接数据库的情况,因为您使用的用户与当前连接的IP不匹配。
我以前也遇到过这种情况,当时我很困惑。
后来查看MySQL日志,发现是用户问题。

总之,你要记住MySQL用户与IP/域名的绑定。
如果出错的话,甚至连数据库都无法连接。
那太烦人了。

mysql登陆失败怎么办?

去年夏天,我坐在电脑前,满头大汗地尝试连接服务器上的 MySQL 数据库。
我输入了正确的用户名和密码,但总是显示登录失败。
我尝试了不同的命令组合,甚至怀疑服务器有问题。
突然想起之前的一次经历,因为命令中有空格导致登录失败。
我检查了一下,果然输入密码时多了一个空格。
删除空格后,我登录到MySQL。
那时我突然想到,生活中的很多问题其实都隐藏在看似微不足道的细节中。