CentOS7下忘记MySQL数据库root密码与密码过期

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介: CentOS7下忘记MySQL数据库root密码与密码过期
  • 以root用户登录linux,修改/etc/my.cnf
vim /etc/my.cnf

在[mysqld]的段中加上一句:skip-grant-tables

[mysqld] 
datadir=/var/lib/mysql 
socket=/var/lib/mysql/mysql.sock 
skip-grant-tables 


20171019161256409.png


  • 退出保存,重新启动mysqld
service mysqld start
systemctl start mysqld


  • 登录并修改MySQL的root密码

命令如下:

//进入 mysq lbin路径
[root@iZ8vb3n2dl2w360w65xtf3Z bin]# pwd
/usr/local/mysql/bin
[root@iZ8vb3n2dl2w360w65xtf3Z bin]# ./mysql -uroot -p
Enter password:
//直接回车
use mysql;


修改密码

update user set password = password('new-password') where user = 'root' ; 
or
update user set authentication_string= password('new-password') where user = 'root' ; 


  • 刷新权限
flush privileges ;
  • 还原/etc/my.cnf
  • 重启mysql服务

其中在重新登录mysql时,你可能遇到如下问题:


问题一:

ERROR 2002 (HY000): Can’t connect to local MySQL server 
through socket ‘/var/lib/mysql/mysql.sock’ (2)

然后去找这个文件,发现/var/lib/mysql/路径下没有mysql.sock文件。而该文件存在于/tmp/mysql.sock !

解决方法:

① 修改my.cnf

[mysqld]
socket = /tmp/mysql.sock

② 软链

ln -s /tmp/mysql.sock  /var/lib/mysql/mysql.sock

问题二:

ERROR 1054 (42S22): Unknown column 'password' in 'field list'

使用如下方式修改密码:

update user set authentication_string= password('new-password') where user = 'root' ; 

问题三:

ERROR 1862 (HY000): Your password has expired. To log in you must change it using a client 
that supports expired passwords.

解决过程如下:

① 修改my.cnf,将skip-grant-tables放开,重启服务,登录mysql;


查看用户root信息:

select * from user where user = 'root'\G;


20171222175023452.png


② 使用如下命令修改password_expired

use mysql;
update user set password_expired='N' where user='root';
flush privileges;



20171222175111859.png

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1月前
|
SQL 关系型数据库 数据库
OceanBase数据库常见问题之upgrade_post想要不显示明文密码如何解决
OceanBase 是一款由阿里巴巴集团研发的企业级分布式关系型数据库,它具有高可用、高性能、可水平扩展等特点。以下是OceanBase 数据库使用过程中可能遇到的一些常见问题及其解答的汇总,以帮助用户更好地理解和使用这款数据库产品。
|
1月前
|
关系型数据库 MySQL 数据库
mysql中如何将默认用户名root改成其他?
mysql中如何将默认用户名root改成其他?
27 0
|
21天前
|
关系型数据库 MySQL 数据库
mysql数据库密码
mysql数据库密码
|
1月前
|
SQL 关系型数据库 数据库
OceanBase数据库常见问题之录入租户管理员密码时,提示密码检验失败如何解决
OceanBase 是一款由阿里巴巴集团研发的企业级分布式关系型数据库,它具有高可用、高性能、可水平扩展等特点。以下是OceanBase 数据库使用过程中可能遇到的一些常见问题及其解答的汇总,以帮助用户更好地理解和使用这款数据库产品。
|
1月前
|
SQL 关系型数据库 MySQL
阿里云MySQL数据库价格、购买、创建账号密码和连接数据库教程
阿里云数据库使用指南:购买MySQL、SQL Server等RDS实例,选择配置和地区,完成支付。创建数据库和账号,设置权限。通过DMS登录数据库,使用账号密码访问。同地域VPC内的ECS需将IP加入白名单以实现内网连接。参考链接提供详细步骤。
376 3
|
20天前
|
关系型数据库 MySQL Linux
linux CentOS 7.4下 mysql5.7.20 密码改简单的方法
linux CentOS 7.4下 mysql5.7.20 密码改简单的方法
22 0
|
14天前
|
关系型数据库 MySQL Linux
centos7安装mysql-带网盘安装包
centos7安装mysql-带网盘安装包
64 2
|
20天前
|
关系型数据库 MySQL Linux
CentOS 7 下使用yum安装MySQL5.7.20 最简单 图文详解
CentOS 7 下使用yum安装MySQL5.7.20 最简单 图文详解
88 0
|
6天前
|
SQL 存储 关系型数据库
MySQL Cluster集群安装及使用
MySQL Cluster集群安装及使用
|
22天前
|
关系型数据库 MySQL 数据库
mysql卸载、下载、安装(window版本)
mysql卸载、下载、安装(window版本)