发布网友 发布时间: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)