本文不再更新,可能存在内容过时的情况,实时更新请访问原地址:CentOS忘记mariadb/mysql root密码解决办法

这里有两种方式实现修改mariadb root密码。

  • mariadb版本:Server version: 10.3.10-MariaDB MariaDB Server
  • 服务器:CentOS Linux release 7.5.1804 (Core)

方式1

1.查看mysql版本

mysql --version

如果是mysql输出结果大概为:

mysql  Ver 8.0.13 for Linux on x86_64 (MySQL Community Server - GPL)

如果是MariaDB大概为:

mysql  Ver 15.1 Distrib 5.5.52-MariaDB, for Linux (x86_64) using readline 5.1

2.停止数据库服务

mysql:

sudo systemctl stop mysql

MariaDB:

sudo systemctl stop mariadb

3.使用非权限检查模式启动数据库服务

启动:

sudo mysqld_safe --skip-grant-tables --skip-networking &

无验证模式登录:

mysql -u root

4.修改密码

现在还无法使用ALTER USER命令修改密码,因为grant tables还没有重载。 使用FLUSH PRIVILEGES重载grant tables

mysql > FLUSH PRIVILEGES;

然后修改密码。

  • MYSQL版本为MySQL 5.7.6或更新的版本,以及MariaDB版本为MariaDB 10.1.20或更新的版本,使用如下命令:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
  • MYSQL版本为MySQL 5.7.5 或更老的版本,以及MariaDB版本为MariaDB 10.1.20或更老的版本,使用如下命令:
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_password');

如果ALTER USER不起作用,可以使用UPDATE mysql.user SET authentication_string = PASSWORD('new_password') WHERE User = 'root' AND Host = 'localhost';,然后重载grant tables

5.修改密码

1)关掉进程

关掉进程,mysql对应命令:

$ sudo kill `cat /var/run/mysqld/mysqld.pid`

关掉进程,MariaDB对应命令:

$ sudo kill `/var/run/mariadb/mariadb.pid`

2)重启服务

MYSQL使用systemctl重启服务:

$ sudo systemctl start mysql

MariaDB使用systemctl重启服务:

$ sudo systemctl start mariadb

6.使用新密码登录

$ mysql -u root -p

参考:https://www.digitalocean.com/community/tutorials/how-to-reset-your-mysql-or-mariadb-root-password

方式2

参考:https://segmentfault.com/a/1190000006051752

最新文章

  1. maven 打包含有第三方依赖的 jar 包
  2. road习题(一)
  3. hadoop之根据Rowkey从HBase中查询数据
  4. window.open参数设置及如何全屏显示(转)
  5. 3、JavaScript
  6. iOS开发UI篇-实现tableView的层级显示
  7. 今天遇到的i++问题之记录
  8. visul svn+花生壳
  9. Java 并发 线程同步
  10. 利用nodeJs来安装less以及编译less文件为css文件
  11. Mac上使用虚拟机搭建Hadoop集群
  12. tomcat启动报错:Address already in use: JVM_Bind
  13. 对Javascript 类、原型链、继承的理解
  14. python中的元组
  15. linux命令之间的分号,&&, ||
  16. 20165336 实验二 Java面向对象程序设计
  17. mysqladmin -u root password
  18. MYSQL的基本函数 (数学函数)
  19. useful tools and website
  20. 2018.12.15 spoj Substrings(后缀自动机)

热门文章

  1. Java基础--数组的定义
  2. 续python学习(一)
  3. 22 Specifications动态查询
  4. linux 读取 USB HID鼠标坐标和点击 在 LCD上显示
  5. 第一个爬虫经历----豆瓣电影top250(经典案例)
  6. airtest的使用(作用类似于appium)
  7. 每天都在用 Map,这些核心技术你知道吗?
  8. 建议11:增强数组排序的sort功能
  9. 浅谈 HTTP中Get与Post的区别
  10. 文件合并cat and paste