在 CentOS 7.6 系统中,MySQL默认对密码的长度和复杂性有一定的要求。如果你希望移除这些限制,你需要修改 MySQL 的密码验证插件和策略。
9 }7 n$ U6 I& J" ^* [ ! `* c% o' Z- X+ n* o
以下是如何为 MySQL 5.6 设置密码不限制长度的步骤:5 L3 G- M, R0 v' J
: j' y. x* r5 t) S' b
1.登录MySQL" V3 C' J3 e3 J$ k" `' x
/ I; a/ E! J) {8 A% {% F9 Q0 F
首先,你需要以 root 用户身份登录到 MySQL。
* I$ A. J; L ] ( @) N* x$ Z. {# F1 P* B
运行命令: K- a, N% T6 R, u( h
- M) r2 Q2 Z9 w* I2 n- _ # mysql -u root -p你现在的数据库密码! n" y. I/ B( C5 v
+ } C: r* g4 M! B# x- G+ o 2.查看当前的密码验证插件7 d: k+ I* y# W( [2 s! B. @
2 d4 z* a- u6 g% F- d 运行命令( @9 _4 f" }1 V7 }5 G6 q
. [# p5 A, Y5 {! |* k$ W # SHOW VARIABLES LIKE ‘validate_password%’;
% C: ^- ^- h9 K" h ! J. E, q% g8 D1 r- r# ~
如果 validate_password 相关的变量存在,那么说明已经启用了密码验证插件。
8 _5 q S" T( H7 _& s: n 1 F8 q& R' R7 f4 h8 G
3. 禁用密码验证插件$ z3 @6 [2 a) r- h' F
- D- a- p5 \) y$ T
为了完全移除密码长度和复杂性的限制,你可以禁用密码验证插件。但请注意,这样做会降低密码的安全性。) N$ [7 n& e: b: T+ _* e
; x' V* r, h8 f: \4 x0 S! P
运行命令
. p3 Y! `* R, S: @4 q8 W& l
! {1 G$ J! T) w5 n # UNINSTALL PLUGIN validate_password;
; i) g6 C0 j" k4 Y2 K% a
7 b6 E! x; Y% N2 H 4.设置新的密码
3 c/ h. A/ [% Z( _8 I" r ( p' S" @) k% q/ |5 d+ B- E
现在,你可以设置任何长度的密码,而不会有任何限制。( l+ U5 Y4 ^2 _
- K$ I o9 a% h- R
运行命令: J# z" d7 _ U( K- T$ c
: X3 u, k- k2 Y/ A
# SET PASSWORD FOR ‘root’@’localhost’ = PASSWORD(‘your_new_password’); |& O/ w& I5 R, U7 N
" K' e [/ \* ^: J$ G- s0 A. o 其中 your_new_password 是你想设置的新密码。 i8 V, n; q; Z Y! d% ?, n3 ?
C* d' v4 g i2 i
5.退出MySQL
8 i+ X, B6 Q% X4 R8 N. x ^
$ m( g9 e1 ?* _ 运行命令/ F; ]7 q2 i# A# m2 J
7 {' r. d( c, L9 g$ p
# exit;: J( _) y9 e3 m
. \3 ` l% k, x$ }: R' {8 V 6.(可选)重新启动MySQL服务/ z4 D, f! {* V: ` I4 J2 Z
`/ o0 X; V0 n
为了确保更改生效,你可能需要重新启动 MySQL 服务。
. T8 j, M4 u% a+ j6 \7 r4 X # J5 p7 S. J3 Z1 E1 O
运行命令
+ Q6 e+ G# z4 A " U$ [- t k8 Q/ W. B
# systemctl restart mysqld
Z, f" k, ?6 _% |+ N7 h
! d6 I" H" W/ B l7 ]1 p, ?, L C* h 这样,你就为 MySQL 5.6 在 CentOS 7.6 系统中设置了不限制长度的密码。但再次强调,移除密码验证和长度限制会降低系统的安全性,因此请确保你了解并接受这种风险。如果可能的话,考虑使用更安全的密码策略或至少为关键用户设置强密码。
6 c, ~9 H e- H1 V1 @7 Q/ K
9 p0 L. _: W6 z0 I