酥hp 5.5隞乩 銝 mysql 5.2 嚗叮ysql隞 mysqli_connect() Y航炊mysqli_connect(): mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication. Please use an administration tool to reset your password with the command SET PASSWORD = PASSWORD('your_existing_password').
6 b) ]) W' S7 n& i3 m; f s1 n) [& D7 A
5 H+ c0 Y, [; c# Y臬歉hp 5.3隞亙撖蝣潭16雿蝺函Ⅳ,啁php 5.3隞亙41雿蝺函Ⅳ,mysql 5.2 隞亙閮凋16蝣,隞交甇斤車航炊.
0 k3 U+ g6 ^$ ?6 o4 R閮箸瑚銝mysql: (php 5.6.38 , mysql 5.1.73)
6 H1 k& E1 x0 |" T餃叮ysql 嗅頛詨 :
3 Z+ Z6 q$ i/ l* {mysql> SHOW VARIABLES LIKE 'old_passwords';
. v5 U! b' u9 k# S0 B" }+------------------+-------+) ~. X. Z5 Z. ^$ k6 [
| Variable_name | Value |
) U. D. K7 L$ k7 h- B+------------------+-------+
% s( o) e* y7 S8 U! S9 {. F7 A+ r: U| old_passwords | ON |
% D4 Z6 z' Y/ K3 X+ n+------------------+-------+* B. v2 a) g9 U8 `: ?) ^0 w
1 row in set (0.00 sec)
1 \0 a6 {: G! G9 }
* p! w) ^! T6 F; A0 b( \7 M8 eold_password ==> ON 撠梯”蝷 /etc/my.cnf 鋆 old_passwords=1 閮剖16蝣,撠摰閮剔 0 嗅mysqld ==> service mysqld restart
0 A: k' L9 I! k" Z8 C mysql prompt銝頛詨:
9 u( |! P9 t( Dmysql> SET old_passwords=FALSE; + C1 ? q8 y9 ]" t5 n% z7 b
瑼X叮ysql.user 瘥撖蝣潮瑕漲:
0 ^" f- q+ t4 y6 `6 ?mysql> SELECT 'User', 'Host', Length('Password') FROM mysql.user;
& M! O. ?, \/ `5 ] o憒瘝寞41雿,Length('Password')甈雿閰脤賣160(銵函內瘝閮剖蝣)
2 b% T5 k$ P; N5 d4 o3 g; M5 T# O" q2 s2 Z. `
閮剖靘撖蝣:3 c3 l$ }) @) w# w) ]" ]# `9 `
mysql> SET PASSWORD FOR 'root'@'192.168.1.1' = PASSWORD('靘撖蝣'); // 撠敹閬詨靘 撣唾@IP 湔,銝閬寥臭
) e% Y9 x* z$ O, nmysql> flush privileges;( {* D1 c4 @! O& A. K% q t
/ y' x. w# z$ B3 t) r5 i
頛詨 SELECT 'User', 'Host', Length('Password') FROM mysql.user; 瑼X亙蝣澆漲,撠勗舐潛曉寧root 撖蝣潮瑕漲撌脫寧41蝣0 S1 E( l9 z3 n8 J
瘜冽:
& \3 o2 |, d1 Y' N$ W! H& e, D憒撣唾憭芸,臭誑啣憿閮剖蝣,粹閮剖蝣 SET PASSWORD FOR 芷撠亙蝣,銝 old_passwords=0 撠撖蝣潮敶梢===========================================================================# E- E0 ]! z, ?, S% T2 H; J6 O
鄉ysql蝝 8.0.21,php逅ysql箇2銵errors:
. B- U( R, m d( Qmysqli_real_connect(): Server sent charset (255) unknown to the client. Please, report to the developers! I+ O- Y8 f+ U* ^- B
mysqli_real_connect(): (HY000/2054): Server sent charset unknown to the client. Please, report to the developers
L8 Q& P4 ?" e. }:0 M+ E. F! V8 O1 v
決ySQL 8.0.21銝哨caching_sha2_password舫隤頨思遢撽霅隞塚銝臭誑敺mysql_native_password隞亙php銝詨捆臭誑蝝php嚗銋臭誑靽格遍ySQL蝵柴 曆犖瘙箏靽格遍ySQL蝵:5 `1 K1 L/ ?2 k' ~! s+ K0 g
vi /etc/my.cnf 乩:$ p: w* N: U0 q l( d
[mysqld]0 o) H$ H% R6 u" ]1 I1 e
0 S$ }2 v# `# W) fcharacter-set-server=utf8
4 i. Y' R+ | m/ R3 H( k6 \default_authentication_plugin=mysql_native_password
/ t) n+ I# p- C# n3 D5 |8 o. `. h9 i
[mysql]/ z0 o* F7 A; h+ ]2 _* o
default-character-set=utf8
1 C+ B/ e4 v3 U1 v
- ^/ p0 s8 n! m+ P! l' Y" Y) g5 K[client]- _) ?$ A' v1 b6 k) k
default-character-set=utf8
% Z6 b/ r5 h, S7 |. j+ ?/ h
6 [! w Q! C+ S, _$ g3 g: I嗅mysqld* k7 n2 L/ |& N* W, l
service mysqld restart
/ E+ l! B! l6 `) ]- O6 q摰!!
' z* {- h; Q5 n% \5 k
' T7 _! K; w( f7 T+ ~
; c3 j- m9 [) U7 ^ |
|