zoukankan      html  css  js  c++  java
  • Centos7 之 MariaDB(Mysql) root密码忘记的解决办法

    MariaDB(Mysql) root密码忘记的解决办法

    1.首先先关闭mariadb数据库的服务

    # 关闭mariadb服务命令(mysql的话命令就是将mariadb换成mysql)

    [root@node ~]# systemctl stop mariadb

    # 通过进行查询服务或者通过端口查询服务还是否存在

    [root@node ~]# ps aux|grep mariadb

    root       6852  0.0  0.0 112704   964 pts/2    S+   23:19   0:00 grep --color=auto mariadb

    [root@node ~]# netstat -lntup|grep 3306

    2.修改配置

    修改/etc/my.cnf文件,[mysqld]下添加 skip-grant-tables , 再启动mysql

    # 开启mariadb服务

    [root@node ~]# systemctl start mariadb

    # 查看服务已经开启

    [root@node ~]# ps aux|grep mariadb

    mysql      7104  1.1  5.6 972516 80672 ?        Sl   23:22   0:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mariadb/mariadb.log --pid-file=/var/run/mariadb/mariadb.pid --socket=/var/lib/mysql/mysql.sock

    root       7141  0.0  0.0 112704   964 pts/2    S+   23:22   0:00 grep --color=auto mariadb

    # 查看端口也正在使用

    [root@node ~]# netstat -lntup|grep 3306

    tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      7104/mysqld

    3.进入数据库并更新密码

    # 免密码可进入

    root@node ~]# mysql -u root

    Welcome to the MariaDB monitor.  Commands end with ; or g.

    Your MariaDB connection id is 2

    Server version: 5.5.60-MariaDB MariaDB Server

    Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

    # 更新密码

    MariaDB [(none)]> update mysql.user set Password=password('123') where User='root';

    Query OK, 1 row affected (0.01 sec)

    Rows matched: 4  Changed: 1  Warnings: 0

    MariaDB [(none)]> flush privileges;

    Query OK, 0 rows affected (0.00 sec)

    MariaDB [(none)]> quit;

    Bye

    4.还原需要密码的配置

    # 重新修改为原来配置并重启服务

    [root@node ~]# vi /etc/my.cnf

    [root@node ~]# systemctl restart mariadb

    # 可以看到没有密码现在无法进入

    [root@node ~]# mysql -u root

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

    # 使用新密码进入mariadb数据库

    [root@node ~]# mysql -u root -p

    Enter password:

    Welcome to the MariaDB monitor.  Commands end with ; or g.

    Your MariaDB connection id is 3

    Server version: 5.5.60-MariaDB MariaDB Server

    Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

    MariaDB [(none)]> 

    同理此问题也可以解决其他linux版本的mariadb(mysql)密码忘记问题

  • 相关阅读:
    Error: That port is already in use.
    笔记:django is not a registered namespace错误
    笔记:常用SQL语句
    django迁移数据库错误
    OperationalError: (1044, "Access denied for user ''@'localhost' to database 'mydb'")
    笔记:LNMP架构Web的高并发处理
    Debian ZSH解决每次ssh都需要source .bashrc问题
    Django第四天:博客项目实战
    js模板引擎之 Handlebars 基本用法
    创建发布自己的npm包
  • 原文地址:https://www.cnblogs.com/hszstudypy/p/11518696.html
Copyright © 2011-2022 走看看