忘记密码mysql 8.2重置root密码linux
重置密码
1.找到support-files下的服务
# 查找mysql位置
which mysql
#/usr/local/bin/mysql
# 查找原始位置
ls -al /usr/local/bin | grep mysql
# 进入原始的为值找到support-files文件夹
# 注意路径要全,我这里是macos系统就是Cellar下
cd /usr/local/Cellar/mysql/8.2.0_1/support-files
# 停止之前的服务,2选1
sudo mysql.server stop # MacOS命令
sudo service mysql stop # Linux命令
# 运行mysql服务 跳过密码验证,记得sudo
sudo ./mysql.server --skip-grant-tables
# 无密码登录
mysql -u root
# 删除密码,刷新,退出
mysql> UPDATE mysql.user SET authentication_string=null WHERE User='root';
mysql> flush privileges;
mysql> exit
# 重新登录
mysql -u root
3.修改密码
注意密码复杂度需要根据验证等级设置,后面附查看方法
默认中等:>=8位,大写字母+小写字母+特殊字符
mysql>ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'Chris999000...';
mysql>flush privileges;
mysql>exit;
验证是否修改成功
# macos 操作
sudo mysql.server stop
## 正常启动
sudo mysql.server start
----------------------------------------
## linux下操作
sudo service mysql stop
sudo service mysql start
mysql -u root -p
# 输入新的密码
查看密码等级信息
# 输入这个命令
mysql> SHOW VARIABLES LIKE 'validate_password%';
显示结果
+-------------------------------------------------+--------+
| Variable_name | Value |
+-------------------------------------------------+--------+
| validate_password.changed_characters_percentage | 0 |
| validate_password.check_user_name | ON |
| validate_password.dictionary_file | |
| validate_password.length | 8 |
| validate_password.mixed_case_count | 1 |
| validate_password.number_count | 1 |
| validate_password.policy | MEDIUM |
| validate_password.special_char_count | 1 |
+-------------------------------------------------+--------+
8 rows in set (0.02 sec)
Fix - MySQL ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
There are three levels of password validation policy enforced when Validate Password plugin is enabled:
LOW Length >= 8 characters.
MEDIUM Length >= 8, numeric, mixed case, and special characters.
STRONG Length >= 8, numeric, mixed case, special characters and dictionary file.
版权声明:
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自
Y丶Zon!
喜欢就支持一下吧