欢迎,来自IP地址为:18.97.9.175 的朋友


MariaDB是RHEL 7 系列的默认数据库管理系统,MySQL 被 Oracle 公司收购后著名的替代软件。由于MariaDB使用起来方便灵活,其带来的负面效应就是安全审核机制较弱。于是其管理员 root 用户的密码就显得尤其重要。在实际使用过程中常常会面临两难的选择,密码设置过于复杂,就比较容易忘;而密码太过简单又显然不安全。

其实,遇到 MariaDB root用户密码被忘记的情况也不必着急,本文将详细讲解如何在CentOS 7 系统重置 MariaDB 数据库 root 用户密码。

首先,登录到 MariaDB 数据库服务器,关停 MariaDB 数据库服务,然后使用如下命令以数据库安全模式启动数据库:

# systemctl stop mariadb.service
# mysqld_safe --skip-grant-tables --skip-networking &

现在,重新打开登录窗口,重新登录到 MariaDB 数据库服务器,使用如下命令登录数据库:

#mysql -u root

此时,登录数据库是免认证的,直接就会进入数据库交互界面:

既然登录进了数据库,那么一切都好办了,使用如下语句,重置 root 用户密码:

MariaDB [(none)]>FLUSH PRIVILEGES;
MariaDB [(none)]>ALTER USER 'root'@'localhost' IDENTIFIED BY 'daehub';                 //MariaDB 10.x版
OR
MariaDB [(none)]>UPDATE mysql.user SET Password=PASSWORD('daehub') WHERE User='root';  //MariaDB 5.x版
MariaDB [(none)]>FLUSH PRIVILEGES;
MariaDB [(none)]>exit

注意不同版本的 MariaDB 重置密码的语句略有不同,报错的话就查一下对应版本的重置 root 用户密码语句。

最后,杀掉数据库安全模式进程,以正常模式启动 MariaDB 数据库,再以上面设置的密码(此处为deaehub)登录数据库即可:

# kill -9 $(cat /var/run/mariadb/mariadb.pid)
# systemctl start mariadb.service
# mysql -u root -pdaehub

至此,MariaDB 数据库 root 用户密码就重置成功了。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注