MySQL 作为一款常用的关系型数据库管理系统,在企业应用中广泛使用。但是随着系统迭代、维护和开发人员变动等原因,管理员或其他人员可能忘记了 MySQL 的密码,这就会对数据库操作产生一定的影响。
为了避免出现此类情况,管理员应该遵循 MySQL 的用户管理规范,进行统一管理。如果遇到忘记密码的情况,管理员也不必过于紧张,可以通过以下方法找回。
$ sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables &
$ mysql -u root mysql
首先,管理员需要以 root 权限登录终端。然后,输入以上代码开启跳过用户认证步骤的 MySQL 服务。这时候管理员就可以以 root 身份直接登录 MySQL 服务。
mysql>update user set password=PASSWORD("newpassword") where User='root';
mysql>flush privileges;
mysql>quit;
进入 MySQL 后,使用以上代码对 root 用户进行密码重置操作。其中,newpassword 表示新设密码。最后,通过 flush privileges 命令将更新操作立即生效,并退出 MySQL 服务。
当然,如果管理员同时忘记了 root 用户名,也可通过重置 root 用户名的方法来找回密码。
$ sudo /usr/local/mysql/support-files/mysql.server stop
$ sudo /usr/local/mysql/support-files/mysql.server start --skip-grant-tables
$ mysql -u root mysql
mysql>update user set authentication_string=null where User='root';
mysql>flush privileges;
mysql>quit;
首先,管理员需要停止 MySQL 服务,并使用 --skip-grant-tables 参数重新启动服务。这时候管理员可以以匿名用户身份直接登录 MySQL 服务。
进入 MySQL 后,使用以上代码清空 root 用户名的身份认证字符串,从而使 root 用户名恢复到原始状态。
无论是忘记密码还是忘记账号,管理员都可以通过 MySQL 提供的命令方式,轻松地找回登录信息,让数据库管理更加规范化、安全化。