赞
踩
首先进入Mysql
mysql -uroot -p
先查看一下数据库当前的密码策略
use mysql;
-- 查看密码策略
show variables like 'validate_password%';
默认为:最小长度8,包含大小写字母、数字、和特殊字符。
validate_password.length 固定密码的总长度;
validate_password.dictionary_file 指定密码验证的文件路径;
validate_password.mixed.case_count 整个密码中至少要包含大/小写字母的总个数;
validate_password.number_count 整个密码中至少要包含阿拉伯数字的个数;
validate_password_special_char_count 整个密码中至少要包含特殊字符的个数;
validate_password.policy 指定密码的强度验证等级,默认为 MEDIUM;
关于 validate_password.policy 的取值:
0/LOW:只验证长度;
1/MEDIUM:验证长度、数字、大小写、特殊字符;
2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;
-- 密码验证策略低要求(0或LOW代表低级) set global validate_password.policy=0; -- 密码至少要包含的小写字母个数和大写字母个数 set global validate_password.mixed_case_count=0; -- 密码至少要包含的数字个数。 set global validate_password.number_count=0; -- 密码至少要包含的特殊字符数 set global validate_password.special_char_count=0; -- 密码长度 set global validate_password.length=6; -- 刷新一下 flush privileges; -- 修改root密码 alter user 'root'@'localhost' identified BY '你的密码';
这里可以再查看一下密码策略
-- 查看密码策略
show variables like 'validate_password%';
首先查看下用户访问端口
use mysql;
select user,host from user;
默认root只允许本地登录,所以我们要修改host值为’%',代表允许任何ip访问
update user set host = '%' where user = 'root';
修改完毕后再次查看
select user,host from user;
-- 到这里我们还需要刷新一下权限
flush privileges;
-- 修改加密规则,8.0后用的是caching_sha2_password
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
如果此时报错2003则需要修改mysql配置文件及防火墙规则
首先使用虚拟机进入到MySQL的配置文件
进入MySQL配置文件路径下
cd /etc/mysql/mysql.conf.d
vim mysqld.cnf
将这句话注释掉保存退出
重启服务
/etc/init.d/mysql restart
测试连接
如果连接成功但打开连接时提示1449找不到用户的话还需要创建一个用户,并赋予权限
进入Mysql
-- 提示哪个用户不存在就创建哪个
create user 'mysql.infoschema'@'%' identified by '密码';
-- 赋权限
grant all privileges on *.* to 'mysql.infoschema'@'%' with grant option;
连接成功!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。