如何在CentOS 8上重置MariaDB 10.5.5-MariaDB中root用户的密码



我尝试了重置mariadb的根密码中的建议,但不起作用

错误1698(28000(:拒绝用户';的访问;root'@';localhost';只谈论Ubuntu,而不是centos 8

能够使用mysql -u root登录,但mysql表中没有用户root!!

因此,set password语句与0 affected rows.一起执行

即使在服务器重新启动后也无法工作。

从ssh登录到centos服务器。然后停止mysqld服务并使用--skip-grant-tables选项运行mysqld_safe,以处于不安全模式并重置密码。然后使用mysql命令登录到mysql服务器,不带任何-u或-p参数,因为您处于不安全模式。然后更新根密码刷新权限,然后从msyql控制台退出。然后使用mysqladmin来停止mysql服务器,它会要求提供最近保存的新密码。然后最后启动mysqld服务。

$ systemctl stop mysqld
$ mysqld_safe --skip-grant-tables &
$ mysql
mysql> UPDATE mysql.user SET Password=PASSWORD('new-password') WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> exit;
$ mysqladmin -u root -p shutdown
$ systemctl start mysqld

编辑:---------------------------------------------

$ sudo systemctl stop mariadb
$ sudo mysqld_safe --skip-grant-tables --skip-networking &
$ mysql -u root
MariaDB [(none)]> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
MariaDB [(none)]>  FLUSH PRIVILEGES;
MariaDB [(none)]> exit;
$ sudo kill `/var/run/mariadb/mariadb.pid`
$ sudo systemctl start mariadb

最新更新