Centos7.3安装MySQL5.7.27问题

1. 初始化提示权限,找不到临时密码

ERROR 1045 (28000): Access denied for user 'root'@'localhost'

1. yum安装初始化设置密码失败,提示权限问题。
2. 离线安装启动后 /var/log/mysqld.log 文件为空,无法获取密码。

 这里出现的问题,无法初始化,没有临时密码,而Centos7以后又不允许空密码登陆。

解决办法

停止服务
systemctl stop mysqld.service
        
设置登录环境,跳过权限(5.7比较新的版本user表中password列更改为authentication_string)
systemctl set-environment MYSQLD_OPTS="--user=mysql --skip-grant-tables --skip-networking"

启动服务
systemctl start mysqld.service

root用户登录,注意后面是mysql
mysql -u root mysql

设置密码
UPDATE mysql.user SET authentication_string=PASSWORD("123456") WHERE user='root' and host='localhost';
        
刷新退出
flush privileges;
quit;

恢复设置
systemctl unset-environment MYSQLD_OPTS;
        
重启服务
systemctl restart mysqld.service;


2. 密码设置策略问题

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

解决办法

1. 修改策略

查看策略
show variables like 'validate_password%';
show variables like "%password%";

设置密码强度低
set global validate_password_policy=0;

设置密码长度,默认最少4位
set global validate_password_length=4;

再修改密码
update mysql.user set authentication_string=password('123456') where user='root' and Host = 'localhost';
set password for 'root'@'localhost'=password('123456');
alter user 'root'@'localhost' identified by '123456';

2. 关闭密码策略

关闭服务
systemctl stop mysqld.service

vim /etc/my.cnf
    
#在[mysqld]下面
[mysqld]
validate_password=off

systemctl start mysqld.service

完成查看下状态
systemctl status mysqld

登录mysql看到最下面validate_password状态disabled
show plugins;

修改密码OK
alter user 'root'@'localhost' identified by '123456';

3. 如果需要设置密码不过期

alter user 'root'@'localhost' password expire never;
    
或者

systemctl stop mysqld

vim /etc/my.cnf
    
[mysqld]
default_password_lifetime=0

systemctl start mysqld

完成查看下状态
systemctl status mysqld

4. 如果出现修改my.cnf文件后服务无法启动

查看信息
systemctl status mysqld

一般会有具体信息,比如修改的设置无法识别问题等
vim /etc/my.cnf

查看是否位置出错,调整位置,或者注释再启动mysqld

3. 赋权后还是提示权限问题

grant all privileges on *.* to root@'%' identified by '123456' with grant option;

已经执行上面的sql赋权后,CM无法初始化数据库、Navicat无法访问等等

解决办法

1. 检查是否是在mysql库下赋权

2. 查看:MySQL拒绝访问问题
    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

訾零

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值