mysql安装时出现error nr.1045怎么办?

发布网友 发布时间:2022-04-23 01:24

我来回答

2个回答

热心网友 时间:2022-04-09 15:07

解决办法:

mysqladmin -h hostname flush-privileges

use mysql; update user set password =password('yourpass') where user='root'

出现无法连接数据库的话,命令行用root用户登陆,敲下面命令:
SET PASSWORD FOR sns@'localhost'=OLD_PASSWORD('sns');
然后刷新mysql权限
FLUSH PRIVILEGES;

导入数据的方法 mysql -u name -p --default-character-set=utf8 databasename < path\*.sql

create database name character set utf8;

如果出现#1251 - Client does not support authentication protocol requested by server;的错误:

解决办法:先用root登录MYSQL服务器,执行

mysql>set password for user1@"localhost"=old_password('yourPassword');

原因是因为你使用的mysql服务器版本中使用了新的密码验证机制,这需要客户端的版本要在4.0以上,原来的密码函数被改为old_password();,这样使用password()生成的密码在旧的版本上的客户端就不好使了,而PHP中的MYSQL客户端都是3.23的(当然,mysqli的扩展除外),问题就在这了。

热心网友 时间:2022-04-09 16:25

可能是密码错误,或者用户忘记密码

mysql> CREATE USER 'nonexistant'@'%' IDENTIFIED BY '123456';Query OK, 0 rows affected (0.00 sec)

修复:检查和/或重置密码:您无法从 MySQL 以纯文本格式读取用户密码,因为密码哈希用于身份验证,但您可以将哈希字符串与“PASSWORD”函数进行比较。
我们可以看到 PASSWORD('forgotten')哈希与 authentication_string 列不匹配,这意味着 password string ='forgotten' 不是正确的登录密码。如果您需要覆盖密码,可以执行以下查询:
mysql> set password for 'nonexistant'@'%' = 'hello$!world';Empty set (0.00 sec)

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com